تیون کردن کنترلر PID با کمک الگوریتم ذرات PSO در متلب
تیون کردن کنترلر PID با کمک الگوریتم ذرات PSO در متلب :پروژه متلب
پروژه متلب
بررسی سابقه موضوع طراحی کنترل کننده
پروژه متلب روش های دیگری جهت تعیین پارامترهای کنترل کننده وجود دارد که از آن جمله می توان به زیگلر نیکولز اشاره نمود.
لازم به توضیح است در این تحقیق از روشهای سیستماتیک خودداری گردیده و بر اساس الگوریتم های رقابتی و انبوه ذرات این تحقیق صورت پذیرفته است.
روش های دیگری چون گرید سرچ بعلت زمان بر بودن منتفی می باشد.
طراحی کنترل کننده PID با استفاده از الگوریتم ژنتیک GA و الگوریتم انبوه ذرات PSO
فرضیات اولیه
الف- چرا ما بدنبال روشهای غیر سیستماتیک جهت تعیین پارامترهای PIDمی گردیم؟
ب- آیا الگوریتم های تکاملی جهت حل اینگونه مسایل مفید می باشند؟چرا؟
ج – آیا این روش قابل ارتقا بوده و به طرق دیگر نیز قابل پیاده سازی می باشد؟
در اینگونه مسایل راه حل قطعی جهت رسیدن به جواب از طریق سیستماتیک وجود ندارد، اما تا حدودی ما را به آن نزدیک می کند،پس از نزدیک شدن به پاسخ باید به صورت سعی و خطا نسبت به بهبود جواب از طریق شهودی اقدام نمود.(روش زیگلرنیکولز)
اما الگوریتم های تکاملی بدون نیاز به روابط ریاضی و فرمول اقدام به حل مسایل در مدت زمان کوتاه می نمایند.
این گونه از روش ها قابل ارتقا هستند: مانند GA-PSO-ACOو… که روز به روز ارتقا و رفته رفته کشف گردیده اند.(مثالی از بحث ارتقا در فضای سرچ PSO برای درک بهتر ذکرخواهد گردید.)
طراحی کنترل کننده PID با استفاده از الگوریتم ژنتیک GA و الگوریتم انبوه ذرات PSO
PSO(Particle Swarm Optimazation)
پروژه متلب درسال ۱۹۹۵ توسط جیمزکندی و راسل ابرهارت معرفی گردید. PSOروش بهینه سازی
آنها درابتدا قصد داشتند که با بهره گیری از مدل های اجتماعی و روابط موجود اجتماعی،نوعی از هوش محاسباتی را بوجود بیاورندکه به توانایی های فردی ویژه نیازی نداشته باشد. کار آنان ،منجر به ایجاد الگوریتمی
شد.PSO قوی برای بهینه سازی ،بنام الگوریتم بهینه سازی ذرات یا
این روش از عملکرد دسته جمعی گروههای حیوانات مانند پرندگان و ماهی ها اقتباس شده است.
عملکرد انبوه ذرات
فضای جستجو(سه بعدی)
X(t) موقعیت ذره
V(t) سرعت ذره
XLbest(t) بهترین موقعیت هرذره
X(t) موقعیت ذره
V(t) سرعت ذره
Xlbest(t) بهترین موقعیت هرذره
Xgbest(t)درجمعیت بهترین موقعیت هرذره
طراحی کنترل کننده PID با استفاده از الگوریتم ژنتیک GA و الگوریتم انبوه ذرات PSO
فرمول و الگوریتم کار مربوط به PSO
کار الگوریتم انبوه ذرات اقتباس شده از حرکت جمعی و گروهی موجودات می باشد.
Particle swarm optimization (PSO) is a population based stochastic optimization technique developed by Dr. Eberhart and
Dr. Kennedy in 1995, inspired by social behavior of bird flocking or fish schooling.
مراحل کار PSO برای تعیین ضرایب در این تحقیق
- تشکیل یک ماتریس ۶*۷۲۹(با توجه به یک مقاله انگلیسی که ذکر کرده است بهترین راه سرچ فضا تقسیم بندی آن می باشد، این جانب با توجه به داشتن ۶ ذره –بعد- اقدام به تقسیم بندی هر بعد به سه قسمت نموده ام ودر مجموع ۷۲۹فضا داریم که یک ذره از عمد برای سرچ بهتر فضا در داخل هرفضا قرار داده ایم.
۶^۳=۷۲۹
- پروژه متلب تعیین میزان برازندگی در تابع هزینه(قرار دادن پارتیکل های ۶ بعدی در تابع هزینه)
- بدست آوردن بهترین (کمترین) هزینه -G global best(بهترین نفر گروه)
- آپدیت سرعت بر اساس فرول مربوطه
- آپدیت موقعیت
- تکرار این روند تا طی شدن یکی از شرایط توقف (در این تحقیق طی شدن ۲۰ مرحله در نظر گرفته شده است)
دیدگاه ها