721 likes | 1.74k Views
نگاهی به الگوریتم بهینه سازی ازدحام ذرات Particle Swarm Optimization. ارائه دهنده: معین اوحدی کارشک اردیبهشت 1390 دانشگاه فردوسی مشهد. فهرست. الگوریتم بهینه سازی ذرات چیست؟ ابداع کنندگان مفاهیم اولیه فلوچارت الگوریتم بهینه سازی ذرات نحوه بروز رسانی مقادیر هر ذره
E N D
نگاهی به الگوریتم بهینه سازی ازدحام ذراتParticle Swarm Optimization ارائه دهنده: معین اوحدی کارشک اردیبهشت 1390 دانشگاه فردوسی مشهد
فهرست • الگوریتم بهینه سازی ذرات چیست؟ • ابداع کنندگان • مفاهیم اولیه • فلوچارت الگوریتم بهینه سازی ذرات • نحوه بروز رسانی مقادیر هر ذره • پارامتر های الگوریتم بهینه سازی ذرات • مزایای الگوریتم بهینه سازی ذرات • کاربرد های الگوریتم بهینه سازی ذرات • مقایسه ی PSO با الگوریتم های تکاملی • مثالی از حرکت ذرات • مراجع
الگوریتم بهینه سازی ذرات چیست؟ الگوریتم بهینه سازی ذرات (PSO) یک الگوریتم بهینه سازی فرا اکتشافی است که از حرکت گروهی پرندگان (و دیگر حیواناتی که به شکل گروهی زندگی می کنند) الگو گرفته است. در این الگوریتم هر پاسخ مساله به صورت یک ذره که دارای یک مقدار و همچنین میزان تناسب است مدل می شود.
ابداع یک ایده الگوریتم بهینه سازی ذرات اولین بار توسط Russell EberhartوJames Kennedy در سال 1995 در این مقاله ارائه شد: Kennedy, J. and Eberhart, R., “Particle Swarm Optimization,” Proceedings of the IEEE International Conference on Neural Networks, Perth, Australia 1995, pp. 1942-1945.
مفاهیم اولیه • هر ذره در حال جستجو براي نقطة بهينه است. • هر ذره در حال جابجايي است (در غير اينصورت نميتواند جستجو كند!) • به دليل اين جابجايي، داراي سرعت است. • PSO بر مبنای حرکت و هوش ذرات کار می کند. • PSO مفهوم تعامل اجتماعی را برای حل مسائل بهینه سازی به کار می گیرد. • ذرات (پاسخ های مساله) در فضای جستجو حرکت می کنند.
مفاهیم اولیه • هر ذره در هر مرحله، موقعيتي را كه بهترين نتيجه را در آن داشته به خاطر ميسپارد. (بهترين موقعيت فردي هر ذره) • ذرات در گروه ذرات با هم همياري ميكنند. ذرات اطلاعاتي كه دربارة موقعيتي كه در آن هستند را با هم تبادل ميكنند. • حرکت هر ذره به سه عامل بستگی دارد: 1- موقعیت فعلی ذره. 2- بهترین موقعیتی که تا کنون ذره داشته است. (Pbest) 3- بهتریم موقعیتی که کل مجموعه ی ذرات تا کنون داشته اند. (Gbest)
الگوریتم بهینه سازی ذرات محاسبه ی تابع تناسب جهش ذرات بروز رسانی Pbest تولید ذرات اولیه بروز رسانی مقدار ذره پاسخ: Gbest بروز رسانی Gbest بروز رسانی سرعت
نحوه بروز رسانی مقادیر موقیت جدید هر ذره از رابطه ی زیر بدست می آید: present[] = present[] + v[] در این جا آخرین جمله سرعت (میزان تغییر مکان ذره) را مشخص می کند. این عبارت این گونه محاسبه می شود: v[] = c0 *v[] + c1 * rand() * (pbest[] - present[]) + c2 * rand() * (gbest[] - present[]) تابع rand()مولد عدد تصادفی در بازه ی [0,1]و c1 و c2 ”ثوابت اثر“ نامیده می شوند. جابجايي فعلي اثر حافظة ذره اثر گروه ذرات
پارامتر های الگوریتم بهینه سازی ذرات در اجرای الگوریتم PSO پارامتر های زیادی دخیل هستند که تنظیم مناسب آن ها عملکرد الگوریتم را شدیدا تحت تاثیر قرار می دهد. این پارامتر ها به این شرح هستند: تعداد ذرات: نشان داده شده است كه 10-50 معمولاً كافي ميباشد. C1: اهميت مربوط به بهترين وضعیت هر ذره. C2: اهميت مربوط به بهترين وضعیت همسايگي ها. معمولاً C1+C2 = 4. فقط بدلايل تجربي انتخاب شده است. حد اکثر مقدار سرعت: خيلي كم- سرعت پايين خيلي زياد- ناپايدار
مزایای الگوریتم بهینه سازی ذرات PSO مزایای بسیاری نسبت به دیگر روش های بهینه سازی دارد. از جمله: • يك روش مرتبة صفر است و نيازي به عمليات سنگين رياضي مثل گراديانگيري احتياج ندارد. • يك روش مبتني بر جمعيت است. (استفاده از محاسبات توزیع شده) • بار محاسباتی قابل قبولی دارد. • همگرایی نسبتا سریعی دارد.
کاربرد های الگوریتم بهینه سازی ذرات الگوریتم PSO قابلیت حل اکثر مسائل بهینه سازی را دارا است. از آن جمله می توان به موارد زیر اشاره کرد: • آموزش شبكه عصبي • بهينهسازي توابع ریاضی • بازشناسي الگو • مسیریابی • کنترل حرکت روبات ها
مقایسه ی PSO با الگوریتم های تکاملی • بر خلاف الگوریتم های تکاملی در PSO عملیات انتخاب وجود ندارد. این بدان معناست که هیچ یک از ذرات (پاسخ ها) حذف نمی شوند و تنها مقدار هر ذره تغییر می کند. • PSO از اصل بقای نسل استفاده نمی کند. • عمل ترکیب جواب ها (Cross Over) در PSO وجود ندارد. • در PSO نیز عمل جهش(Mutation)به نوعی وجود دارد. • می توان در PSO نسبت بین جستجوی محلی و سراسری را به کمک وزن ها مشخص کرد.
مراجع • M. S. Arumugam and M. V. C. Rao, “On the improved performances of the particle swarm optimization algorithms with adaptive parameters, cross-over operators and root mean square (RMS) variants for computing optimal control of a class of hybrid systems,” Applied Soft Computing Journal, vol. 8(1), pp. 324–336, 2008 • Ai, The Jin, and Kachitvi chyanukul, V., Recent Advances in Adaptive Particle Swarm Optimization Algorithms, Proceedings of the Korea Institute of Industrial Engineering Conference, Seoul, Korea, November 2008 • Ai, The Jin, and Kachitv ichyanukul, V., Adaptive Particle Swarm Optimization Algorithms, Proceedings of the 4th International Conference on Intelligent Logistics Systems(ILS2008), Shanghai, China August 2008 • D. Zhang, Z. Guan and X. Liu, “An adaptive particle swarm optimization algorithm and simulation,” in Proc. IEEE International Conference on Automation and Logistics 2007, pp. 2399–2402, 2007 • Venter, G. and Sobieski, J., “Particle Swarm Optimization,” Structural Dynamics, and Materials Conference, Denver, CO., April 2002 • Kennedy, J. and Eberhart, R., Swarm Intelligence, Academic Press, 1st ed., San Diego, CA, 2001
قدردانی با سپاس فراوان از: شما شنوندگان گرامی