تبدیل پایان نامه به کتاب

عنوان:

ارزیابی واسنجی مدل بارش رواناب

نویسنده:

مهدیه پورنامداری

فهرست مطالب
مقدمه ……………………………………………………………………………………… 3
فصل اول: آشنایی با روش ها ………………………………………………………………. 00
نرم افزار HEC- HMS ……………………………………………………………………. 09
الگوریتم ژنتيک ………………………………………………………………………….. 01
روش های نمایشی …………………………………………………………………….. 07
روش های انتخاب ……………………………………………………………………… 01
روش های تغيير ……………………………………………………………………….. 01
نقاط قوت الگوریتم های ژنتيک ……………………………………………………….. 00
محدودیت های الگوریتم ژنتيک ………………………………………………………. 00
كاربردها ………………………………………………………………………………. 09
معرفی روش بهينه سازی PSO …………………………………………………………… 01
مفاهيم و منطق حاكم بر روش بهينه سازی PSO ………………………………………… 90
فصل دوم مطالعه یک حوضه آبریز – ……………………………………………………… 91
حوضه آبریز كسيليان …………………………………………………………………….. 93
ساختار مدل HEC- HMS ……………………………………………………………….. 93
مدل شماره منحنی و مدل SCS …………………………………………………………. 11
نحوه عملکرد الگوریتم ژنتيک ……………………………………………………………. 11
شرایط توقف ………………………………………………………………………….. 13
الگوریتم بهينه سازی گروه ذرات ) PSO) …………………………………………………. 13
پارامترهای PSO ……………………………………………………………………… 19
معيار های خطا ……………………………………………………………………………. 17
1 / ارزیابی واسنجی مدل بارش- رواناب
نمایه های برازش ………………………………………………………………………. 17
درصد خطای پيک Percent Error in Peak(PEP)…………………………………… 13
خطای مجذور ميانگين مربعات كه با پيک وزن داده شده اند …………………………. 13
مجذور ميانگين مربعات خطا RMSE ( Root Of Mean Square Error ) …………….. 11
فصل سوم: مدلسازی در HEC- HMS ……………………………………………………. 10
مدلسازی به روش الگوریتم ژنتيک و PSO ……………………………………………….. 13
مقایسه توابع هدف با یکدیگر …………………………………………………………….. 73
حاصل كلام ………………………………………………………………………………. 30
منابع ……………………………………………………………………………………… 39
مقدمه
مشکل اصلی در استفاده از مدل های هيدرولوژیکی بارش رواناب واسنجی آن ها –
می باشد. مهم ترین هدف پيدا كردن مقدار بهينه پارامترها است به گونه ای كه با
استفاده از آن بهترین منحنی برازش را برای هيدرواگراف واحد محاسباتی پيدا كرد
.]3[
محدودیت منابع آب مدل سازی هيدرولوژیکی و رشد جمعيت این رشته را برآن
داشته تا با بکار گيری از تکنولوژی های نوین بهترین بهره برداری و استفاده مطلوب
از منابع آب را داشته كه این خود مستلزم شناخت بهتر مدل هيدرولوژیکی می باشد.
بارش و به دنبال آن تشکيل رواناب سطحی از مراحل مهم چرخه هيدرولوژیکی
.] می باشد ] 3
واسنجی دستی از اوایل دهه شصت ميلادی به كار گرفته شده ولی به خاطر وقت
گير بودن و پيچيدگی مدل ها از اواخر این دهه بحث واسنجی خودكار و تخمين
پارامترهای مؤثر مورد توجه قرار گرفت. واسنجی خودكار به یک یا چند پارامتر
همراه تابع هدف مناسب، انتخاب الگوریتم جستجو مناسب و معياری برای خاتمه
.] الگوریتم نيازمند است ] 7
مدل مفهومی HEC- HMS از رایجترین مدل های هيدرولوژیکی در مدلسازی
بارش رواناب است كه دارای تعداد قابل توجهی پارامترهای حساس مرتبط با –
7 / ارزیابی واسنجی مدل بارش- رواناب
فرآیندهای نفوذ، روندیابی و تبدیل بارش به رواناب می باشد عملکرد مناسب مدل به
نحوه كاليبراسيون پارامترهای آن به منظور تطابق هر چه بيشتر نتایج پيش بينی
مدل با داده های مشاهداتی بستگی دارد.
تخمين هيدروگراف واحد یکی از مهم ترین ابزارهای هيدرولوژی مهندسی
می باشد كه از داده های بارش رواناب قابل استخراج است. همزمان و بعد از توسعه
هيدروگراف واحد روش های پيشگویی بارش رواناب زیادی توسعه داده شدند و شبيه
سازی خروجی حوضه پيشامد همه تحقيقات صورت گرفته بوده است.
همان طور كه بيان شد به دليل وجود پارامترهای زیاد و مؤثر در فرآیند تبدیل
بارش به رواناب به همراه پيچيدگی های زیاد و روابط غير خطی بين این پارامترها با
یکدیگر و همچنين با ورودی ها و خروجی های سيستم آبخيز، پيش بينی دقيق مقدار
رواناب حاصل از هر بارندگی را بسيار مشکل ساخته است. بنابراین خاصيت غير
خطی، عدم قطعيت ذاتی فرآیند بارش رواناب كه نياز به اطلاعات وسيع و پيچيده –
مدل های فيزیکی را دارداز جمله دلایلی است كه باعث شده محققان به سمت
روش های جدید از جمله الگوریتم ژنتيک و الگوریتم ازدحام ذرات ) PSO ( روی
آورند.
با توجه به پيچيدگی های خاص موجود برای محاسبه رواناب در حوزه های آبریز و
به خصوص حوضه هایی كه دارای ایستگاه های هيدرومتری و هواشناسی كمی یا فاقد
ایستگاه می باشند. استفاده از روش های فرا ابتکاری هوشمند، ضروری به نظر می رسد.
اگر چه هر چه آمار دقيق تری در دسترس باشد مدل دارای خطای كمتر و نزدیک به
.] واقعيت می باشد ] 9
پدیده سيل ناشی از رواناب در گوشه و كنار كشور باعث بروز خسارات جانی و
مالی می شود. گر چه در برخی از رودخانه ها سدهای مخزنی و تأسيسات مقابله با
سيل احداث گردیده ليکن بدليل وسعت كشور و تنوع آب و هوایی جوابگوی نيازهای
مقدمه / 3
كنترل سيلاب نيست ] 9[. بنابراین هدف اصلی ازاین كار تحقيقاتی مدل سازی
رواناب با استفاده از نرم افزار HEC- HMS و مقایسه عملکرد آن با روش های فرا
ابتکاری ازدحام ذرات PSO) ( والگوریتم ژنتيک می باشند كه پس از مدل سازی و
محاسبه رواناب حوزه مورد نظر توسط مدل های HEC- HMS و نيز روش های ذكر
شده ) PSO ، GA ( نتایج حاصل از هر كدام با یکدیگر مقایسه شده و بهترین روش
برای برآورد حوزه مذكور انتخاب می گردد.
برنامه ریزی برای مهارت و مدیریت سيلاب ها و حفاظت از كيفيت و نيز بهره
برداری مناسب از آنها مستلزم درک صحيح و دقيق از مدلسازی بارش رواناب –
می باشد. مهم ترین چالشی كه مدل كننده ها با آن رو به رو می باشند. انتخاب مدل
بارش روانابی است كه بتواند گستره وسيعی از سيلاب ها بطور صحيح شبيه سازی –
كند. از آنجایئکه بکارگيری نوع روش تلفات و زمان شروع خاتمه سيل تأثير
می گذارد. لذا ارزیابی روش های تلفات از اهميت خاصی در مدلهای هيدرولوژیکی
برخوردار می باشد.

فصل اول: آشنایی با روش ها

نرم افزار HEC- HMS
روش مدل كامپيوتری HEC- HMS0 نسخه جدید مدل HEC- 1 برای شبيه سازی
بارش رواناب از اولين سری نرم افزارهای تهيه شده توسط مركز هيدرولوژی و –
مهندسی آمریکا در سال 0371 بوده است. این مدل، حوضه آبخيز را به عنوان یک
سيستم بهم پيوسته با مؤلفه های هيدرولوژیکی و هيدروليکی نمایش می دهد. هر
مؤلفه مدل یک جنبه از فرآیند بارش رواناب را در داخل بخشی از حوضه كه معمولاً
به عنوان زیر حوضه در نظر گرفته می شود، شبيه سازی می كند. به عبارت دیگر
مؤلفه های مختلفی برای شبيه سازی سيستم فيزیکی حوضه تركيب می شوند و هر
مؤلفه قسمتی از محاسبات لازم برای یک هيدروگراف كامل انجام می دهد
1 -Hyclrologicl Engineering center-Hydrological Modeling System
01 / ارزیابی واسنجی مدل بارش- رواناب
الگوریتم ژنتيک
الگوریتم ژنتيک از اوائل سال 0331 با تلاش های بسيار جان هلند 0 و شاگردانش پا
به عرصه وجود گذاشت. الگوریتم های ژنتيک از اصول انتخاب طبيعی داروین برای
یافتن فرمول بهينه جهت پيش بينی یا تطبيق الگو استفاده می كنند. الگوریتم های
ژنتيک اغلب گزینه خوبی برای تکنيک های پيش بينی برمبنای رگرسيون هستند.
این الگوریتم ها از بخش های زیر تشکيل می شوند.
تابع بر ارزش، نمایش، انتخاب و تغيير كه در ادامه به تشریح هر كدام پرداخته
می شود.
الگوریتم ژنتيک ) GA (، یک تکنيک برنامه نویسی است كه ازتکامل ژنتيک به
عنوان یک الگوی حل مسئله استفاده می كند. مسئله ای كه باید حل شود ورودی
است و راه حل ها طبق یک الگو كد گذاری می شوند. الگوریتم های ژنتيک یکی از
انواع الگوریتم های تکاملی است كه از علم زیست شناسی مثل وراثت، جهش، انتخاب
ناگهانی، انتخاب طبيعی وتركيب الهام گرفته شده است. عموماً راه حل ها به صورت 0
تایی صفر و یک نشان داده می شوند ولی روش های نمایش دیگری هم وجود دارد.
تکامل از یک مجموعه كاملاً تصادفی از موجودیت ها شروع می شود و در نسل های
بعدی تکرار می شود. در هرنسل، مناسب ترین ها انتخاب می شوند نه بهترین ها. برای
ایجاد نسل اول، از پارامترهایی شروع می شود كه به آنها كروموزوم یا ژنوم می گویند.
كروموزوم ها عموماً به صورت یک رشته ساده از داده ها نمایش داده می شوند.
البته انواع ساختمان داده های دیگر هم می توانند مورد استفاده قرار گيرند. در ابتدا
چندین مشخصه به صورت تصادفی برای ایجاد نسل اول توليد می شوند. در طول هر
نسل، هر مشخصه ارزیابی می شود و ارزش تناسب توسط تابع تناسب اندازه گيری
می شود.
1 -John Henry Holland
فصل اول: آشنایی با روش ها / 01
گام بعدی ایجاد دومين نسل از جامعه است كه بر پایه فرآیندهای انتخاب
می باشد. از مشخصه های انتخاب شده همراه با عملگرهای ژنتيکی استفاده می شود:
اتصال كروموزم ها به سر یکدیگر و تغيير برای هر فرد، یک جفت والد انتخاب
می شود. انتخاب ها به گونه ای می باشد كه مناسبترین عناصر انتخاب می شوند تا حتی
ضعيف ترین عناصر هم شانس انتخاب داشته باشند و از نزدیک شدن به جواب محلی
جلوگيری شود.
از تركيب دوكروموزوم، فرزند ایجاد شده و به نسل بعدی اضافه می شود این
مراحل طی می شود تا كاندیدهای مناسبی برای جواب، در نسل بعدی پيدا شوند.
مرحله بعدی تغيير دادن فرزندان جدید است. كروموزم های فرزند به طور تصادفی
تغيير می كنند یا جهش می یابند. این فرآیند باعث به وجود آمدن نسل جدیدی از
كروموزم هایی می شود كه با نسل قبلی متفاوت است. كل فرآیند برای نسل بعدی هم
تکرار می شود. دوباره جفت ها برای تركيب انتخاب می شوند، جمعيت نسل سوم به
وجود می آیند وبه این ترتيب فرآیند تا رسيدن به مرحله نهایی تکرار می شود.
بعضی از شرایط خاتمه الگوریتم های ژنتيک عبارتند از:
0 به تعداد ثابتی از نسل ها برسيم –
0 بودجه اختصاص داده شده تمام شود )زمان محاسبه، پول( –
9 یک فرد )فرزند توليد شده( پيدا شود كه مينيمم )كمترین( ملاک را برآورده –
كند.
1 بيشترین درجه برازش فرزندان حاصل شود یا دیگر نتایج بهتری حاصل نشود. –
1 بازرسی دستی. –
در دهه هفتاد ميلادی دانشمندی از دانشگاه ميشيگان به نام جان هلند ایده
استفاده از الگوریتم ژنتيک را در بهينه سازی های مهندسی مطرح كرد. اساس این
الگوریتم انتقال خصوصيات موروثی توسط ژن هاست. فرض كنيد مجموعه
01 / ارزیابی واسنجی مدل بارش- رواناب
خصوصيات انسان توسط كروموزم های او به نسل بعدی منتقل می شوند. هر ژن در
این كروموزم ها به صورت كامل به نسل بعد انتقال یابد، كليه خصوصيات نسل بعدی
شبيه به خصوصيات نسل قبل خواهد بود. بدیهی است كه درعمل چنين اتفاقی رخ
نمی دهد. در واقع بصورت هم زمان دو اتفاق برای كروموزوم ها می افتد. اتفاق اول
جهش است. جهش به این صورت است كه بعضی ژن ها بصورت كاملاً تصادفی تغيير
می كنند. البته تعداد این گونه ژن ها بسيار كم می باشد اما در هر حال این تغيير
تصادفی بسيار مهم است. علاوه بر جهش اتفاق دیگری هم می افتد والبته این اتفاق
به تعداد بسيار بيشتری نسبت به جهش رخ می دهد. این اتفاق، چسبيدن ابتدای یک
كروموزم به انتهای كروموزم دیگر است. این عمل به نام لقاح شناخته می شود این
همان چيزی است كه مثلاً باعث می شود تا فرزندان تعدادی از خصوصيات پدر و
تعدادی از خصوصيات مادر را با هم به ارث ببرد و از شبيه شدن كامل فرزند به یکی
از والدین جلوگيری می كند.
در ابتدا تعدادی مشخص از ورودی ها، كه متعلق به فضای نمونه، X هستند را
انتخاب می كنيم و آنها را در یک عدد برداری X=(X1,X2,….) نمایش می دهيم. در
مهندسی نرم افزار اصطلاحاً به آنها ارگانيسم یا كروموزوم گفته می شود. به گروه
كروموزوم ها جمعيت می گویيم. در هر دوره جمعيت رشد می كند و براساس قوانين
مشخصی كه حاكی از تکامل زیستی است تکامل می یابند. هر كروموزوم دارای ارزش
تناسب است. عناصر قویتر یا كروموزوم هایی كه ارزش تناسب آنها به بهينه جمعيت
نزدیک تر است شانس بيشتری برای زنده ماندن در وطول دروه های دیگر و دوباره
توليد شدن را دارند. الگوریتم، ورودی هایی كه به جواب بهينه نزدیکترند را نگه
داشته و از بقيه صرف نظر می كند. یک گام مهم دیگر در الگوریتم، تولد است كه در
هر دوره یک بار اتفاق می افتد. محتویات دو كروموزوم جدید كه ما آنها را فرزند
می ناميم ایجاد كنند. این پدیده به ما اجازه می دهد تا 0 تا از بهترین ها را برای ایجاد
فصل اول: آشنایی با روش ها / 03
یکی بهتر از آن ها با هم تركيب كنيم. )تکامل(.. یک دسته از ورودی های x را به
صورت تصادفی انتخاب می كنيم. بعد برای هر دوره ارزش تناسب را توسط تابع
تناسب اندازه گيری می كنيم سپس تولد، تغيير و انتخاب را اعمال می كنيم و این
.] فرآیند تکرار می شود. الگوریتم وقتی پایان می یابد كه به معيارمان برسيم ] 01
07 / ارزیابی واسنجی مدل بارش- رواناب
روش های نمایشی
قبل از این كه الگوریتم ژنتيک برای یک مسئله اجرا شود، یک روش برای كد كردن
ژنوم ها به زبان كامپيوتر باید به كار رود. یکی از روشهای معمول كد كردن به صورت
رشته باینری است )رشته های صفر و یک(. یک راه حل مشابه دیگر كد كردن راه
حل ها در آرایه ای از اعداد صحيح یا اعشاری است. این راه حل در مقایسه با قبلی
پيچيده تر و مشکل تر است. مثلاً این روش توسط استفان كرمر، برای حدس ساختار
سه بعدی پروتئين موجود در آمينو اسيد ها استفاده شد. الگوریتم های ژنتيکی كه
برای آموزش شبکه های عصبی استفاده می شوند، از این روش بهره می گيرند.
سومين روش برای نمایش صفات در یک GA ، رشته ای از حروف است كه هر
حرف نمایش دهنده یک خصوصيت می باشد.
یک روش دیگر كه توسط جان كوزا توسعه یافت، برنامه نویسی ژنتيک است كه
برنامه ها را به عنوان شاخه های داده، در ساختار درخت نشان می دهد. در این روش
تغييرات تصادفی می توانند با عوض كردن عملگرها یا تغيير دادن ارزش یک گروه
داده شده در درخت، یا عوض كردن یک زیر درخت با دیگران به وجود آیند.
نظر و پيشنهاد استفاده از یک مجموعه طرح اوليه، جهت حل مسائل عملی و
كاربردی مهندسی، بارها در طول دهه های 0311 و 0311 ميلادی مورد توجه قرار
گرفت تا اینکه اصول الگوریتم ژنتيک در دانشگاه ميشيگان آمریکا ارائه شد و كتابی
منتشر شد كه در حال » سازش در سيستم های طبيعی و مصنوعی « تحت عنوان
حاضر می توان آن را مرجع اصلی در مبحث الگوریتم ژنتيک دانست پس از آن
مطالعات و بحث های فراوانی در مورد اعتبار و كارایی این الگوریتم در حل مسائل
بهينه سازی ارائه شد، كه تمامی آن ها مبين توانایی این روش در حل مسائل گوناگون
بهينه سازی می باشد.
فصل اول: آشنایی با روش ها / 03
الگوریتم های ژنتيک، عمليات جستجو را از چندین نقطه در فضای پاسخ آغاز
می كنند، هر كدام از این نقاط یک طرح اوليه و به بيان دیگر یک كروموزوم
می باشند. با توجه به این موضوع، الگوریتم ژنتيک ابتدا تعدادی از این كروموزوم ها را
ایجاد می نماید كه به آن جمعيت اوليه گفته می شود. توليد جمعيت اوليه می تواند به
صورت كاملاً تصادفی و یا با اعمال نظر كاربر صورت پذیرد. پس از ایجاد جمعيت
اوليه الگوریتم ژنتيک، به بررسی این كروموزوم ها )كه در حقيقت طرح های اوليه
می باشند( پرداخته و متناسب با برازندگی آن ها مقادیری را به هر یک نسبت
می دهند. به طوری كه هر چه طرح با شرایط مورد نياز ما، سازگارتر باشد، برازنده تر
بوده و بنابراین مقدار عددی بيشتری را به خود اختصاص خواهد داد. پس از اتمام
بررسی برازندگی تمام افراد جامعه، الگوریتم ژنتيک، افراد بهتر را برای ایجاد نسل
آینده انتخاب كرده و افراد ضعيف آر حذف می كند. سپس افراد انتخاب شده جهت
ایجاد نسل بعدی تحت عمل عملگرهای تصادفی مانند انتخاب، پيوند وجهش قرار
می گيرند. پس از اعمال این عملگرها، نسل جدیدی ایجاد می شود كه معمولاً
برازندگی بيشتری نسبت به نسل قبلی خود دارد. نسل جدید جانشين نسل پيشين
شده و این چرخه تا برآورده شدن معيارهای توقف الگوریتم ادامه خواهد یافت و در
.] نتيجه برازنده ترین فرد نسل همگرا شده، جواب مسئله خواهد بود ] 00
01 / ارزیابی واسنجی مدل بارش- رواناب
روش های انتخاب
روش های مختلفی برای الگوریتم های ژنتيک وجود دارد كه می توان برای انتخاب
ژنوم ها از آنها استفاده كرد. روش های ليست شده در پایين بعضی از معمولترین
روش ها هستند.
0 نخبه گزینی: مناسب ترین عضو هر اجتماع انتخاب می شود. –
0 انتخاب چرخان: یک روش انتخاب است كه در آن عنصری كه عدد بر ارزش –
)تناسب( بيشتری داشته باشد، انتخاب می شود.
9 مقياس گزینی: به موازات افزایش متوسط عدد برارزش جامعه، سنگينی انتخاب –
هم بيشتر و جزئی تر می شود. این روش وقتی كاربر دارد كه مجموعه دارای عناصری
باشد كه عدد برارزش بزرگی دارند و فقط تفاوت های كوچکی آنها را از هم تفکيک
می كند.
1 انتخاب رقابتی: یک زیر مجموعه از صفات یک جامعه انتخاب می شوند و اعضای –
آن مجموعه با هم رقابت می كنند و سرانجام فقط یک صفت از هر زیر گروه برای
توليد انتخاب می شوند.
روش های تغيير
وقتی كروموزم ها انتخاب شدند، باید به طور تصادفی برای افزایش تناسب اصلاح
شوند. دو راه حل اساسی برای این كار وجود دارد. اولين و ساده ترین راه، )موتاسيون(
ناميده می شود. درست مثل جهش در موجودات زنده كه تغيير یک ژن به ژن دیگری
است. در الگوریتم ژنتيک جهش تغيير كوچکی در یک نقطه از كد خصوصيات ایجاد
می كند.
دومين روش كراس آور نام دارد. این فرآیند براساس فرآیند تركيب كروموزوم ها
در طول توليد مثل در موجودات زنده شبيه سازی شده است…