با فرمت قابل ویرایش word
تعداد صفحات: 117 صفحه
تکه های از متن به عنوان نمونه :
چکیده :
ظرفیت باربری مجاز یا ظرفیت باربری مطمئن عبارت از یک فشار مجازی است که محدوده اطمینانی را در برابر فروریختگی ناشی از گسیختگی برشی تأمین می کند و معمولاً ظرفیت باربری مجاز کسری از ظرفیت باربری نهایی خالص می باشد که باربری نهایی خالص نیز حداکثر تنش فشاری است که خاک می تواند تحمل کند. با این توصیف، مبنای اصلی احداث هر بنای، تعیین دقیق ظرفیت باربری خاک بوده و باید بطور دقیق مشخص گردد. با عنایت به زمان بر و پرهزینه بودن روش های مرسوم(در جا و آزمایشگاهی) برای تعیین ظرفیت باربری خاک، در این تحقیق نشان خواهیم داد که به کمک شبکه های عصبی مصنوعی می توان ظرفیت باربری خاک را در حد قابل قبول و مورد اطمینان، پیش بینی کرد. برای رسیدن به بهترین جواب سه مدل شبکه عصبی مصنوعی پس انتشار1، لایه برگشتی2 و همبستگی آبشاری3 مورد تجزیه و تحلیل قرار داده ایم. بر اساس نتایج بدست آمده بهترین شبکه، یعنی مدل شبکه عصبی مصنوعی همبستگی آبشاری برای پیش بینی مکانی ظرفیت باربری خاک در محدوده مورد مطالعه انتخاب و پیشنهاد می گردد.
کلمات کلیدی : ظرفیت باربری خاک، شبکه عصبی مصنوعی، همبستگی آبشاری
فهرست مطالب
عنوان صفحه
فصل اول : کلیات
فصل دوم : مبانی نظری و پیشینه تحقیق
2-1 مقدمه ………………………………………………………………………………………………………………………………………………. 12
2-2 تاریخچه ……………………………………………………………………………………………………………………………………………. 12
فصل سوم : روش ها و مواد
3-1 مقدمه ……………………………………………………………………………………………………………………………………………….. 18
3-2 معرفی متدولوژی و روش انجام کار ………………………………………………………………………………………………….. 19
3-3 شبکه های عصبی مصنوعی …………………………………………………………………………………………………………….. 20
3-4 جنبه های ریاضیاتی ……………………………………………………………………………………………………………………….. 23
3-5 یادگیری شبکه ……………………………………………………………………………………………………………………………….. 24
آ
فهرست مطالب
عنوان صفحه
3-6 پس انتشار ……………………………………………………………………………………………………………………………………….. 26
3-6-1 الگوریتم پس انتشار ………………………………………………………………………………………………………………. 27
3-7 الگوریتم های درهم آمیختن درجه بندی شده ……………………………………………………………………………….. 33
3-8 تابع شعاع مبنا ………………………………………………………………………………………………………………………………….. 34
3-9 الگوریتم همبستگی آبشاری ……………………………………………………………………………………………………………… 36
3-10 شبکه های عصبی مصنوعی بازگشت کننده یا بازرخدادگر …………………………………………………………… 38
3-11 نقشه های ویژگی خودسازمان دهنده ……………………………………………………………………………………………. 39
3-12 جنبه های مهم مدلسازی شبکه عصبی مصنوعی ………………………………………………………………………….. 41
3-12-1 انتخاب متغیرهای ورودی و خروجی ……………………………………………………………………………….. 41
3-12-2 جمع آوری و پردازش داده ………………………………………………………………………………………………. 42
3-12-3 طراحی شبکه عصبی مصنوعی …………………………………………………………………………………………. 43
3-12-4 آموزش و آموزش متقابل …………………………………………………………………………………………………. 45
3-12-5 تصدیق اعتبار مدل ………………………………. ………………………………………………………………………….. 47
3-13 برخی مشکلات دیگر ………………………………………………………………………………………………………………………. 47
3-14 نقاط قوت و محدودیتها …………………………………………………………………………………………………………………… 48
3-15 برخی از قابلیتهای شبکه های عصبی در مهندسی عمران …………………………………………………………….. 50
ب
فهرست مطالب
عنوان صفحه
3-16 کاربرد شبکه های عصبی مصنوعی در بهینه سازی سازه ها ………………………………………………………….. 50
3-17 معرفی نرم افزار Matlab ……………………………………………………………………………………………………………… 51
3-18 مراحل مدل سازی ………………………………………………………………………………………………………………………….. 53
فصل چهارم : نتایج مدل شبکه ی عصبی مصنوعی برای پیش بینی مکانی ظرفیت باربری خاک
4-1 مقدمه …………………………………………………………………………………………………………………………………………………. 56
4-2 کاربرد شبکه عصبی مصنوعی در مهندسی عمران …………………………………………………………………………….. 56
4-2-1 کاربرد شبکه های عصبی مصنوعی در بهینه سازی سازه ها ……………………………………………….. 57
4-3 محدوده مورد مطالعه …………………………………………………………………………………………………………………………. 57
4-4 روند انجام مدل سازی ……………………………………………………………………………………………………………………….. 60
4-4-1 پارامترهای مورد استفاده …………………………………………………………………………………………………….. 61
4-4-2 مرتب سازی داده ها …………………………………………………………………………………………………………….. 62
4-4-3 مشخصات مدل شبکه عصبی مصنوعی جهت پیش بینی مکانی ظرفیت باربری خاک ……….. 64
4-4-4 ارزیابی مدل ها ……………………………………………………………………………………………………………………… 66
4-4-4-1 ساخت مدل …………………………………………………………………………………………………………… 66
4-4-4-2 شبکه پس انتشار FFBP ……………………………………………………………………………………. 66
4-4-4-3 شبکه لایه برگشتی LRN …………………………………………………………………………………. 70
پ
فهرست مطالب
عنوان صفحه
4-4-4-4 شبکه همبستگی آبشاری CFBP …………………………………………………………………….. 72
فصل پنجم : بحث و نتیجه گیری
5-1 ارزیابی شبکه های عصبی مصنوعی برای پیش بینی ظرفیت باربری خاک …………………………………….. 78
5-2 نتیجه گیری ………………………………………………………………………………………………………………………………………. 81
5-3 پیشنهادات ………………………………………………………………………………………………………………………………………… 82
5-4 منابع ………………………………………………………………………………………………………………………………………………… 83
ت
فهرست اشکال
عنوان صفحه
شکل 1-1 : محدوده شهری مورد مطالعه، شهر آذرشهر ……………………………………………………………………………… 8
شکل 1-2 : موقعیت قرار گیری شهرستان آذرشهر ……………………………………………………………………………………… 9
شکل 3-1 : پیکربندی شبکه عصبی مصنوعی سه لایه ای Feed-Forward ………………………………………… 22
شکل 3-2: دیاگرام شماتیک از گره j …………………………………………………………………………………………………………. 23
شکل 3- 3: نمایی کلی از محیط کار نرم افزار Matlab …………………………………………………………………………. 52
شکل 4-1 : موقعیت جفرافیایی شهرستان آذرشهردرایران]سایت ویکی پدیا[ ……………………………………….. 58
شکل 4-2: محدوده شهری ، شهر آذرشهر]گوگل ارت[ …………………………………………………………………………….. 59
شکل 4-3: شماتیک کلی هندسه مدل شبکه عصبی مصنوعی ]نرم افزار متلب] ……………………………………. 65
شکل 4-4 : مشخصات کامل مدل شبکه عصبی Feed-forward backpropagation …………………… 68
شکل 4-5 نمودار ضریب همبستگی، مدل طراحی شده Feed-forward backpropagation با 2 لایه مخفی و 5 نورون ………………………………………………………………………………………………………………………………………… 69
شکل 4-6: شماتیک مدل طراحی شده در مدل شبکه Layer Recurrent [نرم افزار متلب] …………….. 71
شکل 4-7: شماتیک مدل طراحی شده در مدل شبکه Cascade-forward backpropagation …. 73
شکل 4- 8: نمودار ضریب همبستگی، مدل طراحی شدهCascade-forward backpropagation … 74
ث
فهرست اشکال
عنوان صفحه
شکل 5-1: نمودار صحت سنجی برای مدل FFBP …………………………………………………………………………………. 79
شکل 5-2: نمودار صحت سنجی برای مدل CFBP ……………………………………………………………………………… 80
شکل 5-3: نمودار صحت سنجی برای مدل LRN …………………………………………………………………………………… 80
شکل 5-4: نمودار صحت سنجی برای تمامی مدل های طراحی شده …………………………………………………….. 81
چ
فهرست جداول
عنوان صفحه
جدول 4-1: اطلاعات نرمال شده مورد نیاز برای طراحی شبکه عصبی مصنوعی …………………………………….. 63
ادامه جدول 4-1: اطلاعات نرمال شده مورد نیاز برای طراحی شبکه عصبی مصنوعی …………………………… 64
جدول 4-1: نتایج مدل سازی با مدل شبکه FFBP ……………………………………………………………………………… 70
جدول 4-2: نتایج مدل سازی با مدل شبکه LRN ……………………………………………………………………………….. 72
جدول 4-3: نتایج مدل سازی با مدل شبکه CFBP …………………………………………………………………………….. 75
جدول 4-4: مقایسه نتایج انواع مدل سازی با شبکه های CFBP ، FFBP , LRN ………………………….. 76
جدول 5-1: اطلاعات شبکه های مختلف با تعداد لایه مخفی و تعداد نورون در لایه مخفی …………………. 78
جدول 5-2: خروجی حاصل از شبکه های مختلف در مدل های طراحی شده ………………………………………… 79
فصل اول کلیات
|
1-1مقدمه
خاک از قدیمی ترین و پیچیده ترین مصالح مهندسی است. نیاکان ما خاک را به عنوان مصالح ساختمانی جهت ساخت مقبره ها، محافظت از سیل و پناهگاه ها بکار می بردند. در تمدن غرب ، از رومی ها به عنوان تشخیص دهنده اهمیت خاک ها در پایداری سازه ها نام برده اند. مهندسان رومی، به ویژه ویتروویوس (Vitruvius) که در یک قرن قبل از میلاد خدمت می کرد، به انواع خاک ها (ماسه، شن و غیره …) و طراحی و ساختمان پی های صلب توجه زیادی نمود. آن موقع هیچ مبنای تئوریک برای طراحی وجود نداشت و به تجربه حاصل از آزمون و خطا اکتفا می شد.[1]
کولمب (1773) به عنوان اولین کسی شناخته شده است که جهت حل مسائل خاک از علم مکانیک استفاده کرده است. از اوایل قرن بیستم، با رشد سریع شهرها، صنعت و تجارت، ظهور سیستم های ساختمانی مختلف نظیر آسمان خراش ها، ساختمان های عمومی بزرگ، سدها برای تولید برق و مخازن برای تهیه آب و آبیاری، تونل ها، جاده ها و خطوط آهن، تجهیزات بندری، پل ها، فرودگاه ها و باندها، معادن، بیمارستان ها، سیستم های بهداشتی، سیستم های زهکشی و برج ها برای سیستم های ارتباطاتی ضروری می گردد.
2
این سیستم ها به پی های پایدار و اقتصادی نیاز دارند، اکنون سوالات جدیدی درباره خاک ها مطرح گردید. به عنوان مثال وضعیت تنش در یک توده خاک چگونه است؟ چگونه می توان یک پی مطمئن و اقتصادی طراحی نمود؟ یک ساختمان چقدر نشست خواهد کرد؟ و پایداری سازه های ساخته شده بر روی یک خاک یا در درون آن چگونه است؟ برای پاسخ دادن به این سوالات روشهای خاصی نیاز بود و نتیجتاً مکانیک خاک متولد شد. کارل ترزاقی(1963-1883) پدر غیر قابل انکار مکانیک خاک می باشد. انتشار کتاب ایشان بنام ” Erdbaumechanik” در سال 1925 پایه مکانیک خاک را پی ریزی نمود و اهمیت خاک را در فعالیت های مهندسی آشکار کرد. مکانیک خاک که به نام ژئوتکنیک یا ژئومکانیک نیز نامیده می شود، کاربرد مکانیک مهندسی در حل مسائلی که با خاک به عنوان بستر پی و مصالح ساختمانی سروکار دارد می باشد. مکانیک مهندسی برای فهم و تفسیر خواص، رفتار و عملکرد خاک ها به کار می رود. [1]
مکانیک خاک زیر مجموعه مهندسی ژئوتکنیک است و شامل کاربرد مکانیک خاک،زمین شناسی و هیدرولیک برای تحلیل و طراحی سیستم های ژئوتکنیکی نظیر سدها، خاک ریزها، تونل ها، کانال ها، آبراه ها، پی پل ها، جاده ها، ساختمان ها و سیستم های دفن مواد زائد جامد می باشد. در هر کاربرد مکانیک خاک به علت تغییر خاک ها تغییر لایه های آنها، ترکیبات آنها و خواص مهندسی، عدم اطمینان وجود دارد. لذا مکانیک مهندسی می تواند فقط بخشی از جواب ها را برای مسائل خاک بدهد. تجربه و محاسبات تقریبی برای کاربرد موفق مکانیک خاک در مسائل عملی بسیار اساسی می باشد. [1]
پایداری و اقتصاد دو باور اساسی طراحی مهندسی هستند. در مهندسی ژئوتکنیک، عدم اطمینان از رفتار خاک ها، عدم اطمینان از بارهای وارده و موارد غیر معمول در نیروهای طبیعی، ما را به طرف انتخاب از بین تحلیل های پیچیده به تحلیل های ساده یا روش های تقریبی سوق می دهد. [1]
3
بارهای ناشی از یک ساختمان از طریق پی، به خاک منتقل می گردد. خود پی سازه ای است که اغلب از بتن، فولاد یا چوب ساخته می شود. پی باید دو شرط زیر را برای پایداری داشته باشد:
معمولاً از روش تعادل حدی برای یافتن جواب انواع مسائل از جمله ظرفیت باربری پی ها، پایداری دیوارهای حایل و شیب ها استفاده می کنند. [1]
1-2بیان مسأله
یکی از مسائل مهم در مهندسی ژئوتکنیک تعیین ظرفیت باربری پی ها برای شرایط مختلف لایه های زیر پی می باشد. ظرفیت باربری خاک مقدار تنش تماسی میانگین بین خاک و شالوده است که به گسیختگی برشی خاک منجر می شود. تنش باربری مجاز مقدار ظرفیت باربری است که به وسیله ضریب اطمینان کاسته شده است. بعضی مواقع در محلهایی با خاک نرم، خاک زیر شالوده میتواند نشستهای زیاد بدون گسیختگی برشی حقیقی داشته باشد. در بعضی موارد، تنش باربری مجاز با توجه به حداکثر نشست مجاز محاسبه میشود. [1]
تعیین ظرفیت باربری خاک زیر پی ها از دیر باز مورد توجه پژوهشگران و طراحان حوزه ژئوتکنیک قرار داشته است و به همین علت طرح آن به عنوان یک مسئله جدید تلقی نمی شود اما کاربرد روشهای جدید محاسباتی و آزمایش مدلهای پیشنهادی برای خاک و پیشرفت رایانه ها، دیدگاههای جدیدی را در حوزه این موضوع مطرح می سازد که تلاش های جدید را در این زمینه توجیه می نماید.
4
ظرفیت باربری نهایی پی تابع مقاومت برشی خاک می باشد که توسط ترزاقی، مایرهوف، وسیک و دیگران با استفاده از روش های مختلف تخمین زده شده است. اخیراً، برای جلوگیری از صرف زمان و هزینه بسیار زیاد و انجام آزمایشات متعدد، گرایش به سمت ابزارهای کامپیوتری که مشابه با سیستم بیولوژیکی (شبه بیولوژیکی) باشند افزایش یافته است.
یکی از اساسیترین مسائل مکانیک خاک حسابکردن ضریب اطمینان در مقابل گسیختگی نهایی یک توده ی خاک میباشد که در مهندسی پی منجر به تعیین ظرفیت باربری نهایی پی میشود. براساس قضایای حالات حدی جواب دقیق هنگامی به دست میآید که جواب حد بالا و حد پایین یکسان باشند. برای پایدارکردن حد پایین، یک میدان تنش صحیح که در هیچ نقطه از محدوده ی مسئله معیار تسلیم را نقض ننماید در نظر گرفته میشود و براساس آن ظرفیت نهایی محاسبه میگردد. حال آنکه، برای پیداکردن حد بالا مکانیزمی قابل قبول برای گسیختگی فرض گردیده و جواب مربوطه با استفاده از تساوی کار نیروهای داخلی و خارجی تعیین میگردد.[4]
مقدمه
هوش
محاسباتی یا (Computational-Intelligence) CI به معنای استخراج هوش، دانش،
الگوریتم یا نگاشت از دل محاسبات عددی براساس ارائه به روز دادههای عددی
است. سیستمهایCI در اصل سیستمهای دینامیکی مدل آزاد (Model-free) را برای
تقریب توابع و نگاشتها ارائه میکند. در کنار این ویژگی بسیار مهم باید از
ویژگی مهم دیگری در ارتباط با خصوصیات محاسباتی سیستمهای CI نام برد، که
در آن دقت، وجهالمصالحه مقاوم بودن، منعطفبودن و سهولت پیادهسازی قرار
میگیرد.
مولفههای مهم و اساسی CI ، شبکههای عصبی )محاسبات نورونی(،
منطق فازی) محاسبات تقریبی( و الگوریتم ژنتیک) محاسبات ژنتیکی(است، که هر
یک به نوعی مغز را الگو قرار دادهاند. شبکههای عصبی ارتباطات سیناپسی و
ساختار نورونی، منطق فازی استنتاجات تقریبی و محاسبات ژنتیکی محاسبات
موتاسیونی مغز را مدل میکنند.
هوش مصنوعی
در
شبکه ارتباطی مغز انسانها سیگنالهای ارتباطی به صورت پالسهای الکتریکی
هستند.جزء اصلی مغز نرون است که از یک ساختمان سلولی و مجموعه ای از شیارها
و خطوط تشکیل شده و شیارها محل ورود اطلاعات به نرون هستند وخطوط محل خروج
اطلاعات از نرون اند . نقطه اتصال یک نرون به نرون دیگر را سیناپس می
نامند که مانند دروازه یا کلید عمل می کنند. اگر واکنشهایی که میلیونها
نرون مختلف به پالسهای متفاوت نشان میدهند با یکدیگر هماهنگ باشند ممکن است
پدیده های مهمی در مغز رخ دهد.
آن دسته از پژوهشگران هوش مصنوعی که
رویکرد مدل مغزی را دنبال می کنند گونه ای از مدارهای الکتریکی را طراحی
کرده اند که تا حدی شبکه مغز را شبیه سازی میکند در این روش هر گره
(نرون)به تنهایی یک پردازنده است ولی رایانه های معمولی حداکثر چند
cpuدارند هدف عمده کامپیوتر شبکه عصبی این است که مکانیسمی طراحی کند که
همانند مغز انسان بازخورد مثبت یاد بگیرد پاسخهای درست و نادرست کدامند.
سیستم شبکه عصبی این کار را از طریق ارزشگذاری کمی برای ارتباطات سیگنالها
بین نرونها انجام میدهد مکانیسم ارزشگذاری توسط مقاومتها با تقویت یا
تضعیف پالسها انجام میشود.چون شبکه های عصبی میلیونها نرون دارند خرابی
تعدادی از آنها تاثیر چندانی برعملکرد سیستم نمی گذارد تا کنون چند سیستم
آزمایشی با استفاده از این اصول طراحی و ساخته شده اند مثلاًدر بررسی های
زیست محیطی، شبکه های عصبی برای جمع آوری و تحلیل اطلاعاتی که از راه دور
حس شده اند مورد استفاده قرار می گیرند اطلاعاتی که اغلب سفینه ها مخابره
می کنند بسیار حجیم است.شبکه های عصبی این اطلاعات را به راحتی دسته بندی
کرده وپس از جمع آوری اطلاعات ذهنی و تجسمی نتایج جالبی به دست می آورند
(مثلاًتشخیص انواع خاصی از ابرها) البته این فرایند با آنچه سیستم های خبره
انجام می دهند متفاوت است زیرا این سیستم ها ابزارهای تصمیم سازی هستند و
می توانند حجم زیادی از اطلاعات را به سرعت تحلیل کنند شبکه های عصبی برای
مدل سازی فرایندهای فکری-مغزی که زمینه ی دیگری برای مطالعات حساس به
اطلاعات و پیچیدگی است مورد استفاده قرار گرفته است .
به سوی آینده
هوش
مصنوعی هنوز راه درازی در پیش دارد؛شبکه سازی عصبی (که با اغماض ارتباط
گرایی هم نامیده می شود)در سالهای اخیر تغییرات عمده ای را شاهد بوده است
.به عنوان نمونه برخی پژوهشگران پیش بینی میکنند به کمک تکنولوژی نرم
افزاری جدید شبکه های عصبی با کامپیوترهای شخصی ترتیب داده خواهند شد و پیش
بینی بازار سهام را ممکن خواهند کرد افرادی که درباره ی هوش مصنوعی
وتوانایی های آن مرددند اظهار می دارند اگر هوش مصنوعی محقق شود ناچار است
از دنیای منطقی،قانونمند ونمادین کامپیوترهای دیجیتال خارج شوند و به دنیای
مبهم (حاصل از منطق فازی)شبکه های عصبی که مبتنی بر سیستم گسترده ی یاد
گیری بازخوردی هستند پا بگذارد .
امروزه نگرش تازه ای نسبت به هوش
مصنوعی ایجاد شده است که در بسیاری از آزمایشگاهها تحت بررسی است
:دانشمندان سعی می کنند دریابند آیا مجموعه ای از روباتهای نیمه هوشمندمی
توان یک هوش جمعی ایجاد کنند به گونه ای که از اعضای تشکیل دهنده اش باهوش
تر باشد.
هوش
مصنوعی (artificial intelligence) را باید عرصهٔ پهناور تلاقی و ملاقات
بسیاری از دانشها، علوم، و فنون قدیم و جدید دانست. ریشهها و ایدههای
اصلی آن را باید در فلسفه، زبانشناسی، ریاضیات، روانشناسی، نورولوژی، و
فیزیولوژی نشان گرفت و شاخهها، فروع، و کاربردهای گونهگونه و فراوان آن
را در علوم رایانه، علوم مهندسی، علوم زیستشناسی و پزشکی، علوم ارتباطات و
زمینههای بسیار دیگر.
این شاخه از علوم بسیار گسترده و متنوع است و
از موضوعات و رشتههای مختلف علوم و فناوری، مانند سازوکارهای ساده در
ماشینها شروع شده، و به سیستمای خبره ختم میشود. هدف هوش مصنوعی بطور کلی
ساخت ماشینی است که بتواند «فکر» کند. اما برای دسته بندی و تعریف ماشینهای
متفکر، میبایست به تعریف «هوش» پرداخت. همچنین به تعاریفی برای «آگاهی» و
«درک » نیز نیازمندیم و در نهایت به معیاری برای سنجش هوش یک ماشین
نیازمندیم.
تاریخچه
نام
هوش مصنوعی در سال ۱۹۶۵ میلادی به عنوان یک دانش جدید ابداع گردید. البته
فعالیت درزمینه این علم از سال ۱۹۶۰ میلادی شروع شده بود
تعریف
هنوز
تعریف دقیقی که مورد قبول همه دانشمندان این علم باشد برای هوش مصنوعی
ارائه شدهاست.اما اکثر تعریفهایی که در این زمینه ارایه شدهاند بر پایه
یکی از ۴ باور زیر قرار میگیرند:
1. سیستمهایی که به طور منطقی فکر میکنند .
2. سیستمهایی که به طور منطقی عمل میکنند .
3. سیستمهایی که مانند انسان فکر میکنند.
4. سیستمهایی که مانند انسان عمل میکنند.
شاید
بتوان هوش مصنوعی را این گونه توصیف کرد:«هوش مصنوعی عبارت است از مطالعه
این که چگونه کامپیوترها را میتوان وادار به کارهایی کرد که در حال حاضر
انسانها آنها رابهتر انجام میدهند»
به یاری پژوهشهای گسترده
دانشمندان علوم مرتبط، هوش مصنوعی از آغاز پیدایش تاکنون راه بسیاری
پیمودهاست. در این راستا، تحقیقاتی که بر روی توانایی آموختن زبانها انجام
گرفت و همچنین درک عمیق از احساسات، دانشمندان را در پیشبرد این علم، یاری
کردهاست. یکی از اهداف متخصصین، تولید ماشینهایی است که دارای احساسات
بوده و دست کم نسبت به وجود خود و احساسات خود آگاه باشند. این ماشین باید
توانایی تعمیم تجربیات قدیمی خود در شرایط مشابه جدید را داشته و به این
ترتیب اقدام به گسترش دامنه دانش و تجربیاتش کند.
برای نمونه به رباتی
هوشمند بیاندیشید که بتواند اعضای بدن خود را به حرکت درآورد، او نسبت به
این حرکت خود آگاه بوده و با سعی و خطا، دامنه حرکت خود را گسترش میدهد، و
با هر حرکت موفقیت آمیز یا اشتباه، دامنه تجربیات خود را وسعت بخشیده و سر
انجام راه رفته و یا حتی میدود و یا به روشی برای جابجا شدن، دست
مییابد، که سازندگانش، برای او، متصور نبودهاند.
هر چند مثال ما در
تولید ماشینهای هوشمند، کمی آرمانی است، ولی به هیچ عنوان دور از دسترس
نیست. دانشمندان، عموما برای تولید چنین ماشینهایی، از تنها مدلی که در
طبیعت وجود دارد، یعنی توانایی یادگیری در موجودات زنده بخصوص انسان، بهره
میبرند.
آنها بدنبال ساخت ماشینی مقلد هستند، که بتواند با شبیهسازی
رفتارهای میلیونها یاخته مغز انسان، همچون یک موجود متفکر به اندیشیدن
بپردازد.
مباحث هوش مصنوعی پیش از بوجود آمدن علوم الکترونیک، توسط
فلاسفه و ریاضی دانانی نظیر بول (Boole) که اقدام به ارائه قوانین و
نظریههایی در باب منطق نمودند، مطرح شده بود. در سال ۱۹۴۳، با اختراع
رایانههای الکترونیکی، هوش مصنوعی، دانشمندان را به چالشی بزرگ فراخواند.
بنظر میرسید، فناوری در نهایت قادر به شبیه سازی رفتارهای هوشمندانه خواهد
بود.
با
وجود مخالفت گروهی از متفکرین با هوش مصنوعی که با دیده تردید به کارآمدی
آن مینگریستند تنها پس از چهار دهه، شاهد تولد ماشینهای شطرنج باز و دیگر
سامانههای هوشمند در صنایع گوناگون هستیم.
هوش مصنوعی که همواره هدف
نهایی دانش رایانه بودهاست، اکنون در خدمت توسعه علوم رایانه نیز میباشد.
زبانهای برنامه نویسی پیشرفته، که توسعه ابزارهای هوشمند را ممکن
میسازند، پایگاههای دادهای پیشرفته، موتورهای جستجو، و بسیاری
نرمافزارها و ماشینها از نتایج پژوهشهای هوش مصنوعی بهره میبرند.
در
سال ۱۹۵۰ آلن تورینگ) َAlain (Turing، ریاضی دان انگلیسی، معیار سنجش رفتار
یک ماشین هوشمند را چنین بیان داشت: «سزاوارترین معیار برای هوشمند شمردن
یک ماشین، اینست که آن ماشین بتواند انسانی را( و حتی یک محقق) توسط یک
پایانه (تله تایپ) به گونهای بفریبد که آن فرد ( و حتی یک محقق) متقاعد
گردد با یک انسان روبروست.»
در این آزمایش شخصی از طریق ۲ عدد پایانه
(رایانه یا تله تایپ) که امکان برقراری ارتباط و گپزنی را برای وی فراهم
میکنند با یک انسان و یک ماشین هوشمند، بطور همزمان به پرسش و پاسخ
میپردازد. در صورتی که وی نتواند ماشین را از انسان تشخیص دهد، آن ماشین،
هوشمند است. خلاصه ابنکه مورد تحقیق قرار گیرد و محقق نتواند دریابد در آن
طرف انسان قرار دارد یا کامپیوتر.
آزمایش تورینگ از قرار دادن انسان و
ماشین بطور مستقیم در برابر یکدیگر اجتناب میکند و بدین ترتیب، چهره و
فیریک انسانی مد نظر آزمایش کنندگان نمیباشد. ماشینی که بتواند از پس
آزمون تورینگ برآید، از تفکری انسانی برخوردار است.
آزمایش تورینگ مدل
سازی نحوه تفکر انسان، تنها راه تولید ماشینهای هوشمند نیست. هم اکنون دو
هدف برای تولید ماشینهای هوشمند، متصور است، که تنها یکی از آن دو از الگوی
انسانی جهت فکر کردن بهره میبرد:
• سیستمی که مانند انسان فکر کند.
این سیستم با مدل کردن مغز انسان و نحوه اندیشیدن انسان تولید خواهد شد و
لذا از آزمون تورینگ سر بلند بیرون میآید. از این سیستم ممکن است اعمال
انسانی سر بزند.
• سیستمی که عاقلانه فکر کند. سامانهای عاقل است که
بتواند کارها را درست انجام دهد. در تولید این سیستمها نحوه اندیشیدن انسان
مد نظر نیست. این سیستمها متکی به قوانین و منطقی هستند که پایه تفکر آنها
را تشکیل داده و آنها را قادر به استنتاج و تصمیم گیری مینماید. آنها با
وجودی که مانند انسان نمیاندیشند، تصمیماتی عاقلانه گرفته و اشتباه
نمیکنند. این ماشینها لزوما درکی از احساسات ندارند. هم اکنون از این
سیستمها در تولید عاملها در نرم افزارهای رایانهای، بهره گیری میشود.
عامل تنها مشاهده کرده و سپس عمل میکند.
Agent قادر به شناسایی
الگوها، و تصمیم گیری بر اساس قوانین فکر کردن خود است. قوانین و چگونگی
فکر کردن هر Agent در راستای دستیابی به هدفش، تعریف میشود. این سیستمها
بر اساس قوانین خاص خود فکر کرده و کار خودرا به درستی انجام میدهند. پس
عاقلانه رفتار میکنند، هر چند الزاما مانند انسان فکر نمیکنند.
با
وجودی که برآورده سازی نیازهای صنایع نظامی، مهمترین عامل توسعه و رشد هوش
مصنوعی بودهاست، هم اکنون از فراوردههای این شاخه از علوم در صنایع
پزشکی، رباتیک، پیش بینی وضع هوا، نقشهبرداری و شناسایی عوارض، تشخیص صدا،
تشخیص گفتار و دست خط و بازیها و نرم افزارهای رایانهای استفاده میشود.
حال
در اینجا برای آشنایی، مطالبی در مورد سیستم های خبره،الگوریتم ژنتیک
ومنطق فازی مطرح می کنیم وسپس به بررسی شبکه های عصبی می پردازیم.
تاریخچه و تعاریف سیستمهای خبره
ریشه
اصلی سیستم های خبره یا سیستم های مبتنی بر دانش (KBS) به حوزه مطالعاتی
به نام هوش مصنوعی (AI) برمیگردد وسیستم های خبره موجودیت خود را مدیون هوش
مصنوعی هستند یکی از بزرگان هوش مصنوعی- ماروین مینسکی- آن را چنین تعریف
می کند:
«هوش مصنوعی ،حوزه مطالعاتی است که سعی در ایجاد سیستم هایی دارد که به نظر افراد هوشمند هستند.»
سیستم
مبتنی بردانش (knowledge base system ) شامل عملگرهایی است که مشخص می
کنند چطور یک سیستم از یک وضعیت می تواند به وضعیت بعد ونهایتاً بسوی وضعیت
هدف پیش رود . در این راستا برای ایجاد یک برنامه هوشمند ، آن برنامه باید
با کیفیت بالا به نحوی که دانش خاص در حوزه آن مسأله ومرتبط با آن باشد
طراحی گردد.
یکی از پر استفاده ترین برنامه های کاربردی هوش مصنوعی،
سیستمهای خبره میباشد. یک KBIS یک پایگاه دانش را به اجزای اصلی شناخته شده
در انواع دیگر سیستمهای اطلاعاتی کامپیوتری اضافه میکند. یک ES یک سیستم
اطلاعاتی مبتنی بر دانش(KBIS) است که دانش خود را در یک حوزه کاربردی
پیچیده و خاص بکار میبرد و به عنوان یک مشاور متخصص برای کاربر نهایی عمل
میکند. سیستمهای خبره به سوالاتی در زمینه مشکلات و مسائل خاص بوسیله
استنباطی نظیر استنباط انسان در حوزه دانشی که در آن متخصص است، جواب
میدهد. سیستمهای خبره باید قادر باشند که فرایند استدلال و نتیجه گیری خود
را برای کاربر نهایی توضیح دهند.( O`Brien, 2000 ).
زمانی که سازمان با
مشکلات پیچیده مواجه است، غالبا از خبره ها برای مشاوره استفاده میکند.
این خبره ها ، دانشی خاص و تجربه ای خاص در یک حوزه خاص دارند . آنها گزینه
ها ، میزان شانس موفقیت، و منافع و مضار تجاری را می شناسند . سازمانها
افراد خبره را برای موقعیتهای غیر ساختارمند جمع میکنند. در واقع سیستم
خبره سعی دارد تا از متخصصین انسانی تقلید کند . نوعا سیستم خبره عبارت است
از یک پکیج نرم افزاری برای تصمیم گیری که میتواند به سطح یک متخصص (حتی
جلوتر) در حل مسایل در حوزه خاص برسد(.Turban, 2000)
سیستم خبره یک برنامه کامپیوتری مبتنی بر دانش است که تخصص انسانی را در حوزه ای محدود کسب میکند.(Lauden & Lauden,2000 ).
بعضی از تعاریف سیستم های خبره
سیستم
خبره یک سیستم رایانه ای است که با استفاده از دانش،حقایق وروش های
استدلالی ، مسائلی را حل می کند که نیاز به توانایی افراد خبره دارند.
یک
سیستم خبره یک سیستم رایانه ای است که توانایی تصمیم گیری یک فرد خبره را
«تقلید» میکند. اصطلاح تقلید یعنی انجام کارهایی که یک فرد خبره انجام
میدهد واین امر با شبیه سازی اعمال یک خبره تفاوت زیادی دارد.
سیستم خبره یک برنامه هوش مصنوعی است که برای حل مسائل ومشکلات مربوط به یک حوزه خاص تهیه شده باشد.
سیستم خبره یک برنامه رایانه ای است که بااستفاده از دانش و رویه ها در حل مسائل مشکل ، همانند یک انسان متخصص وخبره عمل میکند.
تاریخچه سیستم های خبره
بعد
از سال های 1950 میلادی ، محققین هوش مصنوعی سعی نمودند روش هایی برای حل
مسئله بر اساس استدلال های بشر،ارائه نمایند . چنین پروژه ای در سال 1976به
وسیله نوول و سایمون توسعه یافت که به عنوان الگوریتم های حل مسائل عمومی
یا GPS شناخته شد.
یکی از کمبودهای راه حل مسائل عمومی این بود که
اندازه مسئله بزرگ شد . بنابراین فضای جستجو به وجود آمده به طور قابل
توجهی رشد کرد بنابراین تنها با ساخت برنامه هایی که کمتر عمومی هستند و
تمرکز روی دانش خاص مسئله ، می توانیم این قبیل فضای جستجو را کاهش دهیم .
از این رو یک عرصه جدید برای تحقیق در سال 1970پدیدار شد و واترمن(1986)یک
برنامه هوشمند به عالیترین کیفیت و دانش مشخص در دامنه مسئله ایجاد نمود
که لنات و گودها بعداً در سال 1991 آن را اصل دانش نامیدند . آن ها این
مسئله را به شرح زیر بیان کردند: اگر برنامه ای کار پیچیده ای را به خوبی
اجرا کند،آن برنامه می بایست راجع به محیطی که در آن عمل می کند ، دانسته
هایی داشته باشد . نبود دانش،همه آنچه که مشخص می شود بر اساس جستجو و
استدلال است که کافی نیست. از زمانیکه اولین محصول پایگاه دانش پدیدار شد ،
یک شاخص در محدوده های زندگی واقعی به حساب می آمد . مانند تشخیص بیماری
های عفونی و یا پیشگویی ذخایر معدنی در مناطق جغرافیایی مختلف دنیا ، این
تاریخچه ای از آزمایش بر روی مسائل زندگی واقعی بود تا بفهمیم که آیا
تصورات با سعی و تلاش قابل دسترس هستند یا خیر؟
سیستم DENDRAL اولین
سیستم در این دسته بود که ساخته شد . کار روی این سیستم در سال 1965 میلادی
با مدیریت ادوارد فیگن باوم شروع شد.این سیستم به این دلیل به کار گرفته
شد تا ساختارهای شیمیایی ذرات ناشناخته را معین کند.این سیستم ها برای حل
مسائلی به کار برده شدند که نیاز به سرویس دهی یک خبره داشتند بنابراین به
عنوان سیستم های خبره شناخته شدند.همچنین این سیستم ها به عنوان سیستم های
مبتنی بر دانش یا سیستم های دانش، شناخته می شوند.
الگوریتم ژنتیک
همانطور
که میدانید، یکی از زیر شاخههای Soft computing، الگوریتم ژنتیک (GA) است
که تکامل طبیعی موجودات را الگو قرار میدهد. Genetic algorithm مانند
دیگر شاخههای Soft computing ریشه در طبیعت دارد. این روش تقلیدی از
فرایند تکامل با استفاده از الگوریتمهای کامپیوتری است. اساسیترین اصل
تکامل، وراثت است. هر نسل، خصوصیات نسل قبلی را به ارث میبرد و به نسل بعد
انتقال میدهد. این انتقال خصوصیات از نسلی به نسل بعد توسط ژنها صورت
میگیرد. درطبیعت، فرایند تکامل زمانی اتفاق میافتد که شرایط زیر موجود
باشد:
An entity has the ability to reproduce 1.
There is a population of such self- reprodcing entities 2.
3.There is some variety among Self-reproducing entities
جهانی
که در آن زندگی میکنیم دائماً در حال تغییر است. برای بقا در این سیستم
پویا، افراد باید توانایی داشته باشند که خود را با محیط، سازگار کنند.
Fitness یا سازگاری یک موجود زنده به عنوان درجهی سازگاری آن با محیط
تعریف میشود.
Fitness یک موجود تعیین میکند که آن موجود چه مقدار
زنده خواهد ماند و چقدر شانس دارد تا ژنهای خود را به نسل بعد انتقال دهد.
در تکامل بیولوژیکی، فقط برندهها هستند که میتوانند در فرایند تکامل
شرکت کنند. خصوصیات هرموجود زنده، در ژنهایش، کدگذاری شده است و طی فرایند
وراثت، این ژنها به فرزندان (یا همان offspring) منتقل میشوند. یک مثال
جالب در نظریهی تکامل، تکامل تدریجی زرافهها در طول تاریخ میباشد.
میلیونها سال پیش، زرافههای ابتدایی قد نسبتاً کوتاهی داشتند؛ همانطور که
میدانیم غذای زرافهها برگ درختان است. زرافههایی که قد کوتاهتری داشتند
غذای کمتری بدست میآورند. از این رو به مرور توانایی بقا و تولید مثل خود
را از دست دادند و نتوانستند ژنهای خود را به نسلهای بعدی منتقل کنند. در
عوض زرافههای بلندتر، بقا یافتند و توانستند ژنهای خود را در طول فرایند
تولید مثل به نسلهای بعد منتقل کنند. بنابراین زرافههای هر نسل، از نسل
قبل بلندتر شدند. با تقلید از فرایند تکامل طبیعی با استفاده از
الگوریتمهای کامپیوتری، محققین توانستند از توانایی بالای فرایند تکامل در
حل مسائل، الگو برداری کنند. بهترین این روشها، ژنتیک الگوریتم (Genetic
Algorithm) است.
الگوریتم ژنتیک، روشی برای حل مسائل بهینهسازی است.
الگوریتم ژنتیک (GA) ابتدا یک جمعیت اولیه از جوابها را به صورت تصادفی در
نظر میگیرد و مرتباً جمعیت جوابها را اصلاح میکند و در هر مرحله ما
جوابهای بهتری نسبت به مرحلهی قبل داریم. با گذشت نسلهای متمادی، جمعیت
جوابها به سمت یک جواب بهینه میل میکند.
Genetic Algorithm در حالت کلی از ساختار زیر پیروی میکند:
1ـ یک جمیعت اولیه (یا همان initial population) از جوابها به صورت تصادفی (random) انتخاب میشوند.
2ـ برای هریک از جوابها، یک تابع سازگاری (Fitness function) تعریف میشود.
3ـ
نسل بعدی از جوابها با روشهای خاص پدید میآید که این روشها را در ادامه
توضیح میدهیم. تا زمانی که جوابها، به یک جواب بهینه همگرا نشود این
پروسه ادامه پیدا میکند.
حالا با یک مثال با روش کار Genetie Algorithm بیشتر آشنا میشویم. فرض کنید میخواهیم مینیمم تابع زیر را دربازهی زیر بدست آوریم.
این
تابع مینیممهای محلی زیادی دارد ولی با این حال فقط یک مینیمم مطلق دارد
که در نقطهی [0,0] قرار دارد. همانطور که مشاهده میکنیم مقدار تابع در
این نقطه صفر است. هر چه مینیمم محلی از مرکز دورتر باشد مقدار تابع در
آنجا بیشتر است.
برای حل این مسئله توسط Genetic Algorithm ابتدا
ما باید یک جمعیت اولیه (Initial population) را تهیه کنیم. معمولترین روش
برای تهیه این جمعیت اولیه روش random است. مثلاً در این مثال 20 زوج مرتب
x2,x1 را به صورت تصادفی در فضای جستجو انتخاب میکنیم. که این نقاط در
واقع جمعیت اولیه را تشکیل میدهند.
به نمایش هر یک از جوابهای
مسئله کروموزوم (Chromosome) میگویند. هر کروموزوم یک نقطه را در فضای
جستجو نشان میدهد. برای مثال مینیمم، میتوان هر کروموزوم را به صورت زیر
نشان داد. در این مثال هر کروموزوم به دو قسمت تقسیم شده است که قسمت اول
مربوط به متغیر x1 و قسمت دوم مربوط به متغیر x2 میباشد. برای استفادهی
کامپیوتری باید هر یک از متغیرهای x2,x1 را به صورت binary نشان دهیم. که
در شکل برای هر کدام یک array8 بیتی در نظر گرفته شده است. به هر یک از این
بیتها، ژن گویند.
X2 X1
تابع سازگاری(FitnessFunction)
Fitness Function معیاری است برای درجهی سازگاری یک کروموزم. یعنی هر چه
درجهی سازگاری یک کروموزوم بهتر باشد، آن کروموزوم شانس بیشتری برای بقا و
تولید مثل دارد. در این مثال ساده Fitness Function خود تابع است و هر چه
مقدار آن برای یک کروموزوم کمتر باشد، آن کروموزوم شانس بیشتری برای بقا و
تولید مثل دارد. پس از اینکه Fitness هر کروموزوم مشخص شده، باید تعدادی از
جوابها را به عنوان والدین (parents) برای تولید نسل بعد انتخاب کرد. این
انتخاب با روشهای مختلفی انجام میشود. یکی ازمعمولترین روشها آن است که
در آن، شانس انتخاب شدن هر کروموزوم به عنوان parent متناسب است با درجهی
Fitness آن کروموزوم. یعنی کروموزومهایی که Fitness بهتری دارند به همان
نسبت شانس بیشتری برای انتخاب شدن به عنوان parent دارند. پس ازآنکه
parentها انتخاب شدند با اپراتورهای زیر نسل بعدی ایجاد میشوند.
1)
Elitism(نخبهگزینی): بهترینهای هر نسل با توجه به درجه Fitnessشان
مستقیماً به نسل بعدی منتقل میشوند. این کار برای آن است که مطمئن باشیم
بهترین جواب ما در نسل بعدی نسبت به نسل قبل بدتر نشود.
2)Corss-over:
هدف از Cross-over تولید فرزندان (Offspring) از دو parent است در طی این
فرایند بعضی از ژنهای دو parent با هم عوض میشوند. تضمینی نیست که درجهی
Fitness فرزندان بهتر از والدین باشد. در واقع هدف از Cross-over فقط
تغییر دادن جوابها و حرکت در فضای جستجو است.
بعضی از نمونههای مختلف Cross-over را در شکل بالا مشاهده میکنید.
Mutation(جهش ژنتیکی)
در
mutation بعضی از ژنهای یک کروموزوم عوض میشود. در واقع با این کار
گوناگونی ژنتیکی یک جمعیت افزایش پیدا میکند و از همگرایی به جوابهای
نادرست جلوگیری میشود. Mutation معمولاً در کروموزومهایی اتفاق میافتد
که درجه Fitness خوبی ندارند. چون اگر در جوابهای خوب اتفاق بیافتد ممکن
است درجهی Fitness آنها را کاهش دهد. بعضی از نمونههای مختلف mutation را
در شکل میبینید.
به همین صورت نسلهای بعدی با استفاده از
اپراتورهای Mutation, Cross-over ,Elitism از نسل قبل ایجاد میشود و در
نهایت جواب ما به یک جواب بهینه میل میکند.
Genetic Algorithm کاربردهای زیادی درمهندسی نفت و بخصوص در حل مسائل بهینهسازی دارد. که یک مثال ساده را بررسی میکنیم.
این
میدان نفتی را در نظر بگیرید. فرض کنید 5 تا چاه داریم که با دایرههای
سیاه مشخص شدهاند. نقاط x1تا x5 نشان دهندهی مکانهای منتخب برای water
injection میباشند.
مسئلهی بهینهسازی که در اینجا مطرح است این
است که injection rate در هر یک از نقاط x1 تا x5 چقدر باشد تا در نهایت
ماکزیمم تولید از کل میدان را داشته باشیم. به مقدار تولید کل میدان NPV
(یا Net present value) نیز گویند. برای هر یک از چاههای تزریقی، (یعنی
نقاط x1 تا x5) میتوانیم rateای بین 0 تا یک مقدار ماکزیمم (مثلاً Day/bbl
20000) در نظر بگیریم. در این صورت متغیرها روی یک فضای پیوسته تعریف
میشوند که میتوان مسئله را با روشها Classical optimization حل نمود. ولی
اگر چاهها، حالت تزریق یا عدم تزریق داشته باشند یا آنکه فقط بتوان با چند
rate مشخص تزریق کرد؛ مثلاً (0, 5000, 10000, 15000, 20000 Day/bbl) در
اینصورت متغیرها روی یک فضای گسته قرار میگیرند. این فضای گسسته نه تنها
مسئله را ساده نمیکند بلکه بر عکس کاملاً مسئله را پیچیده میکند. زیرا
نمیتوان آن را با روشهای مؤثر Classical Optimization حل نمود. از ریاضیات
گسسته به یاد داریم که برای مسئلهی تزریق با عدم تزریق 5 چاه تعداد کل
تعداد حالات ممکن 25 حالت است. در این Case تعداد حالات، محدود است و
میتوان مسئله را به سادگی با محاسبهی N.P.V درتمام حالات ممکن حل نمود.
ولی این حالت را در نظر بگیرید. فرض کنید 25 نقطه دارای پتانسیل انتخاب شدن
برای تزریق وجود دارد و ما حداکثر میتوانیم 4 تا از این نقاط را به عنوان
چاه تزریقی انتخاب کنیم. در این حالت، باید 15276 حالت را بررسی کنیم. و
اگر تعداد ماکزیمم چاههایی را که میتوانیم برای تزریق انتخاب کنیم، از 4
به 6 افزایش دهیم، تعداد حالات موجود به 245506 حالت میرسد. حتی در این
حالت هم با روشهای مدرن محاسباتی میتوان مسئله را حل کرد. البته به شرطی
که برای هر یک از حالات، بتوان NPV را به راحتی بدست آورد. اما در عمل برای
بدست آوردن NPV باید از 3D-Simulator ها استفاده کنیم که بسیار زمان
براست.
پس به کارگیری روشهای جدیدتر مانند Genetic Algorithm امری
ضروری به نظر میرسد. حالا یک حالت ساده از مثال قبل را در نظر بگیرید. فرض
کنید دو نقطه برای injection داریم که هر یک از این نقاط میتواند با 20
rate مختلف تزریق شود. (,3000,2000,1000,0 ... تا 20000 Day/bbl)
در
این شکل مقدار NPV را به ازای rateهای مختلف تزریق در نقاط 1و 2 میبینیم.
ارتفاع هر نقطه روی صفحه، از صفحهی x1-x2 میزان NPV میدان را نشان
میدهد. توجه کنید که افزایش rateهای چاههای 1و 2 اثر بسیار پیچیده و غیر
قابل پیشبینی روی NPV دارند. این سطح Multimodal است، یعنی برآمدگیها یا
Peakهای زیادی دارد. مثلاً Peak B, Peak A
که البته همانطور که میبینید Peak A جواب بهینهی مسئله است زیرا مقدار NPV در این نقطه ماکزیمم است.
هیچ
روش بهینهسازی وجود ندارد که تضمین کند Peak A به عنوان جواب مسئله یافته
شود. بجز آنکه تمام حالات مختلف بررسی شود که عملاً همانطور که گفتیم
امکانپذیر نیست. روش بسیار قدرتمندی که در این گونه مسائل موفقیت زیادی را
کسب کرده، الگوریتم ژنتیک است. Genetic Algorithm با انتخاب N نقطه برای
جستجو روی این سطح، شروع به کار میکند. که هر نقطه به صورت مؤثری در
محدوده خود، عملیات جستجو را انجام میدهد.
میتوانیم این جمعیت از
نقاط را به صورت برادههای آهن در نظر بگیریم که روی یک صفحه پخش شدهاند.
Peakهای روی سطح مانند آهنربا عمل میکنند. هر چه ارتفاع Peak بیشتر باشد،
قدرت جذب آن بیشتر است. در طول فرایند جستجو، هر یک از برادهها به
نزدیکترین Peak، که آن را جذب میکند، جذب میشود. اگر تعدادی Peak با قدرت
جذب یکسان داشته باشیم، حداقل چند تا از برادهها به سمت هر Peak جذب
میشوند. اما اگر یکی از Peak ها به نسبت بقیه، قدرت جذب بسیار بیشتری
داشته باشد، (مثلاً در اینجا Peak A) تمام نقاط را به سمت خود جذب میکند و
جواب بهینه برای مسئله بدست میآید.
مقدمه ای بر سیستم های فازی وکنترل فازی
چرا سیستمهای فازی
واژه
«فازی» در فرهنگ لغت آکسفورد بصورت «مبهم، گنگ، نادقیق، گیچ، مغشوش، درهم و
نامشخص» تعریف شده است. که در اینجا از همان واژه «فازی» استفاده میکنیم.
سیستمهای فازی، سیستمهایی هستند با تعریف دقیق و کنترل فازی نیز نوع
خاصی از کنترل غیرخطی میباشد که آن هم دقیقاً تعریف میگردد. این مطلب
مشابه کنترل و سیستمهای خطی میباشد که واژه خطی یک صفت فنی بوده که حالت و
وضعیت سیستم و کنترل را مشخص میکند. چنین چیزی در مورد واژه فازی نیز
وجود دارد. اساساً گرچه سیستمهای فازی پدیدههای غیرقطعی و نامشخص را
توصیف میکنند، با این حال خود تئوری فازی یک تئوری دقیق میباشد. در این
متن، دو نوع توجیه برای تئوری سیستمهای فازی وجود دارد:
1)دنیای واقعی
ما بسیار پیچیدهتر از آن است که بتوان یک توصیف و تعریف دقیق برای آن
بدست آورد، بنابراین باید یک توصیف تقریبی یا همان فازی که قابل قبول و
قابل تجزیه و تحلیل باشد، برای یک مدل معرفی شود.
2)با حرکت ما بسوی عصر اطلاعات، دانش و معرفت بشری بسیار اهمیت پیدا میکند. بنابراین ما به فرضیهای نیاز داریم که بتواند دانش بشری را به شکلی سیستماتیک فرموله کرده و آن را به همراه سایر مدلهای ریاضی در سیستمهای مهندسی قرار دهد.
توجیه
اول گرچه درست است، با این حال طبیعت واحدی را برای تئوری سیستمهای فازی
مشخص نمیکند. در حقیقت تمامی نظریههای علوم مهندسی، دنیای واقعی را به
شکلی تقریبی، توصیف میکنند. بعنوان مثال در عالم واقعی تمامی سیستمها
بصورت غیرخطی میباشند ولی تقریباً تمامی مطالعات و بررسیها بر روی
سیستمهای خطی میباشد. یک تئوری مهندسی خوب از یکسو باید بتواند مشخصههای
اصلی و کلیدی دنیای واقعی را توصیف کرده و از سویی دیگر قابل تجزیه تحلیل
ریاضی باشد. بنابراین از این جنبه، تئوری فازی تفاوتی با سایر تئوریهای
علوم مهندسی ندارد.
توجیه دوم مشخصه واحدی از سیستمهای فازی را توصیف
کرده و وجود تئوری سیستمهای فازی را به عنوان یک شاخه مستقل در علوم
مهندسی توجیه میکند. بعنوان یک قاعده کلی یک تئوری مهندسی خوب باید قادر
باشد از تمامی اطلاعات موجود به نحو موثری استفاده کند.
در سیستمهای
عملی اطلاعات مهم از دو منبع سرچشمه میگیرند. یکی از منابع افراد خبره
میباشند که دانش و آگاهیشان را در مورد سیستمهای با زبان طبیعی تعریف
میکنند. منبع دیگر اندازهگیریها و مدلهای ریاضی هستند که از قواعد
فیزیکی مشتق شدهاند. بنابراین یک مسئله مهم ترکیب این دو نوع اطلاعات در
طراحی سیستمها است. برای انجام این ترکیب سوال کلیدی این است که چگونه
میتوان دانش بشری را در چهارچوبی مشابه مدلهای ریاضی فرموله کرد. به عبارت
دیگر سوال اساسی این است که چگونه میتوان دانش بشری را به یک فرمول ریاضی
تبدیل کرد. اساساً آنچه که یک سیستم فازی انجام میدهد، همین تبدیل است.
برای اینکه بدانیم این تبدیل چگونه صورت میگیرد، ابتدا باید بدانیم
سیستمهای فازی، چگونه سیستمهایی هستند.
سیستمهای فازی چگونه سیستمهایی هستند؟
سیستمهای
فازی، سـستمهای مبتنی بر دانش یا قواعد میباشند. قلب یک سیستم فازی یک
پایگاه دانش بوده که از قواعد اگر ـ آنگاه فازی تشکیل شده است. یک قاعده
اگرـ آنگاه فازی یک عبارت اگر ـ آنگاه بوده که بعضی کلمات آن بوسیله توابع
تعلق پیوسته مشخص شدهاند.یک سیستم فازی از مجموعهای از قواعد اگرـ آنگاه
فازی ساخته می شود.
بطور خلاصه، نقطه شروع ساخت یک سیستم فازی بدست
آوردن مجموعهای از قواعد اگرـ آنگاه فازی از دانش افراد خبره یا دانش حوزه
مورد بررسی میباشد. مرحله بعدی ترکیب این قواعد در یک سیستم واحد است.
سیستمهای فازی مختلف از اصول و روشهای متفاوتی برای ترکیب این قواعد
استفاده میکنند.
بنابراین سوال اساسی این است، چه نوع سیستمهای فازی معمولاً استفاده میشود؟
در کتب و مقالات معمولاً از سه نوع سیستم فازی صحبت به میان میآید:
1ـ سیستمهای فازی خالص،
2ـ سیستمهای فازی تاکاگیـسوگنو و کانگ (TSK)
3ـ سیستمهای با فازیساز و غیرفازیساز
سیستمهای فازی کجا و چگونه استفاده میشوند؟
سیستمهای فازی امروزه در طیف وسیعی از علوم و فنون کاربرد پیدا کردهاند، از کنترل، پردازش سیگنال، ارتباطات، ساخت مدارهای مجتمع و سیستمهای خبره گرفته تا بازرگای، پزشکی، دانش اجتماعی و... با این حال بعنوان یکی از مهمترین کاربردهای آن حل مسائل و مشکلات کنترل را میتوان بیان کرد. بنابراین، خود را بر روی تعدادی از مسائل کنترل که سیستمهای فازی نقش عمدهای را در آن بازی میکنند، متمرکز مینماییم. سیستمهای فازی را میتوان بعنوان کنترلکننده حلقه باز و کنترل کننده حلقه بسته مورد استفاده قرار داد. هنگامی که بعنوان کنترلکننده حلقه باز استفاده میشود، سیستمفازی معمولاً بعضی پارامترهای کنترل را معین کرده و آنگاه سیستممطابق با این پارامترهای کنترل کار میکند. بسیاری از کاربردهای سیستم فازی در الکترونیک به این دسته تعلق دارند. هنگامی که سیستم فازی بعنوان یک کنترلکننده حلقه بسته استفاده میشود، در این حالت خروجیهای فرایند را اندازهگیری کرده و بطور همزمان عملیات کنترل را انجام میدهد. کاربردهای سیستمفازی در فرایندهای صنعتی به این دسته تعلق دارند.
زمینههای تحقیق عمده در تئوری فازی
منظور
ما از تئوری فازی، تمام تئوریهایی است که از مفاهیم اساسی مجموعههای
فازی یا توابع تعلق استفاده میکنند. تئوری فازی را به پنج شاخه عمده
میتوان تقسیم کرد.
1ـ ریاضیات فازی، که در آن مفاهیم ریاضیات کلاسیک با جایگزینی مجموعههای فازی یا کلاسیک توسعه پیدا کرده است.
2ـ
منطق فازی و هوش مصنوعی، که در آن منطق کلاسیک تقریبهایی یافته و
سیستمهای خبره براساس اطلاعات و استنتاج تقریبی توسعه پیدا کرده است.
3ـ سیستمهای فازی که شامل کنترل فازی و راهحلهایی در زمینه پردازش سیگنال و مخابرات میباشند.
4ـ عدم قطعیت و اطلاعات، که انواع دیگری از عدم قطعیت را مورد تجزیه و تحلیل قرار می دهد
5ـ تصمیمگیریهای فازی که مسائل بهینهسازی را با محدودیتهای ملایم در نظر میگیرد.
البته این پنج شاخه مستقل از یکدیگر نبوده و به شدت به هم ارتباط دارند.
بعنوان مثال کنترل فازی از مفاهیم ریاضیات فازی و منطق فازی استفاده میکند.
از
نقطه نظر عملی، عمده کاربردهای تئوری فازی بر روی کنترل فازی متمرکز شده
است. گرچه سیستمهای خبره فازی نیز در زمینه تشخیص پزشکی وجود دارند. بدلیل
اینکه تئوری فازی هنوز چه از نظر تئوری و چه از نظر کاربرد در ابتدای راه
بسر میبرد، انتظار داریم کاربردهای عملی بسیاری در آینده پیدا کند. تئوری
فازی زمینه گستردهای داشته که موضوعات تحقیق زیادی را در اختیار ما قرار
میدهد.
تاریخچه مختصری از تئوری و کاربردهای فازی
دهه 1960: آغاز تئوری فازی
تئوری فازی بوسیله پروفسور لطفیزاده در سال 1965 در مقالهای به نام
«مجموعههای
فازی» معرفی گردید. قبل از کار بر روی تئوری فازی لطفیزاده یک شخص برجسته
در تئوری کنترل بود. او مفهوم حالت که اساس تئوری کنترل مدرن را شکل
میدهد، توسعه داد. در اوایل دهه 60 او فکر کرد که تئوری کنترل کلاسیک پیش
از حد بر روی دقت تاکید داشته و از این رو با سیستمهای پیچیده نمیتواند
کار کند. در سال 1962 چیزی را بدین مضمون برای سیستمهای بیولوژیک نوشت :
«ما اساساًَ به نوع جدیدی ریاضیات نیازمندیم، ریاضیات مقادیر مبهم یا فازی
که توسط توزیعهای احتمالات قابل توصیف نیستند». پس از آن وی ایدهاش را در
مقاله «مجموعههای فازی» تجسم بخشید. با پیدایش تئوری فازی، بحث و جدلها
پیرامون آن نیز آغاز گردید. بعضیها آن را تائید کرده و کار روی این زمینه
جدید را شروع کردند و برخی دیگر نیز این ایراد را وارد میکردند که این
ایده برخلاف اصول علمی موجود میباشد. با این حال بزرگترین چالش از ناحیه
ریاضیدانانی بود که معتقد بودند تئوری احتمالات برای حل مسائلی که تئوری
فازی ادعای حل بهتر آن را دارد، کفایت میکند. بدلیل اینکه کاربردهای علمی
تئوری فازی در ابتدای پیدایش آن مشخص نبود، تفهیم آن از جهت فلسفی کار
مشکلی بود و تقریباً هیچیک از مراکز تحقیقاتی تئوری فازی را بعنوان یک
زمینه تحقیق جدی نگرفتند.
با وجودی که تئوری فازی جایگاه واقعی خود را
پیدا نکرد، با این حال هنوز محققینی بودند که در گوشه و کنار دنیا، خود را
وقف این زمینه جدید نمودند و در اواخر دهه 1960 روشهای جدید فازی نظیر
الگوریتمهای فازی، تصمیمگیریهای فازی و... مطرح گردید.
دهه 1970: تئوری فازی رشد پیداکرد و کاربردهای عملی ظاهر گردید
اگر بگوییم پذیرفته شدن تئوری فازی بعنوان یک زمینه مستقل بواسطه کارهای برجسته پروفسور لطفیزاده بوده، سخن به گزاف نگفتهایم. بسیاری از مفاهیم بنیادی تئوری فازی بوسیله زاده در اواخر دهه 60 و اوایل دهه 70 مطرح گردید. پس از معرفی مجموعهای فازی در سال 1965، او مفاهیم الگوریتمهای فازی در سال 1968، تصمیمگیریفازی در سال 1970، و ترتیب فازی را در سال 1971 مطرح نمود. در سال 1973 او مقاله دیگری را منتشر کرد به نام«طرح یک راهحل جدید برای تجزیه و تحلیل سیستمهای پیچیده و فرایندهای تصمیمگیری». این مقاله اساس کنترل فازی را بنا کرد. او دراین مقاله مفهوم متغیرهای زبانی و استفاده از قواعد اگرـ آنگاه را برای فرموله کردن دانش بشری معرفی نمود.
رخداد بزرگ در دهه 1970، تولد کنترلکنندههای فازی برای سیستمهای واقعی بود. در سال 1975، ممدانی و آسیلیان چهارچوب اولیهای را برای کنترلکننده فازی مشخص کردند و کنترلکننده فازی را به یک موتور بخار اعمال نمودند. نتایج در مقالهای تحت عنوان «آزمایش در سنتز زبانی با استفاده از یک کنترل کننده فازی »منتشر گردید. آنها دریافتند که ساخت کنترلکننده فازی بسیار ساده بوده و به خوبی نیز کار می کند.در سال 1978 هولمبلاد و اوسترگارد اولین کنترلکننده فازی را برای کنترلیک فرآیند صنعتی کامل بکار بردند، کنترل فازی کوره سیمان.
در مجموع، پایهگذاری تئوری فازی در دهه 1970 صورت گرفت. با معرفی مفاهیم جدید، تصویر تئوری فازی بعنوان یک زمینه جدید، هر چه بیشتر شفاف گردید. کاربردهای اولیهای نظیر کنترل موتور بخار و کنترل کوره سیمان نیز تئوری فازی را بعنوان یک زمینه جدید مطرح کرد. معمولاً زمینههای تحقیق جدید باید بوسیله مراکز تحقیقاتی و دانشگاهها حمایت گردد. این امر متاسفانه در مورد تئوری فازی اتفاق نیفتاد. ضمن اینکه بسیاری از محققین، زمینه کاری خود را بدلیل عدم پشتیبانی تغییر دادند. این مطالب بویژه در ایالات متحده واقعیت داشت.
دهه 1980: کاربردهای بزرگ
در
اوایل دهه 1980 این زمینه از نقطه نظر تئوریک پیشرفت کندی داشت. دراین مدت
راهحلها و مفاهیم جدید اندکی معرفی گردید، چرا که هنوز افراد کمی داشتند
روی آن کار میکردند. در واقع کاربردهای کنترل فازی بود که هنوز تئوری
فازی را سرپا نگاه داشته بود.
مهندسان ژاپنی (باحساسیتی که نسبت به
فناوریهای جدید دارند) به سرعت دریافتند که کنترلکنندههای فازی بسهولت
قابل طراحی بوده و در مورد بسیاری مسائل میتوان از آنها استفاده کرد.
بدلیل اینکه کنترل فازی به یک مدل ریاضی نیاز ندارد، آن را میتوان در مورد
خیلی از سیستمهایی که بوسیله تئوری کنترل متعارف قابل پیادهسازی نیستند،
بکار برد. در سال 1980 سوگنو شروع به ساخت اولین کاربرد ژاپنی فازی نمود،
(کنترل سیستم تصفیه آب فوجی) در سال 1983 او مشغول کار بر روی یک ربات فازی
شد. ماشینی که از راه دور کنترل شده و خودش به تنهایی عمل پارک را انجام
میداد. در این سالها یاشانوبو و میاموتو از شرکت هیتاچی کار روی سیستم
کنترل قطار زیرزمینی سندایی را آغاز کردند. بالاخره در سال 1987 پروژه به
ثمر نشست. و یکی از پیشرفتهترین سیستمهای قطار زیرزمینی را در جهان بوجود
آورد. در جولای 1987، دومین کنفرانس سیستمهای فازی در توکیو برگزار
گردید. این کنفرانس درست سه روز پس از افتتاح قطار زیرزمینی سندایی آغاز
بکار کرد. در این کنفرانس هیروتا یک روبات فلزی را به نمایش گذارد که
پینگپنگ بازی میکرد، یاماکاوا نیز سیستم فازیای را نشان داد که یک
پاندول معکوس را در حالت تعادل قرار میداد. قبل از این رویدادها، تئوری
فازی چندان در ژاپن شناخته شده نبود ولی پس از آن موجی از توجه مهندسان،
دولتمردان و تجار را فرا گرفت به نحوی که دراوایل دهه 90 تعداد زیادی از
لوازم و وسایلی که براساس تئوری فازی کار میکردند، در فروشگاهها به چشم
میخورد.
دهه 1990: چالشها کماکان باقی است
موفقیت سیستمهای فازی در ژاپن، تعجب محققان را در آمریکا و اروپا برانگیخت. عدهای هنوز به آن خرده میگرفتند. ولی عدهای دیگر از عقیده خود دست برداشته و بعنوان موضوع جدی در دستور کار خود قرار دادند. در فوریه 1992 اولین کنفرانس بینالمللی IEEE در زمینه سیستمهای فازی در ساندیهگو برگزار گردید. این یک اقدام سمبلیک در مورد پذیرفتن سیست..............
...