کاربرد الگوریتم ژنتیک در طراحی و تنظیم کنترل کننده های فازی
در این مطلب می خواهیم مثالی از کاربرد الگوریتم ژنتیک را نشان دهیم.برای این منظور پروژه ای از مرحوم پروفسور ولی الله طحانی (شاگرد پروفسور زاده) را مطرح می کنیم. بلوک دیاگرام کنترل یک سروموتور DC در شکل زیر نشان داده شده است:
می توان برای سادگی معادله دینامیکی فرآیند تحت کنترل را با نرخ نمونه برداری t=0.2sec بصورت گسسته زیر نوشت:
فرضیات مسئله:
ساختار کنترل کننده فازی:
1) ضرایب Scale Factor بصورت زیر می باشد:
2) دستورi ام کنترل کننده بصورت زیر می باشد:
IF e is Ai and ∆e is Bi Then u is Ci
که Ai,Bi,Ci مقادیر زبانی متغیرهای e,∆e,u برای دستور i ام می باشند.فرض کنید رنج تغییرات متغیرهای بازه [-2,2] است.همچنین فرض کنید مقادیر زبانی Ai,Bi,Ci متعلق به مجموعه زیر هستند:
A=B=C={LN,SN,ZE,SP,LP}
3) فرض کنید کنترل کننده متقارن است و دستورات طبق جدول زیر است:
I’Ci=6- ICi
که ICi ها کد مقدار زبانی Ci است.این کدها عبارتنداز:
4) توابع عضویت مقادیر زبانی Ai,Bi,Ci نسبت به مبدا متقارن و پارامتریک هستند.شکل آنها و پارامترهای مربوطه در زیر آمده است:
تابع عضویت مقدار زبانی را بصورت زیر در نظر بگیرید:
ساختار یک دنباله (کروموزم) در الگوریتم ژنتیک:
براساس مطالب فوق،می خواهیم si,di مربوط به توابع عضویت e,∆e,u را همزمان با مقادیر ICi محاسبه کنیم.بنابراین یک دنباله از مجموع پارامتر(ژن)های زیر تشکیل می شود:
بنابراین طول دنباله 26 ژن است.توجه کنید که ICi اعداد صحیح متعلق به مجموعه {1،2،3،4،5} می باشند و siها و diها اعداد حقیقی هستند.
تابع هدف:
چون می خواهیم تابع ضرایب کنترل کننده فازی را برای ورودی پله تنظیم کنیم لذا برای پاسخ شکل زیر تابع هدف را بصورت زیر تعریف می کنیم:
pi دنباله iام جمعیت دنباله ها است.همچنین در رابطه فوق Wi وزن اهمیت ترم مربوطه را نشان می دهد.بدین معنی که چون می خواهیم تابع هدف را بهینه (حداکثر) کنیم،لذا با بالا قرار دادن وزن Wi (مثلا وزن W4) اهمیت و نقش ترم مربوطه (مثلا خطای حالت دائم) بیشتر مورد تاکید است.فاکتورهای MT و ME جهت هم مقیاس سازی ترم های بکارگرفته در تابع هدف است.در این مثال پارامترها را بصورت زیر در نظر بگیرید:
در رابطه تابع هدف P میزان جریمه (Penalty) در نظر گرفته شده است.بدین معنی که پاسخ هایی که یا ناپایدار هستند و یا در فاصله زمانی MT تثبیت نگردند،طبق شکل زیر،میزان جریمه را بصورت زیر در نظر می گیریم:
الگوریتم ژنتیک را با پارامترهای زیر اجرا کرده و پارامترهای بهترین کنترل کننده طراحی شده مشخص کنید.همچنین تابع هزینه بهترین دنباله را رسم کنید تا مطمئن شوید که الگوریتم بسمت بهترین جواب همگرا می شود.
جمعیت دنباله ها P=40
نرخ ترکیب Pc=0.6
نرخ جهش Pm=0.01
8 Comments
رضا
درباره10 سال agoسلام ام فایل این اموزش برای خرید موجود است؟
پاسخAdmin
درباره10 سال agoبله از بالای صفحه قسمت پرداخت هزینه پروژه P12 را انتخاب نمایید.
پاسخ7395amir
درباره9 سال agoسلام ..میتونی در مورد کنترل فازی موتورهای القایی کمکم کنی؟
پاسخAdmin
درباره9 سال agoمشکلاتان چیست؟
پاسخnasrin
درباره8 سال agoسلام لطف ميكنيد نحوه دسترسي به اين فايل را ايميل كنيد ممنون
پاسخAdmin
درباره8 سال agoباسلام
لینک خرید اصلاح گردید.
و یا از قسمت پروژه های انجام شده با Matlab بخش پروژه های متفرقه پروژه شماره P12 را خریداری کنید.
موفق باشید.
پاسخesmaeel
درباره7 سال agoسلام.میشه یک مقدار در مورد Scale Factor توضیح بدید؟
پاسخAdmin
درباره7 سال agoقوانین فازی و توابع عضویت آنها دارای محدوده ای هستند که برای ورودی و خروجی ها تعریف می شوند. این ضرایب برای در رنج قرار دادن ورودی ها و خروجی ها استفاده می شود. برای مثال فرض کنید که هنگام تعریف توابع عضویت برای ورودی، مقدار رنج تغییرات آن را بین +۱ و -۱ تعریف کرده اید ولی در عمل ممکن است که محدوده تغییرات ورودی بیشتر شود. با استفاده از این ضرایب می توانید مقدار ورودی را در محدوده تغییرات مجاز تبدیل کنید.
پاسخ