چاه های متداول به دسته از چاه ها اطلاق می گردد که به صورت عمودی[۲۳] و یا با انحراف کم حفر می گردند. ساختار این نوع چاه ها در شکل ۱-۳ نمایش داده شده است.
شکل ۱-۳: چاه های متداول [۶]
عیب اساسی این چاه ها کم بودن سطح تماسشان با مخزن است. در پایان دهه ۸۰ تکنولوژی حفر چاه ها به صورت افقی حاصل شد. این چاه ها تماس بیشتری با مخزن داشته و در نتیجه برداشت بیشتری توسط این چاه ها حاصل می شود.
۱-۷-۲- چاه های افقی
چاه های افقی یا چاه های با انحراف بالا[۲۴] دسته ای دیگر از چاه های غیرمتداول هستند که امروزه به دلیل عملکرد بهتر بسیار مورد توجه قرار گرفته اند. از مزایای این نوع چاه ها در مقایسه با چاه های عمودی می توان به پوشش حجم وسیعی از مخزن توسط این نوع چاه ها و قابلیت تولید نفت بیشتر از نواحی با ضخامت کم اشاره کرد. در واقع یک چاه افقی می تواند به صورت تعدادی چاه عمودی که در کنار یکدیگر حفر شده اند، در نظر گرفته شود.
۱-۷-۳- چاه های هوشمند
چاه های هوشمند، چاه هایی با ساختار غیرمتداول هستند که مجهز به سنسورها و وسایل اندازه کیری و شیرهای کنترل جریان که روی لوله های درون چاه تعبیه شده، می باشند. با بهره گرفتن از سنسورها و وسایل اندازه گیری، شیرهای کنترل جریان سیال، اطلاعات دینامیکی مخزن از جمله فشار، دما و میزان جریان سیال هر فاز به طور پیوسته قابل اندازه گیری است. بنابراین چاه های متداول و غیرمتداول با تجهیز به سنسورها و وسایل اندازه گیری می توانند جزء دسته ی چاه های هوشمند قرار گیرند.
(( اینجا فقط تکه ای از متن درج شده است. برای خرید متن کامل فایل پایان نامه با فرمت ورد می توانید به سایت feko.ir مراجعه نمایید و کلمه کلیدی مورد نظرتان را جستجو نمایید. ))
۱-۸- مروری بر رئوس مطالب پایان نامه
در فصل دوم الگوریتم های بهینه سازی پرکاربرد در مسئله مکان یابی بهینه چاه ها معرفی می گردد. سپس تاریخچه ای از کارهای پیشین بیان خواهد شد.
با توجه به اینکه در مسئله مکان یابی بهینه چاه های نفت، معادلات حاکم بر مخزن نقش قیدهای مسئله بهینه سازی را ایفا می کنند، در فصل سوم به طور تفصیلی معادلات حاکم بر مخزن به روش های مختلف نظیر Finite Differnce (FD) و (SL) Streamline توصیف و با یکدگیر مقایسه خواهد شد. همچنین نحوه گسسته سازی و حل این معادلات به کمک شبیه سازها و نحوه برقراری ارتباط میان شبیه ساز مخزن و نرم افزار متلب در این فصل ارائه خواهد شد.
در فصل چهارم ابتدا چند مخزن نمونه بر مبنای مدل FD و SL شبیه سازی خواهد شد. سپس الگوریتم های شناخته شده بهینه سازی نظیر الگوریتم ژنتیک و PSO که از دسته روش های تصادفی می باشند به مسئله مکان یابی چاه ها با مخزن مدل شده بر پایه ی FD و SL اعمال می شود و نتایج با یکدگر مقایسه می شود. در ادامه این کار با الگوریتم های معین و مبتنی بر گرادیان همانند روش تندترین سقوط تکرار می گردد.
فصل پنجم این پژوهش به معرفی الگوریتم های بهینه سازی ترکیبی اختصاص داده شده است. در این فصل ادغام درونیاب خطی با الگوریتم ژنتیک و تندترین سقوط برای کاهش تعداد ارزیابی های تابع هدف و کاهش بار محاسبای مسئله، پیشنهاد داده می شود.
در فصل ششم اطلاعات ارزشمندی نظیر بازدهی چاه های تزریق و ضرایب اختصاص میان تزریق کننده ها و تولید کننده ها که تنها از مخزن مدل شده بر پایه SL بدست می آید، معرفی می گردد. سپس با این اطلاعات سودمند روشی پیشنهاد می شود تا الگوریتم بهینه سازی کارآمد تر باشد و این کارایی منجر به کاهش تعداد ارزیابی های تابع هدف و همگرایی سریع تر الگوریتم می شود.
در فصل هفتم به کمک اصول کنترل فازی و همچنین اطلاعات سودمند مخزن مدل شده بر پایه SL روشی برای مینیمم سازی میزان تولید آب در بازه زمانی تولید نفت پیشنهاد می شود. این روش پیشنهادی بر خلاف روش های بهینه سازی تصادفی نیازی به محاسبه زیاد تابع هدف ندارد. همچنین برتری این روش نسبت به روش های مبتنی بر گرادیان سادگی پیاده سازی آن و عدم نیاز به گرادیان تابع هدف نسبت به متغییرهای تصمیم گیری می باشد.
فصل آخر، فصل هشتم، به نتیجه گیری و بیان پیشنهادات اختصاص داده شده است.
فصل دوم
تعریف مسئله و مروری بر تاریخچه مکان یابی بهینه چاه ها
۲-۱- تعریف مسئله مکان یابی چاه های نفت
آز آنجا که تقاضا برای نفت روز به روز افزایش می یابد و همچنین فرایند تولید نفت بسیار چالش برانگیز و هزینه بر شده است، توسعه بهینه مخازن نفت امر بسیار ضروری تلقی می شود. توسعه بهینه مخازن نفتی شامل تعیین بهینه تعداد، نوع، موقعیت، میزان نرخ چاه ها و نحوه حفر آن ها به منظور ماکزیمم کردن بک تابع هدف می باشد. نمونه ای از توابع هدف مورد استفاده میزان تولید تجمعی نفت یا سود حاصل از برداشت آن می باشد. عملیات بهینه سازی بسیار چالش برانگیز است زیرا تعداد چاه های مورد نیاز و نوع آن ها (افقی، عمودی، چند لایه؛ تولید کننده یا تزریق کننده) می تواند متفاوت باشد. حضور عدم قطعیت های زمین شناسی که منجر به ایجاد عدم قطعیت در مدل مخزن و در نظر گرفتن چندین تحقق مختلف برای مخزن می شود، نیز یکی از عوامل مهم تشدید کننده پیچیدگی مسئله بهینه سازی می باشد. همچنین مسئله مکان یابی بهینه چاه ها یک مسئله غیر خطی و عموماً شامل ماکزیمم یا مینیمم های محلی زیادی می باشد. زمان محاسباتی در این نوع مسائل بهینه سازی بسیار قابل توجه می باشد، از آنجا که مقدار تابع هدف برای سناریوهای مختلف توسعه مخازن نفتی باید محاسبه شود. هر بار ارزیابی تابع هدف نیازمند یک بار اجرای مدل مخزن می باشد، و برای مخزن های بزرگ با مدل پیچیده زمان اجرای شبیه سازی مدل می تواند بسیار بزرگ باشد. در صنعت کلیدی ترین تصمیمات مهندسان مخزن این است که در کدام مکان مخزن، چاه حفر شود تا سود حاصل از برداشت و یا توابع هدف دیگر ماکزیمم شود. در واقع در عمل با شبیه سازی های مختلف مخزن عملکرد هر کدام از سناریو های توسعه مخزن بررسی می شود. اما با افزایش تعداد چاه ها جهت مکان یابی ، تعداد پاسخ های ممکن بسیار زیاد می شود. در نتیجه به یک الگوریتم بهینه سازی محاسباتی نیاز است. روش های بهینه سازی مختلفی برای تعیین موقعیت مناسب یک چاه در مخزن ارائه شده است. در ادامه مروری بر کارهای صورت گرفته در این راستا خواهیم داشت. اما پیش از آن لازم است مروری بر روش های بهینه سازی متداول و پرکاربرد در حل مسئله مکان یابی چاه ها داشته باشیم.
۲-۲- مروری بر روش های بهینه سازی
۲-۲-۱- الگوریتم ژنتیک
الگوریتم ژنتیک روش یادگیری بر پایه تکامل بیولوژیک است. این الگوریتم در سال ۱۹۷۰ توسط John Holland معرفی گردید. این روش به نام الگوریتم تکاملی[۲۵] نیز خوانده می شود. الگوریتم ژنتیک، روش بهینه سازی الهام گرفته از طبیعت جاندار است که می توان در طبقه بندی ها، از آن به عنوان یک روش عددی، جستجوی مستقیم و تصادفی یاد کرد. این الگوریتم، الگوریتمی مبتنی بر تکرار است و اصول اولیه آن از علم ژنتیک اقتباس گردیده است و با تقلید از تعدادی از فرایند های مشاهده شده در تکامل طبیعی، اختراع شده است و به طور موثری از معرفت قدیمی موجود در یک جمعیت استفاده می کند تاحل های جدید و بهبود یافته را ایجاد کند. اساس این الگوریتم را می توان قانون تکامل داروین “بقا بهترین” دانست که می گوید موجودات ضعیف تر از بین می روند و موجودات قوی تر باقی می مانند. یکی از مهمترین ویژگی های الگوریتم ژنتیک کاربرد آن در مسائلی با فضای جستجوی بزرگ و درجه پیچیدگی بالا می باشد. این الگوریتم در مسائل متنوعی نظیر بهینه سازی، شناسایی و کنترل سیستم، آموزش شبکه های عصبی مصنوعی و سیستم های مبتنی بر تصمیم و قاعده به کار می رود.
یکی از ویژگی های این الگوریتم که آن را از سایر روش ها متمایز می سازد این است که الگوریتم ژنتیک در هر تکرار چند نقطه از فضای جستجو را در نظر می گیرد، بنابراین شانس اینکه به یک ماکزیمم محلی همگرا شود کاهش می یابد. به عبارت دیگر این روش، با ترکیب کردن تصادفی بهترین پایه های هر نسل، توانایی تشخیص روند حرکت به سمت پاسخ های بهینه را دارد. بر خلاف آن، در بیشتر روش های جستجوی مرسوم نظیر روش گرادیان، قاعده تصمیم حاکم به این صورت عمل می کند که از یک نقطه به نقطه دیگر حرکت می کند. این روش ها در فضای جستجو دارای چند بیشینه، ممکن است به یک ماکزیمم محلی همگرا شوند. در مجموع امکان به تله افتادن الگوریتم ژنتیک در مینیمم محلی کمتر از سایر روش هاست. اما این روش از لحاظ محاسباتی پر هزینه می باشد و تضمینی برای رسیدن به جواب بهینه وجود ندارد.
الگوریتم ژنتیک کار خود را با ایجاد یک جمعیت اولیه از پاسخ های ممکن شروع می کند. جواب های پیشنهادی به صورت پارامتری بیان و متغییر های توصیف کننده هر یک از ان ها در کنار یکدیگر قرار داده می شوند و “کروموزومی” را تشکیل می دهند که نشان دهنده آن پاسخ در فرایند های ارزیابی الگوریتم ژنتیک می باشد. مرحله بعد ارزیابی میزان تابع برازندگی[۲۶] برای هر یک از متغییرها و تخصیص احتمالات انتخاب به گونه ای می باشد که شانس انتخاب کروموزوم های با توابع برازندگی بهتر در مقایسه با کروموزوم هایی که تابع برازندگی نامناسب تری دارند بیشتر باشد. کروموزوم های با توابع برازندگی بهتر به عنوان والد[۲۷] انتخاب می شوند و برای ترکیب مجدد با یکدیگر جفت می شوند. اپراتوری که وظیفه ترکیب کروموزوم های والد را بر عهده دارد، اطلاعات والدها را با یکدیگر ترکیب می کند و باعث به وجود آوردن کروموزم های فرزند[۲۸] می شود که نسل بعد را شکل می دهند. بدین ترتیب یک مجموعه جدید از بردارهای جواب از روی بهترین جواب های مرحله قبل ساخته می شود. بنابراین به طور کلی هر نسل نسبت به نسل قبل از خصوصیات بهتری خواهد داشت. تکامل کروموزوم ها در طی نسل ها باعث حرکت به سمت پاسخ های بهینه می شود.
هرچند کروموزوم هایی که تابع برازندگی بهتری دارند برای انتقال به نسل بعد از شانس بهتری برخوردارند، شانس انتخاب شدن به عنوان والد برای سایر کروموزوم ها هم وجود دارد. از طرف دیگر فرزندانی که در هر نسل ایجاد می شوند لزوماً دارای خصوصیات بهتر نسبت به والدین خود نخواهند داشت. این موضوع باعث شکل گیری مکانیزمی می شود که قابلیت حفظ تنوع در میان جمعیت نسل را داشته باشد و به الگوریتم ژنتیک این امکان را می دهد که بهتر بتواند از دام پاسخ های بهینه محلی رهایی یابد.
در الگوریتم ژنتیک معمولا کروموزوم ها (یا همان اعضای یک جمعیت) به صورت رشته ای از بیت ها نمایش داده می شود تا اعمال اپراتور های ژنتیکی بر روی آن ساده تر باشد.
فضای فنوتیپ[۲۹]: به مقادیر واقعی متغیر ها گفته می شود.
فضای ژنوتیپ[۳۰]: به مقادیر انکد شده یا کروموزوم ها گفته می شود که توسط الگوریتم ژنتیک مورد استفاده قرار می گیرد.
باید راهی برای تبدیل این دو نحوه نمایش به یکدیگر بدست اورده شود. در شکل ۲-۱ این دو فضای متغیرها نمایش داده شده است.
شکل ۲-۱: نمایش متغیرها در دو فضای ژنوتیپ و فنوتیپ
۲-۲-۱-۱- عملگرهای الگوریتم ژنتیک
الگوریتم ژنتیک استاندارد که الگوریتم ژنتیک دودویی[۳۱] هم نامیده می شود، برای ایجاد یک نسل جدید، از اپراتور های زیر استفاده می کند.
رمز گذاری[۳۲]
این مرحله شاید مشکل ترین مرحله حل مساله به روش الگوریتم ژنتیک باشد. الگوریتم ژنتیک به جای این که بر روی پارامترها یا متغیرهای مساله کار کند، با شکل کد شده آن ها سروکار دارد. یکی از روش های کد کردن، کد کردن دودویی می باشد که در آن هدف تبدیل جواب مساله به رشته ای از اعداد باینری است.
ارزیابی[۳۳]
تابع برازندگی هر رشته را با یک مقدار عددی ارزیابی می کند که کیفیت آن را مشخص می نماید. هر چه کیفیت رشته جواب بالاتر باشد، مقدار برازندگی جواب بیشتر است و احتمال مشارکت برای تولید نسل بعدی نیز افزایش خواهد یافت.
عملگر تولید مجدد یا انتخاب[۳۴]
در مرحله انتخاب، یک جفت از کروموزوم ها برگزیده می شوند تا با هم ترکیب شوند. عملگر انتخاب رابط بین دو نسل است و بعضی از اعضای نسل کنونی را به نسل آینده منتقل می کند. بعد از انتخاب، عملگر های ژنتیکی روی دو عضو برگزیده اعمال می شوند. معیار در انتخاب اعضا ارزش تطابق آن ها می باشد اما روند انتخاب حالتی تصادفی دارد.
شاید انتخاب مستقیم و ترتیبی به این شکل که بهترین اعضا دو به دو انتخاب شوند در نگاه اول روش مناسبی به نظر برسد اما باید به نکته ای توجه داشت. در الگوریتم ژنتیک ما با ژن ها روبه رو هستیم. یک عنصر با تطابق پایین اگرچه در نسل خودش عضو مناسبی نمی باشد اما ممکن است شامل ژن هایی خوب باشد و اگر شانس انتخاب شدنش صفر باشد، این ژن های خوب نمی توانند به نسل های بعد منتقل شوند. پس روش انتخاب باید به گونه ای باشد که به این عضو نیز شانس انتخاب شدن بدهد. راه حل مناسب، طراحی روش انتخاب به گونه ای است که احتمال انتخاب شدن اعضای با تطابق بالاتر بیشتر باشد. روش های متدوال انتخاب عبارتند از: انتخاب چرخ رولت، انتخاب بولتزمن، نخبه سالاری و انتخاب رقابتی.
انتخاب چرخ رولت
انتخاب چرخ رولت که اولین بار توسط هالند پیشنهاد شد یکی از مناسب ترین انتخاب های تصادفی بوده که ایده آن احتمال انتخاب می باشد.احتمال انتخا متناظر با هر کروموزوم بر اساس برازندگی آن محاسبه شده است که اگر مقدار برازندگی کروموزوم ام باشد، احتمال بقای متناظر با آن کروموزوم عبارت است از:
حال کروموزوم ها را بر اساس مرتب کرده و که همان مقادیر تجمعی می باشد به صورت زیر به دست می آید.
چرخ رولت به این صورت عمل می کند که برای انتخاب هر کروموزوم یک عدد تصادفی بین صفر و یک تولید کرده و عدد مذکور در هر بازه ای که قرار گرفت، کروموزوم متناظر با آن انتخاب می شود.
انتخاب نخبه سالاری
ایده نخبه سالاری، ویژگی تازه ای به پروسه انتخاب اضافه می کند. در نخبه سالاری، بهترین عضو هر جمعیت زنده می ماند و در جمعیت بعد حضور دارد. به عبارت دیگر، عضوی که بالاترین تطابق را دارد به طور خودکار به جمعیت جدید منتقل می شود. این روش در سال ۱۹۷۵ توسط کند دی جونز معرفی شد. اعمال نخبه سالاری در الگوریتم ژنتیک معمولا باعث بهبود کارایی آن می شود.
انخاب رقابتی
این روش تعدادی از اعضای جمعیت را به تصادف انتخاب می کند و سپس اگر شرطی خاص برقرار باشد، بهترین یا تعدادی از بهترین های آن ها را به عنوان والد بر می گزیند. اگر شرط برقرار نشود، بدترین عضو یا تعدادی از بدترین ها در تشکیل جمعیت آینده به عنوان والد در نظر گرفته می شوند.
شکل استاندارد این روش، رقابت دوتایی یا باینری است که به شکل زیر می باشد:
۲ عضو به تصادف انتخاب می شود.