عملگر ترکیب با استفاده از دو رشته والد دو رشته فرزند به وجود می آورد. برای این کار قسمتی از بیت های والدین در بیتهای فرزندان کپی می شود. انتخاب بیت هایی که باید از هر یک از والدین کپی شوند به روشهای مختلف انجام شده و برای تعیین محل بیت های کپی شده از یک رشته به نام ماسک ترکیب[۵۹] استفاده می شود. در روش رایج تقاطع تک نقطه ای، یک نقطه تصادفی در طول رشته انتخاب شده و والدین در این نقطه به دو قسمت می شوند. هر فرزند با انتخاب تکه اول از یکی از والدین و تکه دوم از والد دیگر به وجود می آید. شکل شماره ‏۳‑۷ شیوه انجام ترکیب تک نقطه ای را نمایش می دهد.
شکل شماره ‏۳‑۷ : نمایش ترکیب تک نقطه ای
عملگر جهش برای به وجود آوردن فرزند فقط از یک والد استفاده می کند. این کار با انجام تغییرات کوچکی در رشته اولیه به وقوع می پیوندد. با استفاده از یک توزیع یکنواخت یک بیت به صورت تصادفی انتخاب و مقدار آن تغییر پیدا می کند. معمولا جهش بعد از ترکیب اعمال می شود.
ترکیب خاصیت جستجوگرانه داشته و می تواند با انجام پرش های بزرگ به محل هایی در بین والدین رفته و نواحی جدیدی را کشف کند و جهش با خاصیت گسترشی می تواند با انجام تغییرات کوچک تصادفی به نواحی کشف شده وسعت ببخشد.
۳-۳-۳-۲ الگوریتم بهینه سازی ازدحام ذرات
الگوریتم بهینه سازی ازدحام ذرات الگوریتمی مبتنی بر جمعیت[۶۰] است. این الگوریتم با الهام گرفتن از حرکت دسته جمعی جمعیتهای طبیعی مانند پرندگان و ماهی ها که به صورت فردی رفتار هوشمندانه ای ندارند ولی رفتار گروهی آنها هوشمندانه است ارائه گردیده است. منظور از ذره در این الگوریتم همان موقعیت کاندیدای جواب مساله است. مسیر جستجوی ذره برای رسیدن به پاسخ، مسیری خطی با ضرایب کاملا تصادفی از حرکت به سمت بهترین نقطه محلی و حرکت به سمت بهترین نقطه جهانی می باشد. حرکت به سمت بهترین نقطه محلی به عبارتی حرکت مبتنی بر دانش خود ذره یا حرکت خودخواهانه ناشی از ادراک ذره بوده و حرکت به سمت بهترین نقطه جهانی، حرکت مبتنی بر رفتار جمعی و یا به عبارتی حرکت صرفا ناشی از رفتار اجتماعی ذره می باشد.
در فرض کنید موقعیت فعلی ذره بوده و موقعیت مرحله بعدی ذره را مشخص می نماید.
شکل شماره ‏۳‑۸ : نمایش حرکت ذره در PSO
موقعیت مرحله بعدی ذره در هر مرحله به کمک معادله(۲) تعیین می شود.

برای دانلود متن کامل این پایان نامه به سایت  fumi.ir  مراجعه نمایید.

معادله (۲)

که در آن میزان انتقال ذره تا مرحله بعدی را نشان داده و به صورت معادله (۳) محاسبه می شود:

معادله (۳)

که در آن نشان دهنده اینرسی حرکت ذره می باشد. عموما و از توزیع یکنواخت به صورت تصادفی تعیین شده و و به صورت برابر معادل ۲ در نظر گرفته می شوند.
در الگوریتم بهینه سازی ازدحام ذرات، تعداد ذره به صورت تصادفی ایجاد می کنیم. برای هر ذره هزینه را در نظر گرفته و بر اساس معادله (۳) ذرات را در هر مرحله به سمت بهینگی حرکت می دهیم. در مرحله اول را بهترین ذره انتخاب می کنیم. پس از حرکت دادن ذره ها چک می کنیم موقعیت جدید از بهترین نقطه محلی قبلی بهتر شده است. بهترین نقطه محلی را به موقعیت جدید تبدیل می کنیم (موقعیت را به روز رسانی می کنیم) در غیر اینصورت وضعیت قبلی را حفظ می کنیم. به همین ترتیب برای بهترین نقطه جهانی بهترین نقطه در مجموعه داده شده ذرات را در نظر می گیریم. همین ترتیب مراحل را ادامه می دهیم تا به یک شرط توقف مثلا به هدف خاصی یا تعداد ذره مشخصی برای حرکت برسیم.
به صورت کلی می توان این الگوریتم را به صورت شبه کد نمایش داد:
جدول شماره ‏۳‑۴ : شبه کد الگوریتم ازدحام ذرات

For each particle
{
Initialize particle
}
Do until maximum iterations or minimum error criteria
{
For each particle