بخشی از مقاله
خلاصه
بهینه سازی سازه، تلاشی برای پیدا کردن سازه ای با کمترین وزن ممکن بطوریکه، کلیه محدودیتهای طراحی پیش بینی شده را تامین نماید، می باشد. با توجه به کاربرد وسیع سازه های خرپایی، بهینه سازی این سازه ها ازگذشته مورد توجه محققین قرار داشته است .در این تحقیق بهینهسازی وزن سازهی خرپا تحت قیود تنش، سطح مقطع تحت حالت بارگذاری استاتیکی، بررسی شده است. از جمله روشهای مورد استفاده درزمینه بهینه سازی ، روش الگوریتم ژنتیک ، اجتماع مورچگان، اجتماع زنبورها و اجتماع ذرات می باشد. این چهار روش در تحقیق حاضر برای بهینه سازی وزن خرپا مورد استفاده قرار گرفته و نتایج حاصل با همدیگر مقایسه شده اند. نتایج نشان می دهد که الگوریتم تکاملی کلونی زنبورها از کارایی مناسب تری نسبت به سه الگوریتم دیگر می باشد..
کلمات کلیدی: بهینه سازی، الگوریتم ژنتیک، کلونی زنبورها ، اجتماع ذرات، اجتماع مورچگان
1. مقدمه (با 2 خط 9pt فاصله از کلمات کلیدی)
به طورکلی، بهینه سازی خرپاها شامل بهینه سازی اندازه، شکل(هندسه)، توپولوژی و یا ترکیبی از آنها می باشد. در بهینه سازی وزن خرپاها، سطح مقطع المان های خرپا مورد بررسی قرار گرفته و مختصات گره های خرپا ثابت فرض می شود1]و .[2 بهینه سازی سازه های خرپایی به کمک الگوریتم ژنتیک برای اولین بار توسط گلدبرگ و سامتانی [3]در سال 1986 مطرح گردید. و بعد از ان با گسترش الگوریتم های تکاملی مورد توجه محققین زیادی قرار گرفته است.[7-4] استفاده از الگوریتم های تکاملی در حل مسائل مختلف مهندسی از سوی محققین مختلف [9-8] نشان از توانایی این روشها در مسائل مختلف می باشد.
در این تحقیق به بهینه سازی وزن خرپاهای دو بعدی و سه بعدی با توپولوژی ثابت، با استفاده از چهار الگوریتم تکاملی: کلونی زنبورها (BCO)، اجتماع ذرات (PSO)، کلونی مورچگان (ACO) و الگوریتم ژنتیک (GA) می پردازیم. نتایج حاصل از این روشها با نتایج دیگر محققین پیشگام در این زمینه مقایسه می گردد تا نقاط ضعف و قوت هریک از الگوریتم های تکاملی مشخص گردد.
2. معرفی الگوریتم های تکاملی
.1,2 الگوریتم ژنتیک
1 دانشجوی دکتری مهندسی زلزله، پژوهشگاه شاخص پژوه، اصفهان
2 دانشجوی دکتری مهندسی زلزله، پژوهشگاه شاخص پژوه، اصفهان
3 ریاست پژوهشگاه شاخص پژوه ، اصفهان
×دومین همایش ملی پژوهش های کاربردی در »مهندسی عمران، معماری و مدیریت شهری« 2nd National Conference on Applied Researches in Civil engineering, Architecture and Urban planning
الگوریتم ژنتیک جزئی از محاسبات تکاملی است که خود جزئی از هوش مصنوعی می باشد. اولین بار ایده محاسبات تکاملی در سال 1960 توسط گلدبرگ بوجود آمد، نظریه او بعدها توسط دیگر محققان توسعه داده شد.[10] اصول اولیه الگوریتم ژنتیک توسط هلند و همکارانش در دانشگاه میشیگان در سال 1962 ارائه شد..[11]
فرآیند بهینه سازی، با تشکیل مجموعه ای از طرح های پیشنهادی آغاز می شود. اولین مجموعه از طرح های پیشنهادی برای مساله، به صورت تصادفی انتخاب شده و هر یک از طرح ها به عنوان یک جواب بالقوه برای مساله قلمداد می گردند. به هر یک ازاین طرح ها، اصطلاحا کروموزوم و به اولین مجموعه از طرح های پیشنهادی، جمعیت اولیه گفته می شود. پس از تشکیل جمعیت اولیه کلیه طرح ها به کمک یک روش تحلیل سازه مشخص، تحلیل شده و میزان تجاوز هر طرح از محدودیت های طراحی تعیین می گردد تا میزان صلاحیت یا شایستگی هر کروموزوم تعیین شود.
برای دستیابی به این مقصود اگر تابع هدف قبل از تاثیر قیدها باشد، مسئله به شکل زیر بیان می شود:
(1) Minimize f(x)
( )
که در ان m تعداد قیود مسئله می باشد، برای حل مسئله با GA ان را به یک مسئله بهینه سازی نامقید تبدیل می کنیم. برای این منظور از یک سری توابع جریمه بصورت زیر استفاده می کنیم
(2)
که در ان m تعداد قید ها، n تعداد جمعیت و مقدار حداکثر هر قید می باشد. اگر مقدار
در غیر این صورت تابع جریمه ای به شکل زیر تعریف می گردد:
(3)
(4)
ان گاه تابع هدف جریمه شده بصورت زیر اصلاح می شود:
(5)
( )
بزرگتر یا مساوی صفر باشد شرایط ارضا شده است
( ) ( ) {
( )
∑
} ){ ) ( )
پارامتر K با توجه به میزان خطای کروموزوم ها برای تولید نسل بعدی انتخاب می شود و معمولا در اکثر مطالعات، عدد 10 انتخاب می گردد. تواع هدف اصلاح شده دیگری نیز توسط محققین ارائه شده است که شرح ان ها در منابع اورده12]و[13 شده است.
در مرحله بعدی مکانیزم ها و عملگرهای الگوریتم ژنتیک برای تولید نسل جدید وارد عمل می شوند. تولید کروموزوم های فرزند به این قصد انجام می گیرد که با ترکیب ویژگیهای خوب کروموزوم های والد، بتوان فرزندان بهتری نسبت به والدین تولید کرد. اگر کروموزومی، شایستگی کافی در جمعیت نداشته باشد، از جمعیت حذف شده و از بین می رود. پس از انتخاب والدین، عملگرهای همگذری و جهش برای تولید جمعیت جدید بکار گرفته می شوند. عموما عملگر جهش برای ایجاد تنوع و عملگر تولید مثل برای همگراشدن استفاده می گردد.[14] با تشکیل جمعیت جدید روند فوق به کمک جمعیت جدید تکرار می شود تا زمانیکه شرط خاتمه تحقق یابد. شرط خاتمه شرط واحدی نیست و می تواند برای مثال، تعداد معینی از تکرار الگوریتم تعیین شود. روند به تدریج کروموزوم های شایسته تر، جای کروموزوم های نامناسب را در جمعیت می گیرند و رفته رفته، جمعیت به سمت طرح های مطلوب تر و نهایتا طرح بهینه کلی گرایش پیدا می کند.
2,2 الگوریتم کلونی مورچگان
الگوریتم کلونی مورچهها، روشی احتمالی برای حل مسائل محاسباتی است. این روش اولین بار در سال 1992 توسط دوریگو در تز دکترایش مطرح گردید.[16-15] الگوریتم کلونی مورچهها تلاش برای یافتن کوتاهترین مسیر بین منبع غذای و لانه میباشد. همین امر در مسائل بهینه سازی برای یافتن منیمم مقدار مسئله بکار میرود.[17]
مورچهها قادر به تولید مادهی شیمیایی به نام فرومون هستند که باعث تشخیص مسیر پیموده شده میشوند. فرومون ترشح شده بعد از گذشت زمان محدودی تبخیر شده و مسیری که در آن رفتوآمد زیادی صورت گیرد دارای فرومون زیادی میباشد، این امر اساس تصمیمگیری مورچه برای تشخیص کوتاهترین مسیر میباشد.
×دومین همایش ملی پژوهش های کاربردی در »مهندسی عمران، معماری و مدیریت شهری« 2nd National Conference on Applied Researches in Civil engineering, Architecture and Urban planning
در شبیه سازی رفتار مورچه سعی شدهاست تا در حد امکان منطبق بر رفتار واقعی مورچه در طبیعت باشد ولی از عمده تفاوتهای آن میتوان به موارد زیر اشاره نمود:
مورچههای مصنوعی دارای حافظه میباشند.، مورچهها به طور کامل بیبصیرت نمیباشند.، در محیطی زندگی میکنند که زمان در آن گسسته میباشد.
برای توضیح الگوریتم مورچهها عمدتا از مسئله فروشنده دوره گرد ( ( TSP استفاده میشود. مسئله TSP پیدا کردن کوتاهترین فاصله بین n
شهر میباشد. فاصله شهر i از شهر j با نشان داده میشود. اگر تعداد کل مورچهها m فرض شود و تعداد مورچههای موجود در هر شهر در زمان t با
(t) ( i=1,2,…,n) نمایش داده شود داریم: