سمینار درس کنترل پیش بین به نام حضرت دوست سمینار درس کنترل پیش بین استاد : دکتر توحید خواه ارائه: وحید ابوئی زمستان 88
قسمت اول کنترل فازی
استفاده از منطق فازی و سیستم های فازی برای کنترل سیستم های مختلف، باعث ایجاد و گسترش راه کار هائی جدید در جهت بهینه تر کردن فرآیند های کنترلی شده است. این گفته می تواند با در نظر گرفتن عملکرد سیستم های فازی و همچنین توانائی آن ها در ایجاد سیستم های غیر خطی به خوبی اثبات شود. این سیستم ها همچنین دارای معایبی نیز می باشند، بدین صورت که این سیستم های کنترلی دارای محدودیت هایی از جهت آنالیز میباشند که از پیچیدگی بیان ریاضی غیر خطی آن ها نشئت میگیرد.
کنترلر های فازی میتوانند به طرق مختلفی ساخته شوند که تفاوت اصلی همهی آن ها در وابستگی به مدل سیستم و عدم وابستگی به آن میباشد. بر همین مبنا کنترلر های فازی بر دو نوعند، نوع اول برمبنای مدل و نوع دوم مستقل از مدل.
کنترلر بر مبنای مدل کنترلر مستقل از مدل می بایست دینامیک کل سیستم به خوبی مشخص باشد کنترلر مستقل از مدل احتیاجی به دانستن دینامیک سیستم تحت بررسی نیست. البته نمی توان گفت که مستقل مستقل از مدل چرا که در طراحی این کنترلر ها نیز میبایست اطلاعاتی از ورودی و خروجی سیستم موجود باشد که این اطلاعات از آزمایش و یا این که از تجربهی متخصصین آشنا به سیستم به دست میآید.
کنترلر های فازی مستقل از مدل طراحی صحیح و خطای ذهنی طراحی کنترلر های فازی به مانندPID
طراحی صحیح و خطای ذهنی این روش احتمالا اولین تکنیکی است که در طراحی سیستم های فازی مورد استفاده قرار گرفته است. در این روش از اطلاعات متخصصی که سیستم را به صورت دستی کنترل می کرده استفاده میشود بدین صورت که از اطلاعات وی که به صورت تجربی حاصل شده است قواعد فازی کنترلر نوشته میشود.
به صورت کلی در این نوع کنترلر ها در طراحی کنترلر اتوماتیک مورد استفاده قرار نمیگیرند و تنها به عنوان یک کنترلر کمکی برای اپراتور عمل می کنند. موفقیت طراحی این کنترلر ها در موارد متعددی گزارش شده است از جمله کنترل خشک کردن سیمان، مراحل راه اندازی دیگ بخار آب، تولید پودر رخت شوئی، سوزاندن زباله ها و گندزدائی آب.
طراحی کنترلر های فازی به مانندPID در طراحی این کنترلر ها از آزمایشاتی استفاده میشود که در تنظیم پارامتر های PID نیز مورد استفاده قرار میگیرد. همانطور که کنترلر های PID مستقل از مدل میباشند یا اینکه برمبنای مدل ساده ای به مانند پاسخ پلهی سیستم طراحی می شوند، این کنترلر ها نیز بدین گونه میباشند. بدیهی است که بتوانیم معادل با یک کنترلر PID با محدودیت ورودی و خروجی، یک کنترلر فازی طراحی بنمائیم.
روش طراحی کنترلر فازی به صورت PID بدین صورت میباشد که: 1- در ابتدا میبایست یک کنترلر PID بر مبنای روش های ابتدائی به مانند زیگلر نیکلز طراحی کنیم. 2- یک کنترلر فازی برابر با PID طراحی شده ایجاد کنیم. 3- حال تنظیم بیشتر کنترلر فازی را بر اساس آنچه رویت میشود انجام میدهیم.
دو نمونه از کنترلر های فازی
یک کنترلر فازی PID می بایست یک فازی کنترلر با سه ورودی خطا و تغییرات خطا و انتگرال خطا طراحی کنیم که در این صورت تعداد قواعد فازی به شدت زیاد می شود که برای رفع این مشکل آن را به دو بخش PD وI تقسیم میکنند
خلاصه: کنترلر فازی می تواند دقیقاً به صورت کپی از کنترلرPID طراحی شود. به عبارت دیگر کنترلر فازی یک کنترلر PID است که ضرایبش در نقاط کار متفاوت تغییر میکند و این تغییر به گونه ای است که خروجی آن در مواردی که سیستم غیر خطی نیز می باشد به صورت نرم تغییر می کند.
کنترل فازی بر مبنای مدل استفاده از روش تطبیقی استفاده از سنتز مستقیم زمان بندی گین فازی Fuzzy Gain Scheduling
استفاده از روش تطبیقی یادگیری معکوس: اساس طراحی این کنترلر بر مبنای تولید یک مدل معکوس میباشد بدین صورت که در این حالت کنترلر می بایست با اعمال ورودی به سیستم آن را از حالت به حالت ببرد. برای استفاده از این روش فرض بر این است که حالت سیستم قابل اندازه گیری میباشد و در ضمن دینامیک سیستم نیز میبایست گسسته باشد یا اینکه حداقل نمونه برداری شده و با تابع زیر قابل بیان باشد.
که در این حالتK بیانگر زمان گسسته، حالت سیستم و ورودی سیستم میباشد که در این حالتK بیانگر زمان گسسته، حالت سیستم و ورودی سیستم میباشد. حالت سیستم در زمان K+N با رابطهی زیر بیان میشود.
که در این رابطه U، برداری با توالی ورودیها میباشد که در این رابطه U، برداری با توالی ورودیها میباشد. با این بیان و فرض معکوس پذیری F یک نقشهی معکوس سیستم به صورت زیر میباشد. که در این حالت G می تواند با ایجاد بردار توالی ورودی های U ، حالت سیستم را از به در N گام جلوتر منتقل کند.
در راستای ایجادتابع معکوس از سیستم فازی استفاده می شود. که این سیستم فازی با دراختیار داشتن حالت مورد نظر که به عنوان مرجع نیز به حساب میآید و با در نظر گرفتن حالت فعلی سیستم بردار U را به گونه ای ایجاد می کند که سیستم از حالت به حالت برود.
استفاده از روش تطبیقی کنترل فازی تطبیقی مستقیم یا یادگیری ویژه: در این حالت ایجاد کنترلر فازی به صورت آنلاین اتفاق می افتد به عبارتی دیگر به صورت همزمان با عملکرد سیستم، کنترلر فازی به گونه ای اطلاح می شود که فرآیند کنترلی به صورت بهینه پیش رود.
بدیهی است که در این حالت برای حل معادله و یافتن بهینه می بایست با استفاده از روش های عددی اقدام نمود.
خلاصه: استفاده از روش کنترل فازی تطبیقی مستقیم این امکان را فراهم می آورد تا بتوانیم یک کنترلر بهینهی فازی طراحی کنیم. البته ذکر این نکته نیز خالی از لطف نمیباشد که در این حالت نیازمند مدلی از سیستم هستیم که دینامیک های مدل را به خوبی نشان دهد.
استفاده از سنتز مستقیم خطی ساز فیدبکی: این روش برای سیستم های غیر خطی از درجه ی n که به فرم زیر میباشند کاربرد دارد.
این سیستم ها به سیستم های غیر خطی زوجی معروفند این سیستم ها به سیستم های غیر خطی زوجی معروفند. یکی از ویژگی های جالب این دسته از سیستم های غیر خطی این است که اطلاعات توابع f وg می تواند به صورت مستقیم در ایجاد سیگنال کنترلی u به کار رود. بنابر این با این وجود غیر خطی بودن از بین میرود و کنترلر را میتوانیم به کمک روشهای خطی طراحی کنیم.
قانون کنترل در این حالت به صورت زیر میباشد. در این حالت خطای ورودی به سیستم کنترلی برابر خواهد بود با: از طرفی بردار خطاهای حالت به صورت زیر بیان میشوند. و بردار k دینامیک های خطا را نشان میدهد. بر مبنای فرمول قانون کنترل و نیز رابطهی سیستم خواهیم داشت: از طرفی دینامیک های خطا به صورت زیر خواهد بود.
در عمل مدل فازی برای بیان توابع f و g به کار میروند از این معادله چنین اثبات میشود که دینامیک های سیستم حلقه بسته از عناصر بردار K حاصل میشود. لذا انتخاب مناسبی از عناصر k پایداری و همگرائی به را تضمین میکند. در عمل مدل فازی برای بیان توابع f و g به کار میروند به صورت اختصار روند طراحی کنترلر در زیر آورده شده است. 1- طراحی یک مدل فازی اولیه برای سیستم به عبارتی طراحی همان f و g به کمک روش های شناسائی سیستم. 2- طراحی بردار K بر مبنای رفتار مورد نیاز. 3- به روز کردن قواعد فازی و یا گین ها بر مبنای و ایجاد شده.
مزیت اصلی استفاده از این روش طراحی کنترلر این است که می توانیم به صورت مستقیم و بر مبنای مدل سیستم ورفتار خطی مورد نظر، آن را طراحی کنیم. عیب اصلی این سیستم ها این است که تنها برای یک سری محدود از سیستم ها قابل استفاده اند از طرفی به گونه ای نیستند که اثر اغتشاش را خنثی کنند.
استفاده از سنتز مستقیم کنترل فازی متحرک Sliding Mode Fuzzy Control این روش کنترل بسیار به روش کنترلی خطی سازی فیدبکی شبیه است با این تفاوت که درآن فرایند آنالیز اغتشاش نیز وجود دارد و همین امر سبب شده است که این روش واقعی تر باشد. هدف در این روش این است که سیستم را به گونه ای مجبور کنیم که شبیه به یک سیستم خطی با دینامیکی که اصطلاحا سطح متحرک نامیده میشود رفتار کند. این روش کنترلی برای سیستم های به شکل زیر مورد استفاده قرار میگیرد.
به طور خلاصه می توان گفت که سیستم های فازی در این روش کنترلی به دو منظور استفاده میشوند. یکی به عنوان تخمین زنندهی مدل سیستم به مانند آنچه در کنترلر قبلی مورد استفاده قرار گرفت و دیگری به عنوان تابع که بردار خطا را مجبور میکند تا در سطح متحرک بماند.
زمان بندی گین فازی زمان بندی گین به صورت گسترده در صنعت مورد استفاده قرار میگیرد به عنوان مثال کنترل هواپیما. مزیت اصلی این روش این است که ما به کمک روش های خطی می توانیم کنترلر هائی را برای سیستمهای غیر خطی به کمک خطی سازی در اطراف نقاط کار مختلف ایجاد نمائیم. در این راستا چندین کنترل خطی طراحی شده و بر اساس نقطهی کار سیستم به آن متصل میشود به عبارتی هر کدام در یک نقطه کار مشخص فعال میشود.
عیب اصلی این روش پرش از یک نقطه کار به نقطه کار دیگر است که این مشکل به کمک سیستمهای فازی قابل حل خواهد بود چرا که این سیستم ها قابلیت شناسائی نقطه کار و همچنین برقراری ارتباط نرم بین نقاط کار مختلف را دارند. به وضوح به اثبات رسیده است که کنترلر های فازی کنترل کننده های زمان بندی گین نرم میباشند. برای رسیدن به مزیت این روش میبایست مدل سیستم به صورت سیستم فازی Takagi-Sugeno آن هم با قواعد به فرم زیر بیان شده باشد.
مثالی از کنترل یک هلیکوپتر آزمایشگاهی: کنترل در شرایط بدون اغتشاش: Fuzzy PID
کنترل در شرایط با اغتشاش: Fuzzy PID همانطور که مشاهده میشود کنترل فازی خیلی بهتر از PID جواب می دهد هم در نوع پاسخ و هم در حالت وجود اغتشاش در سیستم.
کنترلرپیش بین مبتنی بر مدل فازی قسمت دوم کنترلرپیش بین مبتنی بر مدل فازی
کنترل پیش بین روش کنترل پیش بین بر پایه ی پیش بینی افق محدود در آینده و اصلاح ورودی به کنترلر بر مبنای همین پیش بینی کار می کند.الگوریتمی که می توان برای آن عنوان نمود به صورت زیر می باشد. 1- نمونه برداری از خروجی سیستم 2- استفاده از مدل سیستم برای پیش بینی رفتار آینده ی سیستم در یک افق معین
3-محاسبه ی بهینه ترین توالی کنترلی که بتواند رابطه ی زیر را کمینه کند.
که در آن J(.) را تابع هزینه مینامند و اگر آن از درجه 2 باشد به شکل زیر خواهد بود. که در آن x(k) بیانگر حالت های سیستم و u(k) بیانگر ورودی به سیستم و y(k) بیانگر خروجی سیستم میباشد. تابع f(.,.) وg(.,.) بیان کنندهی دینامیک مدل سیستم اند و w(k) نیز نشان دهندهی سیگنال مرجع میباشد. δu(t) = u(t) − u(t − 1) و Q یک ماتریس معین مثبت و R وS نیزیک ماتریس مثبت نیمه معین میباشد.
4- اعمال ورودی u(k) به سیستم و تکرار پروسهی قبل در زمان نمونه برداری بعدی
مشکل اصلی موجود در مرحلهی 3 از الگوریتم این است که فرآیند بهینه سازی پیچیده میباشد. این مشکل هنگامی که محدودیتی بر روی ورودی و خروجی وجود نداشته باشد و از طرفی مدل سیستم خطی باشد بسیار آسان میشود. به صورت معمول و در پدیده های موجود، هم سیستم غیر خطی است و هم بر روی ورودی و خروجی محدودیت داریم.
کنترلرپیش بین مبتنی بر مدل فازی برای اولین بار توسط آقای یاسونوبا پیشنهاد شد آن هم به عنوان سیستم کنترلی قطار شهری سندای . دیگر فعالیت های علمی در این زمینه شامل مقالات کنفرانسی و تز های دکتری میشود.
آنالیز ارائه شده در این فصل بر این فرض استوار است که مدل سیستم که در فرآیند بهینه سازی مورد استفاده قرار میگیرد و به وسیلهی توابع غیر خطی f(.,.) و g(.,.)بیان میشود به صورت فازی بیان شده است.
کنترل پیش بین غیر خطی بدون محدودیت در حالت کلی مسئله به صورت زیر بیان میشود که در نمونهی کنونی مدل سیستم به کمک توابع f(.,.) و g(.,.) بیان میشود که این توابع به کمک یک مدل فازی بیان شده اند.
یک پیشنهاد دیگر برای مدل سیستم که در آن تابعf(.) یک مدل فازی است و مدل نویز به وسیله ی رابطه ی زیر بیان می شود این انتخاب مدل نویز خطای حالت ماندگار صفر را برای اغتشاش پله و ورودی ثابت تضمین میکند
یک تخمین از پیش بینی خروجی به وسیلهی رابطه ی زیر بیان خواهد شد که در آن yforced(t+k|t) تنها به افزایش ورودی در آینده و yfree(t+k|t) تنها به گذشته ی ورودی و خروجی بستگی دارد.
در این نمونه yfree به وسیله ی رابطه ی زیر بیان میشود. که در آن u(t) = u(t + 1) = . . . = u(t + k − 1) = u(t − 1) و n(t + k|t) برای مقادیر k > 1 برابر صفر خواهد بود.
yforced پیش بینی شده به وسیلهی رابطهی زیر بیان خواهد شد که درآن gi هاضرایب پاسخ پله ی سیستم میباشند که در نقطهی کاری فعلی به وسیله ی شبیه سازی پاسخ پله روی مدل بدست میآیند.
نکته ی قابل توجه این است که معادله ی بیان شده به صورت یک رابطه ی خطی نیست چرا که عبارت yfree به وسیله ی شبیه سازی به وسیله ی مدل غیر خطی حاصل میشود و نیز ضرایب gi به نقطهی کار فعلی سیستم و اندازه ی سیگنال ورودی وابسته اند. یک روند بسیار مناسب برای آنالیز این مسائل که حل آنها را نیز آسان میکند استفاده از روش بهینه سازی به فرم ماتریسی می باشد.
که در آن بردار رفرانس به صورت زیر خواهد بود. و تابع هزینه به صورت زیر بیان میشود.
روابط ماتریسی ارائه شده در این بخش با روابط ارائه شده در GPC یکسان میباشد. به هر حال در روابط GPC عناصر شرکت کننده در محاسبهی فرمولها از یک مدل خطی بدست آمدهاند اما در این مورد عناصر معرفی شده در فرمول ها به وسیله ی مدل غیر خطی فازی حاصل شده اند.
فرمول پیچیده تر از این موردی که بیان شد می تواند به صورت زیر بیان شود که درآن عناصر متغییر با زمان میباشند. در این حالت در هر نمونه زمانی بردار های G(t),Yfree(t),W(t) مجدداً باز سازی میشوند و بردار Yfree(t) به وسیلهی شبیه سازی مدل فازی با ورودی u(t) در همان زمان و بردار G(t) نیز در هر نمونهی زمانی به وسیلهی فرمولی که دراسلاید توضیح داده خواهد شد تولید میشود
که در آن du(t) بیانگر اندازه پله و دیگر روابط به شرح ذیل میباشند.
کنترل پیش بین غیر خطی با محدودیت در نظر گرفتن محدودیت در روش کنترل پیش بین بسیار حائز اهمیت میباشد چرا که در بسیاری از موارد مجبور به لحاظ کردن این محدودیت ها میباشیم. این محدودیت ها بر روی ورودی و خروجی و نیز تغییرات آنها لحاظ میشود. کنترل پیش بین غیر خطی با محدودیت مسئله ای است در راستای پیدا کردن ورودی های بهینه برای انتقال دینامیک سیستم از حالتی به حالت مورد نظر، با در نظر گرفتن محدودیت بر روی ورودی و خروجی. در این راستا میبایست از مدلی برای پیش بینی آینده استفاده شود که در اینجا این مدل یک مدل فازی است.
راه حل این مسئله به صورت محاسباتی بسیار هزینه بر است چرا که آن یک مسئلهی مرتبه ی دو و غیر خطی با محدودیت است. راه حل اصلی آن بسیار پیچیده و به صورت آنی و همزمان با فرآیند قابل انجام نیست.
طراحی یک کنترلر پیش بین به محدودیت های پیش بین گر بستگی دارد. محدودیت های پیش بین گر در بیان فضای حالت میتواند در شکل زیر بیان شود. (خطی سازی سیستم برای نقاط تراژکتوری میباشد.)
با استفاده از این ساده سازی پیش بینی حالت و خروجی در n گام جلوتر با در اختیار داشتن بردار ورودی های به صورت زیر خواهد بود.
در ماتریس بیان شده پیش بینی می تواند به صورت زیر نشان داده شود.
هنگامی که پیش بینی کننده با یک توالی ورودی و افق پیش بینی ساخته شود ماتریس های پیش بین گر به صورت زیر تغییر میکنند.
به محضی که به این بیان خطی محلی رسیدیم مسئلهی بهینه سازی میتواند به صورت برنامهی درجه 2 حل شود. در حقیقت، الآن مسئله به صورت یک مسئلهی کنترل پیش بین خطی با محدودیت در آمده است.
که در آن: که در واقع مینیمم هزینه مرتبط با رفرانس و پاسخ آزاد سیستم است و نمی تواند به وسیلهی ورودی اصلاح شود.
اعمال محدودیت ها
خلاصه: مسئله ی کنترل پیش بین غیر خطی با محدودیت، به صورت یک مسئلهی بهینه سازی غیر خطی از درجه 2 درآمد. به وسیلهی خطی سازی محلی مسئله تا حدودی ساده تر می شود و به وسیله ی یک برنامهی مرتبهی 2 قابل حل خواهد بود. نتیجه اینکه، این یک راه حل کنترل پیش بین محدود خطی خواهد بود.
کنترلرپیش بین غیر خطی روباست مبتنی بر مدل فازی قسمت سوم کنترلرپیش بین غیر خطی روباست مبتنی بر مدل فازی
in the previous chapter in the previous chapter. Relaxations to the problem and its reduction to a quadratic program were the strategies applied to obtain a solution. This solution is very close to the real “optimal” solution but it demands a very accurate description of the nonlinear plant to guarantee such a performance.
An accurate description of the plant is not always an achievable goal An accurate description of the plant is not always an achievable goal. The limitations are (1) the impossibility of performing extensive experiments on the plant and (2) the fact that the aging process of the plant generates a mismatch with respect to the model. For stability and performance reasons, it is very important to take into account this mismatch during the optimization process.
The solution of the robust quadratic program is obtained by transforming the program into a second–order cone program the uncertainties are extended to the linear term of the cost function and the problem is once more reformulated as a second-order cone program
Robust Quadratic Programming Robust programming is a class of optimization problems where the parameters such as coefficients of cost functions and/or constraints are uncertain and prescribed into a defined set. Lobo show that a robust quadratic program can be written as a second-order cone program (SOCP)
The problem of robust quadratic programming can be reduced to a second-dorder cone program, which can be solved very efficiently using interior point optimization algorithms. The objective is to minimize the cost function where x is the optimization variable, P is a symmetric positive definite matrix also known as the Hessian matrix, the vector q is also known as the linear term of the cost function and the scalar value r.
Problem Description The formulation of the robust nonlinear predictive control problem is expressed in the following lines as
The minimization searches for a sequence of inputs (u(k + 1), u(k + 2), . . . , u(k + Nc)) subject to constraints such as the plant dynamics described by f(...) and g(...) and input constraints related with saturation and slew rate. The parameter ||δ|| ≤ ρ represents a bounded uncertainty in the plant dynamics. For the present case the dynamics of the plant [f(...) and g(...)] will be represented using dynamic fuzzy models, in a state-space form or in an input–output form.
This optimization problem is a very complex problem of robust nonlinear programming (RNLP), and with the actual computational resources it is impossible to guarantee that a solution is found in a prescribed number of steps.
Nominal Solution ||δ|| = 0
Formulation of the Predictive Control Problem as a robust quadratic program For the current formulation the uncertainty will be restricted to the forced response term (Λ + δΛ)U.
Using this description, we can give the P matrix for the RQP by
Summary: Using the concept of “pseudo-linearization” the problem of robust nonlinear predictive control can be reduced to a problem of robust quadratic programming.
Uncertainty Description in Fuzzy Models
با تشکر از توجه شما