پایان نامه های انجام شده درباره : تعیین پارامترهای آزمایش تحکیم در لایههای آبرفتی با استفاده ... |
طراحی منطق کنترل کنندههای فازی
در این بخش، فرایند طراحی کنترل کنندههای فازی برای سیستمهای تک ورودی تک خروجی را توضیح میدهیم. فرایند طراحی منطق کنترل کنندههای فازی شامل ساخت قواعد کنترل است. در موارد بسیاری، با ثبت اقدامات اپراتور در قالب اگر - آنگاه میتوانیم قواعد کنترل را به دست آوریم. لذا یک روش کلی و جامع برای ساخت قواعد کنترل وجود ندارد.
مضافا آن که، قواعد اگر - آنگاه را نه تنها میتوانیم با توجه به اقدامات اپراتور بسازیم، بلکه میتوانیم از ماهیت عکس العملهای سیستم مورد نظر نیز استفاده کنیم. در چنین مواردی، کنترل کنندههای فازی مطابق شکل زیر طراحی شده است.
فرایند طراحی مشتمل بر مراحل زیر است:
ساخت قواعد کنترل
تنظیم پارامترها (برای تعیین مجموعههای فازی)
معتبر سازی و بازنگری قواعد کنترل.
تنظیم پارامترها
احراز اعتبار
تنظیم پارامترها
قرار دادن قواعد کنترل
گفتیم که به منظور طراحی منطق کنترل کنندههای فازی لازم است تا قواعد کنترل را تعیین کنیم. البته لازم به ذکر است که تعیین قواعد کنترل کار سادهای نیست زیرا فرایند آن مشتمل بر شناخت پارامترهای مجموعههای فازی است. میتوانیم فرض کنیم که پارامترهای مجموعههای فازی بیانگر پارامترهای منطق کنترل کنندههای فازی اند. بنابراین، تنظیم پارامترها به معنای تنظیم مجموعههای فازی موجود در قواعد کنترل است. بهسازی عملکرد چنین کنترل کنندههایی به وسیله تنظیم پارامترها امکان پذیر است. البته گاهی اوقات تنظیم پارامترها به تنهایی نمیتواند عملکرد کنترل کننده ها را بهبود بخشد. و این به خاطر کافی بودن قواعد کنترل است. در این وضعیت، عملکرد را از طریق بازنگری قواعد کنترل و تنظیم پارامترها برای قواعد جدید میتوانیم بهسازی کنیم.
فصل پنجم:
آشنایی با مفاهیم شبکه عصبی
۵-۱ سلول عصبی مصنوعی
سلول عصبی مصنوعی به منظور تقلید از خصوصیات مرتبه اول[۱]سلول عصبی بیولیژیکی طراحی شده است. به طور ذاتی، دستهای از ورودی ها به کار برده میشوند که هر کدام معرف خروجی سلول عصبی دیگری هستند. هر ورودی در وزن متناظرش که بیانگر قدرت اتصالی است ضرب میشود و سپس همه این ورودیهای وزن دار با یکدیگر جمع میگردند تا سطح تحریک سلول عصبی را معین نمایند. شکل ۱ مدلی را نشان میدهد که این نظریه را به انجام میرساند. علی رغم تنوع در الگوهای شبکه، تقریباً همه آنها بر اساس این ساختار بنا نهاده شده اند.
در اینجا دستهای از ورودی ها که به صورت k= 1,…,k، xk نشان داده شده اند، به سلول عصبی اعمال میشوند. این ورودی ها که جمعا به عنوان یک بردار در نظر گرفته میشوند، مشابه علایمی هستند که به سیناپس[۲]های سلول عصبی فرستاده میشوند.هر سیگنال قبل از اینکه به واحد جمع که با علامت نشان داده شده است اعمال شود، در یک وزن مربوط به خود ضرب میگردد که هر وزن مشابه با قدرت یک اتصال سیناپتیک بیولوژیکی منفرد است.
واحد جمع که شباهت خیلی کمی به جسم سلول بیولوژیکی دارد، همه ورودیهای وزن دار را به صورت جبری جمع و خروجی را تولید میکند که در اینجا با n که نشانه NET میباشد، نشان داده میشود. این روند ممکن است به طور خلاصه با نمادبرداری به صورت NET = XW بیان شود.
شکل ۵-۱: شبکه یا یک نود
۵-۲ توابع تحریک
معمولاً سیگنال NET توسط تابع تحرک g مورد پردازش قرار میگیرد تا سیگنال خروجی سلول عصبی، یعنی out تولید شود. این تابع ممکن است به صورت یک تابع خطی ساده مثلاً out = (k(NET که در آن k یک تابع حدی است و به صورت زیر عمل می کند.
T یک مقدار مرزی ثابت و یا تابعی است که خصوصیات انتقالی غیرخطی سلول عصبی بیولوژیکی را با دقت بیشتری شبیه سازی میکند و این امکان را میدهد که بتوانیم توابع کلی تر و معمولتری را برای شبکه استفاده نماییم. در شکل ۱ واحد پردازش خروجی NET را دریافت میکند، و سیگنال out را تولید میکند. در صورتی که واحد پردازش، حدود NET را طوری فشرده کند که مقدار out به ازای همه مقادیر NET هرگز از مقدار مشخص کوچکی تجاوز نکند، در این صورت، تابع به فرض f یا g را تابع فشرده کننده مینامند.
تابع فشرده کننده اغلب به صورت تابع منطقی یا هلالی شکل انتخاب میشود. تابع g در اصل باید به صورت یک تابع relay یا hard – limit باشد، ولی به منظور سادگی در بیان ریاضی بیشتر از تولید تانژانت هایپربولیک و یا هلالی شکل(سیگموید)[۳] استفاده میشود. با انتخاب تابع سیگموید به عنوان تابع تحریک خواهیم داشت:
شکل ۵-۲ : تابع سیگموید
در شکل بالا خروجی OUT با a نشان داده شده است. با توجه به معادله فوق در مییابیم که NET به سمت اعداد منفی بزرگتر میل میکند، مقدار OUT به سمت صفر میل میکند و در نهایت به یک، و در این حالت میتوان گفت که سلول عصبی اشباع شده است.
در مقایسه با سیستمهای الکترونیکی آنالوگ، تابع تحریک را ممکن است به عنوان معیین کننده حاصل مشتق غیر خطی برای سلول عصبی تصور کنیم. این مشتق با تعیین نسبت تغییر در out بر اثر تغییر کوچک در NET محاسبه میشود. بنابراین، مشتق بیانگر شیب منحنی در یک سطح تحریک مشخص است. این مشتق از مقادیر کوچک، هنگامی که تحریک، بزرگ و منفی است (منحنی تقریباً افقی است) تا مقادیر بزرگ، یعنی هنگامی که تحریک صفر است تغییر می کند و هنگامی که تحریک خیلی بزرگ و مثبت میشود، دوباره به سوی مقادیر کوچک سقوط می کند.
گراسبرگ در سال ۱۹۷۴ دریافت که این خصوصیت مشتق غیرخطی، معمای اشباع پرتعدادی را که توسط او مطرح شد، حل میکند.
معمای او این بود، که چطور یک شبکه میتواند هم با علائم کوچک و هم با علائم بزرگ سروکار داشته باشد و آنها را مورد استفاده قرار دهد؟ علایم کوچک اگر مجبور به تولید خروجی قابل استفاده و مفید باشند، در سراسر شبکه به مشتق بزرگ نیاز دارند، ولیکن تعداد زیادی از وضعیتهایی که به شکل آبشار پشت سر هم قرار میگیرند و مشتق بزرگ دارند، خروجی را با پارازیت یا noise ( متغیرهای تصادفی) تقویت شدهای اشباع میکنند که در هر شبکه قابل تحقق ارائه میشوند.
همچنین علائم ورودی بزرگ در وضعیتهایی که مشتق بزرگ است شبکه را اشباع میکنند و باز هم خروجی مفید و قابل استفاده از بین برده میشود. ناحیه مرکزی از تابع منطقی که مشتق بزرگی دارد، مشکل پردازش علائم کوچک را حل مینماید. ضمناً هنگامی که تحریکات به سمت بی نهایت مثبت و منفی میل میکنند، مقدار مشتق کاهش مییابد. تابع متداول دیگری که به عنوان تابع تحریک از آن استفاده میشود، تابع (x)tanh به صورت زیر تعریف میشود:
این تابع از نظر شکل شبیه تابع منطقی است و اغلب توسط بیولوژیست ها به عنوان مدل ریاضی از تحریک سلول عصبی مورد استفاده قرار میگیرد. اگرچه یک سلول عصبی منفرد برخی از توابع ردیابی الگوهای ساده را میتواند به انجام برساند، قدرت محاسباتی عصبی از قدرت مجموعهای از سلولهای عصبی مرتبط شونده به یکدیگر در یک شبکه نشات میگیرد.
در محاسبات آسانتر است که وزنهای شبکه را به صورت آرایههای یک ماتریسw در نظر بگیریم. این ماتریس m سطر و n ستون دارد که m تعداد ورودی ها و n تعداد سلولهای عصبی است. برای مثال، w32 وزنی است که سومین ورودی را به دومین سلول عصبی مربوط میکند. در این روش، محاسبه دسته خروجیهای سلول عصبی از ضرب ماتریسی x در w امکان پذیر است. یعنی N= XW که در این رابطه N,x بردارهای سطری میباشند.
۵-۳ شبکههای عصبی چند لایه
شبکههای بزرگتر و پیچیدهتر معمولاً قابلیت ها و تواناییهای محاسباتی بیشتری را ارائه میکنند. اگر چه شبکه ها در هر ساختار قابل تصوری ساخته شده اند، مرتب کردن سلولهای عصبی در لایه ها از ساختار لایه بندی شده بعضی از قسمتهای مغز الگوبرداری گردیده است. ثابت شده است که شبکههای چند لایهای قابلیت و تواناییهایی فراتر از شبکههای تک لایه دارند و در سالهای اخیر، الگو ریتمهای آموزشی برای آموزش آنها توسعه و بسط داده شده اند.
شبکههای چند لایه از تک لایههایی که به شکل آبشار دنبال هم قرار گرفتهاند ممکن است شکل بگیرند. خروجی یک لایه، ورودی لایه بعدی را مهیا میکند. شکل زیر یک شبکه چند لایه را نشان میدهد که در آن باز هم سلولهای عصبی به طور کامل به یکدیگر مرتبط شده اند.
۵-۴ شبکههای بازگشتی
شبکههایی که تا اینجا مورد بحث قرار گرفتند، هیچ گونه ارتباطات تغذیه برگشتی[۴] نداشتند. منظور از ارتباطات تغذیه برگشتی، ارتباطاتی است که از خروجیهای یک لایه به سمت ورودیهای همان لایه و یا لایههای قبلی گسترش مییابند. این رده از شبکه ها که تا اینجا مطرح شد، به دلیل عدم ارتباطات تغذیه برگشتی، شبکههای غیربرگشتی یا تغذیه پیشرفتی[۵]نام گرفته و خیلی مورد توجه واقع شدهاند و به طور وسیع به کار برده میشوند.
این شبکه ها هیچ حافظهای ندارند و خروجی هایشان تنها با بهره گرفتن از ورودیهای جاری و مقادیر وزن ها تعیین میشوند. شبکههای به خصوصی که شامل ارتباطات تغذیه برگشتی هستند، شبکههای بازگشتی[۶]نامیده میشوند. در برخی از ساختارهای شبکههای بازگشتی، خروجیهای قبلی دوباره به سمت عقب به طرف ورودی ها منتشر میشوند. بنابراین خروجیشان، هم با بهره گرفتن از ورودی جاری و هم خروجیهای قبلیشان تعیین میشود. به همین دلیل شبکههای بازگشتی خصوصیاتی را ارائه میکنند که خیلی شبیه به حافظه فعال (کوتاه مدت)[۷] در انسان است که در آن وضعیت خروجیهای شبکه تا اندازهای به مقادیر ورودیهای قبلیشان بستگی دارد.
در زمینه ها، نمادها و نمایش گرافیکی شبکههای عصبی مصنوعی، استاندارد خاصی به چاپ نرسیده است و توافقی میان محققان صورت نگرفته، البته تا حدی نمادها به صورت رایج در مقالات و نرم افزارها عمومیت پیدا کرده اند. الگوهای یکسان شبکه زمانی که توسط محققان مختلف ارائه میشوند، کاملاً متفاوت از یکدیگر میتوانند ظاهر شوند.
تعدادی از محققان با اینکه سلول عصبی را به عنوان تقریبی از مدل بیولوژیکی آن به رسمیت میشناسند، از ذکر کلمه سلول عصبی، هنگامی که به سلول عصبی مصنوعی اشاره دارند خودداری میکنند. معمولاً کلمات سلول عصبی، سلول و واحد پردازشگر به جای شبکه عصبی مصنوعی، به کار برده میشوند.
به طور کلی، الگوریتمهای یادگیری شبکههای عصبی مصنوعی، یا به شکل معادله دیفرانسیلی و یا به شکل معادله تفاضلی بیان میشوند. در ارائه معادله دیفرانسیلی فرض میشود که فرآیندها پیوسته هستند و شبیه به یک شبکه آنالوگ بزرگ عمل میکنند. اگر به یک سیستم بیولوژیکی در مقیاس میکروسکوپی توجه شود، صحت این مطلب رد میشود زیرا سطح تحریک یک سلول عصبی بیولوژیکی با نسبت متوسطی تعیین میگردد که در آن نسبت، سلول عصبی پالسهای بالقوه گسستهای را به پایین اکسن خود منتشر میکند. این نسبت متوسط معمولاً به عنوان یک مقدار آنالوگ مورد عمل قرار میگیرد، اما مهم این است که اصول آمیخته به حقایق فراموش نشود.
اگر کسی بخواهد شبکههای عصبی مصنوعی را روی رایانه آنالوگ شبیه سازی کند، ارائه معادلات دیفرانسیلی[۸] کمال مطلوب است. لیکن اکثر کارهای امروزی روی رایانههای دیجتال انجام می شود. از این رو ارائه معادلات به شکل تفاضلی مناسب ترین راه حل است زیرا این معادلات به آسانی میتوانند به برنامههای رایانهای برگردانده شوند. به همین دلیل بهتر است از معادلات تفاضلی استفاده شود.
۵-۵ آموزش شبکه
از میان همه خصوصیات جالب شبکههای عصبی مصنوعی هیچ کدام نظیر توانایی یادگیری آنها ذهن ما را تسخیر نمیکند. آموزش شبکه ها آن قدر با پیشرفت عقلانی انسان کنونی تطابق دارد که ممکن است این گونه به نظر آید که ما با دانش بنیادی و اساسی به آن دست یافته ایم. خوشحالی و رضایت از این بابت باید همراه با هوشیاری باشد زیرا یادگیری در شبکههای عصبی محدود و تعدادی مسائل مشکل همچنان باقی هستند که بایستی حل شوند، حتی اگر حرکت ها در راستای صحیح انجام شود. با وجود این ، تا کنون کارهای مؤثری نظیر شبکه سخنگوی سژنووسکی و کاربردهای عملی زیادی در این زمینه انجام پذیرفته است.
شبکههای عصبی مصنوعی، تا کنون به روشهای متنوع بسیاری آموزش داده شده اند. خوشبختانه اکثر روشهای آموزش از اصول مشترکی توسعه یافته و از خصوصیات بسیاری بهره مند شده اند. هدف از ارائه این قسمت، مروری بر بعضی از الگوریتمهای اساسی برحسب رایج بودن آنها است.
فرم در حال بارگذاری ...
[شنبه 1400-08-22] [ 01:28:00 ب.ظ ]
|