کاربرد منطق فازی در ربات های سيار

58
ار ي س های ات ی در رب ار ف ق ط ن م رد ب کار ه: ئ ارا ری ظ ن د ي ح و اد: ي س ا داری ي ق ری ي) ش ر کي د, ان ي س م ر85

Upload: salvador-frederick

Post on 01-Jan-2016

61 views

Category:

Documents


5 download

DESCRIPTION

کاربرد منطق فازی در ربات های سيار. ارائه: وحيد نظری استاد: دکتر شيری قيداری زمستان 85. فهرست مطالب. تاريخچه مقدمه ساختار کنترل کننده فازی کنترل موقعيت ربات سيار با استفاده از منطق فازی استراتژی اجتناب از برخورد با موانع با استفاده از منطق فازی ناوبری واکنشی فازی رديابی مسير حرکت - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: کاربرد منطق فازی در ربات های سيار

کاربرد منطق فازی در ربات های سيار

ارائه: وحيد نظری

استاد: دکتر شيری قيداری

85زمستان

Page 2: کاربرد منطق فازی در ربات های سيار

2

فهرست مطالب

تاريخچهمقدمه

ساختار کنترل کننده فازیکنترل موقعيت ربات سيار با استفاده از منطق فازی

استراتژی اجتناب از برخورد با موانع با استفاده از منطق فازی ناوبری واکنشی فازی رديابی مسير حرکت

کاربرد الگوريتم ژنتيک در کنترل کننده های فازیکاربرد کنترل کننده فازی ژنتيک در ربات سيار

منابع

Page 3: کاربرد منطق فازی در ربات های سيار

3

تئوری و کاربردهای فازی

: آغاز تئوری فازی-لطفی زاده 1965

: تولد کنترل کننده های فازی-ممدانی و آسيليان 1975

: اولين ربات فازی - سوگنو 1983

: کنترل سيستم تصفيه آب فوجی - سوگنو1980

: کنترل فازی کوره سيمان – هولمبالد و اوسترگارد 1978

: کنترل قطار زير زمينی سنداي – ياشانوبو و مياموتو 1987

تاريخچه

Page 4: کاربرد منطق فازی در ربات های سيار

4

مقدمه

وقتی سيستم فازی به عنوان کنترل کننده مورد استفاده قرار مي گيرد، به آن کنترل کننده فازی اطالق مي شود. مسئله کنترل را مي

توان با توجه به دياگرام جعبه ای زير تعريف کرد:

کنترل کننده فازی

فرايند تحت کنترل

اغتشاش

نويز

_

+ورودی مطلوب

خروجی

Page 5: کاربرد منطق فازی در ربات های سيار

5

مسئله کنترل عبارت است از طراحی کنترل کننده فازی به طوری که اهداف کنترل به صورت

مطلوب برقرار باشد. اين اهداف عبارت است از:- خوب بودن تعقيب1 - کم بودن اثر نويز و اغتشاش در خروجی2 - کم بودن حساسيت خروجی به تغييرات فرايند تحت 3

کنترل

- پايدار بودن سيستم تحت شرايط مختلف4

مقدمه

Page 6: کاربرد منطق فازی در ربات های سيار

6

روش های طراحی کنترل کننده های فازی

روش سعی و خطا

روش تئوريک

کنترل فازی مدل سيستم فازی

کنترل فازی سيستم های غيرخطی

کنترل فازی سيستم های خطی

مقدمه

Page 7: کاربرد منطق فازی در ربات های سيار

7

چرا کنترل فازی؟

عدم نياز به مقادير دقيق پارامترهای سيستم -تحت کنترل

سهولت در پياده سازی کنترل کننده-کاهش حجم محاسبات-تسريع در زمان پاسخ-انعطاف پذيری کنترل کننده-طبيعت مقاوم کنترل کننده فازی-کاربردهای صنعتی و آزمايشگاهی موفقيت آميز-

Page 8: کاربرد منطق فازی در ربات های سيار

8

ساختار کنترل کننده فازی

اجزای تشکيل دهنده کنترل کننده فازی به صورت زير است:

- فازی ساز 1- نافازی ساز2- پايگاه قواعد و پايگاه داده ها3- واحد استنتاج4

Page 9: کاربرد منطق فازی در ربات های سيار

9

: نگاشتی از يک نقطه به يک مجموعه فازیفازی سازمعيار های طراحی فازی ساز:

- مجموعه فازی با در نقطه مورد نظر مقدار تعلق بزرگی 1 داشته باشد

- اگر ورودی سيستم به وسيله نويز خراب شود، فازی ساز 2 بايد بتواند تاثير نويز را کاهش داده و يا حذف کند.

- در ساده کردن محاسبات مربوط موتور استنتاج نقش 3 داشته باشد.

فازی ساز منفرد، فازی ساز مثلثی، فازی انواع فازی سازها:ساز گوسين، فازی ساز ذوزنقه ای

ساختار کنترل کننده فازی

Page 10: کاربرد منطق فازی در ربات های سيار

10

نگاشتی از مجموعه فازی به يک نقطه نافازی ساز: قطعی. وظيعه نافازی ساز مشخص کردن نقطه ای است

که بهترين نماينده مجموعه فازی خروجی باشد. معيار های طراحی نافازی ساز:

- نقطه قطعی يا بايد با درجه باال به مجموعه فازی تعلق 1 داشته باشد ويا در وسط مجموعه فازی قرار داشته باشد.

- تغييرات کوچک در مجموعه فازی خروجی نبايستی به 2 تغييرات بزرگی در نقطه قطعی منجر شود..

- در ساده کردن محاسبات نقش داشته باشد. 3 نافازی سازميانگين مراکز، نافازی انواع نافازی سازها:

ساز مرکز ثقل، نافازی ساز ماکزيمم

ساختار کنترل کننده فازی

Page 11: کاربرد منطق فازی در ربات های سيار

11

پايگاه قواعد فازی از مجموعه قواعد پايگاه قواعد فازی: فازی تشکيل شده است. اين بخش قلب اگر-آنگاه

سيستم فازی محسوب مي شود. پايگاه قواعد فازی شامل قواعدی به صورت زير است:

IF x1 is A1 AND …. xn is Bn THEN y is Ci Rule i:

شامل اطالعاتی درباره شکل توابع پايگاه داده ها: عضويت سيستم های فازی مورد استفاده در قواعد

فازی و دامنه متغيرهای فازی است

ساختار کنترل کننده فازی

Page 12: کاربرد منطق فازی در ربات های سيار

12

موتور استنتاج قواعد موجود در پايگاه موتور استنتاج فازی: قواعد را با هم ترکيب مي کند. از آنجا که پايگاه قواعد فازی شامل قواعد اگر و آنگاه زيادی است، بايستی بتوان از روی

مجموعه قواعد، يک مجموعه فازی را نتيجه گيری کرد. برای اين منظور از دو روش استفاده ميشود.

- استنتاج مبتنی بر ترکيب قواعد1 - استنتاج مبتنی بر قواعد جداگانه2

t-norm با توجه به تعدد استلزام ها، عملگرهای مختلف برای و دو نوع استنتاج فوق، انتخاب های متعددی برای s-normو

موتور استنتاج فازی وجود دارد. نمونه ای از اين موتور های استنتاج عبارت است: موتور استنتاج حاصل ضرب، موتور

استنتاج مينيمم، موتور استنتاج لوکاشيويکز، موتور استنتاج زاده، موتور استنتاج دنيس رشز

ساختار کنترل کننده فازی

Page 13: کاربرد منطق فازی در ربات های سيار

13

روش های فازی مورد استفاده در ربات های سيار

- کنترل موقعيت ربات برای رسيدن به هدف1- استراتژی اجتناب از برخورد با موانع2- رديابی مسير حرکت3- ناوبری 4- طرحريزی مسير حرکت 5- ارائه مدل فازی ربات سيار6- دنبال کردن پويای مسير حرکت7- مسئله تعقيب ديوار8- کنترل مدل مرجع متغيرهای ربات سيار9

Page 14: کاربرد منطق فازی در ربات های سيار

14

کنترل موقعيتابتدا مسئله کنترل موقعيت در يک محيط بدون مانع بررسی

مي شود. هدف از کنترل اين است که ربات از نقطه مبدا به نقطه مقصد برسد. در اين حالت ورودی های کنترل فازی

موقعيت و جهت ربات نسبت به نقطه هدف است. خروجی سيستم فازی زاويه فرمانش ربات است.

Page 15: کاربرد منطق فازی در ربات های سيار

15

کنترل موقعيت

توابع عضويت متغير های ورودی به صورت مثلثی در نظر فازی سازی: گرفته شده است.مقادير زبانی در نظر گرفته شده عبارت است:

پايگاه دانش سيستم فازی شامل قواعدی به صورت زير پايگاه قواعد: .است

Page 16: کاربرد منطق فازی در ربات های سيار

16

-s برایmax و عملگرt-norm برایminعملگر :مکانيزم استنتاج فازی

norm قواعد با استفاده از توصيفات شبه انسانی . استفاده شده استرفتار حرکت ربات تعريف می شوند.

در اين قسمت از روش نافازی سازی ارتفاع استفاده نافازی سازی: شده است.اين روش ساده و خيلی سريع است. اين روش از خروجی

های مقياس شده کنترل کننده استفاده کرده و مجموع وزن دار مقادير بيشينه توابع عضويت خروجی است. معادله نافازی سازی به صورت زير

است:

که تکيه گاه تابع عضويت خروجی فاکتور مقياس کننده

کنترل موقعيت

i

FC

Page 17: کاربرد منطق فازی در ربات های سيار

17

نتايج شبيه سازی برای يک ربات دو چرخ رانش تفاضلی به صورت های زير است.

کنترل ناوبری در يک محيط بدون مانع با شروع از دو نقطه مختلف

اجتناب از برخورد با موانع چند نقطه ای

Page 18: کاربرد منطق فازی در ربات های سيار

18

برای بررسی مساله اجتناب از برخورد با موانع از ايده روش تصوير فازی که برخاسته از رفتار کنترلی عکس العملی است استفاده

است. ربات هنگام روبرويي با مانع به چپ يا راست تغيير جهت مي دهد. برای اينکه ربات بتواند از نقطه شروع به نقطه پايان بدون

برخود با مانع برسد، الزم است که در هر لحظه داده های ورودی زير را از محيط دريافت کند:

فاصله ربات تا هدف

زاويه بين ربات تا هدف فاصله ربات تا مانع

زاويه بين ربات تا مانع

قواعدی که برای اين منظور استفاده مي شود به صورت زير است:

اجتناب از برخورد با موانع

Page 19: کاربرد منطق فازی در ربات های سيار

19

برای رسيدن به هدف کنترل الزم است يک کنترل کننده فازی برای رسيدن به مانع با موتور استنتاج به دست آمده درروش کنترل موقعيت در نظر گرفته شود. اين کنترل کننده بايستی عملی توليد کند که هنگام

روبرو شدن با مانع از آن دور شود. اين عمل مي تواند ايجاد منفی زاويه فرمانش مورد نياز برای هدايت ربات به سوی مانع باشد.

برای جلوگيری از واگرا شدن موقعيت ربات از نقطه هدف، زاويه

فرمانش نهايي ربات ترکيبی از دو عمل زير است: نخست کنترل کننده فازی، زاويه فرمانش مورد نياز برای هدايت ربات

به سوی هدف را محاسبه مي کند. سپس کنترل کننده فازی، منفی زاويه فرمانش مورد نياز برای هدايت

ربات به سوی مانع را محاسبه مي کند. يا

اجتناب از برخورد با موانع

Page 20: کاربرد منطق فازی در ربات های سيار

20

مدول اجتناب از برخورد با مانع هنگامی فعال ميشود که دو شرط زير ارضا شوند:

که فاصله تاثير و جهت ناحيه تاثير است. اين دو کميت حدود ناحيه تشخيص را که به شکل مخروط است، تعيين مي کند.

هر شی که ناحيه مخروطی صادر شده از ربات قرار داشته باشد می تواند به وسيله سنسورهای نصب شده در جلوی ربات تشخيص داده شود. کنترل کننده

فازی مانع هنگامی فعال مي شود که ربات به ناحيه تشخيص وارد شود. هنگامی که خطر برخورد با مانع وجود نداشته باشد، کنترل کننده مانع غير فعال شده و

ربات تنها تحت تاثير کنترل کننده هدف به سمت هدف حرکت مي کند. برای بدست آوردن زاويه فرمانش مناسب از نافازی سازی ارتفاع استفاده شده است.

اجتناب از برخورد با موانع

Page 21: کاربرد منطق فازی در ربات های سيار

21

قاعده متوالی به صورت 8 فرض مي کنيم که درربات در يک لحظه همزمان آتش شوند.

اجتناب از برخورد با موانع

Page 22: کاربرد منطق فازی در ربات های سيار

22

در توابع عضويت خروجی به دست آمده که مربوط به کنترل کننده مانع است، برای اينکه برخورد با مانع رخ ندهد، تصوير توابع عضويت

نسبت به محور عمودی به دست مي آيد.

اجتناب از برخورد با موانع

Page 23: کاربرد منطق فازی در ربات های سيار

23

در نهايت توابع عضويت خروجی به صورت زير محاسبه مي شوند.

در صورتي که از نافازی سازی ارتفاع برای تعيين زاويه فرمانش نهايي ربات استفاده کنيم، با توجه به توابع عضويت به دست آمده،

خروجی کنترل کننده فازی زاويه ای است که باعث انحراف ربات به سمت راست مي شود.

اجتناب از برخورد با موانع

Page 24: کاربرد منطق فازی در ربات های سيار

24

اجتناب از برخورد با موانع چند نقطه ای

در اين قسمت يک سيستم درک برای تحليل عميق موقعيت موانع در يک محيط ناشناخته بررسی مي شود. برای اين منظور از چندين

سنسور در اطراف ربات استفاده می شود. بجای استفاده از روش مبتنی بر رفتار با سطوح مختلف رفتاری، از يک روش کنترل فازی مبتنی بر رفتار هماهنگ استفاده مي شود. نکته جالب در اين روش

استفاده از تنها يک پايگاه قواعد برای هر دو منظور جستجوی هدف و اجتناب از برخورد با مانع است.

به ازای هر سنسور به کار رفته در ربات، يک زاويه

فرمانش برای مانع به دست مي آيد. زاويه فرمانش

نهايي ربات به صورت زير محاسبه مي شود.

Page 25: کاربرد منطق فازی در ربات های سيار

25

برای وزن دار کردن انديس اهميت مانع از پايگاه قواعد فازی به صورت زير که رابطه بين فاصله، جهت و انديس را تعريف مي کند، استفاده مي

شود.

برای به دست آوردن انديس اهميت هدف فاکتور وزن دار به دست مجموعه 4آمده در مرحله قبل را فازی مي کنيم. برای اين منظور از

فازی مطابق شکل فوق استفاده مي کنيم.

اجتناب از برخورد با موانع چند نقطه ای

t

Page 26: کاربرد منطق فازی در ربات های سيار

26

سپس پايگاه قواعد بين سنسور های مجاور را تشکيل مي دهيم. در اين قواعد با توجه به انديس اهميت بين دو سنسور مجاور، خطر

برخود با مانع اندازه گيری مي شود.

اجتناب از برخورد با موانع چند نقطه ای

Page 27: کاربرد منطق فازی در ربات های سيار

27

متغير فازی است. با استفاده از 48 انديس اهميت هدف تابعی از نافازی سازی ارتفاع، مقدار عددی انديس اهميت هدف به دست مي

آيد.

اجتناب از برخورد با موانع چند نقطه ای

Page 28: کاربرد منطق فازی در ربات های سيار

28

کنترل ناوبری در يک محيط ناشناخته با وجود مانع

اجتناب از برخورد با موانع چند نقطه ای

Page 29: کاربرد منطق فازی در ربات های سيار

29

حرکت کنترل شده ربات برای رسيدن به نقطه هدف در مبدا با شروع از دو نقطه مختلف

اجتناب از برخورد با موانع چند نقطه ای

Page 30: کاربرد منطق فازی در ربات های سيار

30

ناوبری واکنشی فازی در اين بخش يک کنترل کننده واکنشی فازی برای حرکت ربات در يک محيط

ناشناخته با وجود موانع بررسی مي شود. ربات مورد استفاده يک ربات دو چرخ تفاضلی است. هنگامی ربات به صورت هدف در حال حرکت است و

سنسورها مانعی را در سر راه خود تشخيص مي دهد، يک استراتژی از برخورد ربات با مانع جلوگيری مي کند.

استراتژی واکنشی بر اساس اطالعات به دست آمده از سنسورها طرحريزی شده است و تنها تعامل های نسبی بين ربات و محيط ارزيابی مي شود. نکته

مهم در اين روش عدم نياز به مدل ساختاری محيط حرکتی ربات است. همچنين کنترل کننده واکنشی فازی از نظر زمان کوتاه واکنش و تصميم گيری

باال در فرايند اجتناب از برخورد با موانع قدرتمند عمل مي کند.

Page 31: کاربرد منطق فازی در ربات های سيار

31

ناوبری واکنشی فازیفرض کنيد ربات در يک محيط ناشناخته قرار دارد. در غياب مانع، ربات

به سوی هدف حرکت مي کند. با حضور مانع، ربات بر اساس اطالعات به دست آمده از سنسورها در خصوص مانع و موقعيت نسبی تا هدف، واکنش نشان مي دهد. در هنگام حرکت به سوی هدف و با استراتژی اجتناب از برخورد با مانع، ربات جهت و سرعت خود را تغيير مي دهد

کنترل کننده فازی مورد استفاده برای هدايت ربات

ورودی و يک خروجی است. ورودی ها 4 دارای در شکل مقابل نشان داده است. خروجی کنترلر

اختالف سرعت زاويه ای بين چرخ های سمت راست و چپ ربات است.

.

Page 32: کاربرد منطق فازی در ربات های سيار

32

توابع عضويت به کار رفته برای متغيرهای ورودی و خروجی، گوسين است.

ناوبری واکنشی فازی

Page 33: کاربرد منطق فازی در ربات های سيار

33

دياگرام جعبه ای سيستم کنترل کننده واکنشی فازی به صورت زير است. در نافازی سازی از روش مرکز سطح استفاده شده است.

ناوبری واکنشی فازی

Page 34: کاربرد منطق فازی در ربات های سيار

34

پايگاه قواعد سيستم فازی به صورت زير است:

ناوبری واکنشی فازی

Page 35: کاربرد منطق فازی در ربات های سيار

35

نتايج شبيه سازی به صورت زير ارائه شده است.

ناوبری واکنشی فازی

Page 36: کاربرد منطق فازی در ربات های سيار

36

ناوبری واکنشی فازی

مسيرحرکت ربات با استراتژی اجتناب از برخورد با مانع

Page 37: کاربرد منطق فازی در ربات های سيار

37

رديابی مسير حرکت برای تعقيب مسير ربات چرخدار FLC در اين مقاله کنترلر منطق فازی

بر اساس کنترلر ربات در يک سطح باال ارائه شده است. اين کنترلر در حد بااليی مقاوم بوده و انعطاف پذير است و به منظور تعقيب کردن خودکار يک رشته از نقاط مسير گسسته استفاده می شود. نيازی به درون يابی کردن نقاط مسير برای توليد مسير مرجع پيوسته نيست.

مزيت ديگر کنترلر فازی در مقايسه با ديگرروش های دنبال کردن مسيراين است که کنترل تنها برای دنبال کردن نقاط مرجع انجام مي

شود و نيازی به کنترل زاويه سرربات و سرعت های مرجع نيست. همين امر رديابی مسير را مقاوم تر مي کند. زيرا تنها يک پارامتر کنترل مي

شود.

پارامترهای کنترلر منطق فازی در شکل نشان داده شده است.

Page 38: کاربرد منطق فازی در ربات های سيار

38

کنترل فازی برای هدايت اين ربات از دو کنترلر فازی تشکيل شده را دريافت کرده و خروجی آن است. اولين سطح کنترلر، زوايای

مي باشد که نشان دهنده انحنای مسير حرکت ربات است. Cپارامتر دومين سطح کنترلر چهار پارامتر را دريافت کرده و

دياگرام کنترل و . سرعت های زاويه ای و خطی ربات استخروجی آن

شکل شماتيک کنترل فازی در شکل زير نشان داده است.

رديابی مسير حرکت

2,1

cVddRC ,,,

Page 39: کاربرد منطق فازی در ربات های سيار

39

رديابی مسير حرکت

توابع عضويت متغيرهای ورودی و خروجی برای اولين سطح کنترل به صورت زير است.

Page 40: کاربرد منطق فازی در ربات های سيار

40

پايگاه قواعد مربوط به اولين سطح کنترل به صورت زير تعريف مي شود.

در فرايند نافازی سازی از روش نافازی سازی مرکز ثقل استفاده شده است.

رديابی مسير حرکت

Page 41: کاربرد منطق فازی در ربات های سيار

41

توابع عضويت متغيرهای ورودی و خروجی برای دومين سطح کنترل به صورت زير است.

رديابی مسير حرکت

Page 42: کاربرد منطق فازی در ربات های سيار

42

ساير توابع عضويت به صورت زير است.

رديابی مسير حرکت

Page 43: کاربرد منطق فازی در ربات های سيار

43

پاسخ های ربوط به سيستم کنترل فازی به صورت زير است.

رديابی مسير حرکت

Page 44: کاربرد منطق فازی در ربات های سيار

44

مزايای اين روش در مقايسه با روش های ديگر تعقيب پويای مسير:کنترلر فازی، حرکت ربات را در طول گسسته مسيری که می تواند -1

توسط بعضی الگوريتم های بهينه سازی سطح باال محاسبه شود ، کنترل می کند

- کنترل موقعيت ربات در طول نقاط با موفقيت صورت گرفته است 2تا اينکه موقعيت مطلوب که منطق برآخرين نقطه مسير است،

بدست می آيد.- با وجود اينکه کنترلر منطق فازی بر اساس مدل دقيق رياضی 3

صورت نگرفته است، اين کنترل مقاوم و انعطاف پذير است

رديابی مسير حرکت

Page 45: کاربرد منطق فازی در ربات های سيار

45

کاربرد الگوريتم ژنتيک در کنترل کننده های فازی

الگوريتم ژنتيک قادر است بدون اطالعات خبره، قوانين بهينه کنترل فرايند را تنها از طريق ارزيابی قوانين مختلف به دست آورد. اين

ارزيابی مي تواند براساس روند کنترلی، تحت شرايط خاص سيستم انجام شود.

جهت ارزيابی کمی هر مجموعه قوانين، مي توان برخی شاخص

های کنترلی را برای عملکرد کنترلی در نظر گرفت و براساس آن مقدار يک تابع هدف را به دست آورد.

Page 46: کاربرد منطق فازی در ربات های سيار

46

کاربرد الگوريتم ژنتيک در کنترل کننده های فازی

ساختار سيستم فازی ژنتيک

Page 47: کاربرد منطق فازی در ربات های سيار

47

در روند طراحی چنانچه تعداد متغيرهای ورودی باشد و هر متغير ورودی حالت مختلف ) برچسب( داشته باشد، در اين صورت تعداد کليه ی قوانين

ممکن برابر خواهد بود. اگر از تقارن استفاده شود، نيمه از جدول صحت در بيان شرايط ورودی قرينه نيمه ديگر مي باشد و کافی است وضعيت

متغيرهای زبانی خروجی در يک نيمه از جدول تعيين شده ونيمه ديگر را مطابق بامقادير زبانی متقارن با نيمه اول تکميل کنيم.

با توجه به اينکه ورودی صفر، خروجی صفر توليد مي کند، لذا قانونی به صورت پيش فرض در اينجا وجود دارد. بنابراين تعداد قوانين برابر زير خواهد

بود.

ورودی 2 به طور مثال اگر فرض شود که يک سيستم کنترل فازی دارای قانون در 12 برچسب زبانی است ، در اين صورت 5است و هر ورودی دارای

بيت های کروموزوم ها کد مي شوند. هر بيت مشخص کننده خروجی يک مقدار زبانی مختلف داشته 5قانون است . در صورتيکه خروجی هر قانون

در نظر مي گيريم. 5 تا 1باشد، محتوای بيت ها را اعداد

کاربرد الگوريتم ژنتيک در کنترل کننده های فازی

qLqL

)1(2

1 qL

Page 48: کاربرد منطق فازی در ربات های سيار

48

ماتريس قوانين متقارن به صورت زير تعريف می شود.

جدول کد برای تابع عضويت خروجی به صورت زير است:

کاربرد الگوريتم ژنتيک در کنترل کننده های فازی

Page 49: کاربرد منطق فازی در ربات های سيار

49

ژن کد کننده قوانين را به صورت زير تعريف مي کنيم.

در طراحی کنترل کننده فازی، مي توان عالوه بر کد کردن مجموعه قوانين در دنباله ها، توابع عضويت مقادير زبانی متغيرهای ورودی و

خروجی را نيز در ادامه بيت های کروموزوم کد کرد. برای کد کردن توابع عضويت، مي بايست اين توابع را به صورت

پارامتريک بيان کرد. توابع عضويت ورودی را روی حوزه تغييرات دو تعريف [2,2]-سيگنال خطا و تغيير خطا به صورت نرماليزه در بازه

نرماليزه مي [1,1]-مي کنيم. توابع عضويت خروجی در فاصله شوند.

کاربرد الگوريتم ژنتيک در کنترل کننده های فازی

Page 50: کاربرد منطق فازی در ربات های سيار

50

توابع عضويت ورودی را به صورت مثلثی تعريف مي شوند..

برای ايجاد همپوشانی مناسب رابطه زير بين پارامترها برقرار است.

کاربرد الگوريتم ژنتيک در کنترل کننده های فازی

Page 51: کاربرد منطق فازی در ربات های سيار

51

که V در دنباله ها، پارامترC در رابطه قبل، به جای کد کردن پارامترهای مشخص کننده همپوشانی بين دو تابع عضويت متوالی است کد مي شود. با در نظر گرفتن مرکز يکی از توابع عضويت در نقطه خاص ) مثال مرکز تابع

در مبدا( مي توان مرکز ديگر توابع را با استفاده از پارامترهای Zeroعضويت ديگر به دست آورد.

پارامترهای مربوط به توابع عضويت ورودی در ادامه بيت های مربوط به مجموعه قوانين کد مي شوند. برای يکسان بودن ماهيت بيت ها در طول يک

دنباله، پارامترهای مربوط به توابع عضويت را نيز توسط يک تابع مشخص کوانتيزه به صورت گسته تبديل کرده و توسط الل های پنج حالته در دنباله قرار مي دهيم. ژن پارامترهای توابع عضويت ورودی به صورت زير است.

جدول کد برای پارامترهای توابع عضويت به صورت زير است.

کاربرد الگوريتم ژنتيک در کنترل کننده های فازی

Page 52: کاربرد منطق فازی در ربات های سيار

52

به همين ترتيب توابع عضويت خروجی کد مي شوند. توابع عضويت در نظر گرفته شده است. [1,1]-خروجی به صورت مثلثی در بازه

به مفهوم حداکثر خروجی مي باشد و بايستی توابع عضويت 1نقطه خروجی به گونه ای در نظر گرفته شوند که امکان توليد خروجی

در LP وجود نداشته باشد. به اين منظور مرکزتابع عضويت 1بزرگتر از آن صفر در نظر گرفته مي شود. با استفاده از تقارن تابع Sr و 1نقطه

[1,0]-عضويت صفر را در مبدا و پارامترهای توابع عضويت را در بازه � به دست مي آوريم. ژن پارامترهای توابع عضويت خروجی به متناظرا

صورت زير است

جدول کد برای پاراترهای توابع عضويت خروجی به صورت زير است.

.

کاربرد الگوريتم ژنتيک در کنترل کننده های فازی

Page 53: کاربرد منطق فازی در ربات های سيار

53

تعيين شاخص های پاسخ زمانیزمان صعود، شاخص های مطرح در پاسخ زمانی عبارت است از.

زمان تثبيت، حداکثر باالزدگی و خطای حالت مانگارتعيين تابع هدف

با توجه به شاخص های معرفی شده، تابع هدفی به صورت زير پيشنهاد مي شود.

کاربرد الگوريتم ژنتيک در کنترل کننده های فازی

Page 54: کاربرد منطق فازی در ربات های سيار

54

تمامی روابط مورد بحث در قسمت قبل هنگامی استفاده مي شود که تعداد ورودی های کنترل کننده دو تا باشد. در صورتی که تعداد ورودی

های کنترل کننده زياد باشد، تعداد قوانين به صورت نمايي افزايش مي يابد و تحقق آن را دشوار مي سازد. اما مي توان يک سيستم کنترل

فازی را با تعداد مشخصی قانون تجربی کمتر از تعداد قوانين الزم در يک جدول صحت کنترل کرد.

در صورتی که از توابع عضويت مثلثی استفاده شود، ممکن است شرط کامل بودن قوانين دچار اشکال شود. يک شرط کافی برای کامل بودن

توابع عضويت اين است که تابع عضويت هر يک از مقادير زبانی يک متغير ورودی، در تمام حوزه تغييرات آن غير صفر باشد. با اين فرض تابع

عضويت برای فرايند فوق را به صورت زير تعريف مي کنيم.

که پارامترهای تابع عضويت فوق در يک دنباله کد شده و مقادير بهينه آنها با توجه به شاخص های پاسخ زمانی به دست مي آيند.

کاربرد الگوريتم ژنتيک در کنترل کننده های فازی

23

2

1

1)(

i

i

i

s

cxx

Page 55: کاربرد منطق فازی در ربات های سيار

55

در اين بخش از کنترل فازی – ژنتيک برای رديابی کردن مسير حرکت مرجع در يک ربات سيار با دو درجه آزادی استفاده شده است. از الگوريتم ژنتيک به منظور بهينه کردن توابع عضويت ورودی، توابع

عضويت خروجی و پايگاه قواعد فازی استفاده شده است. با توجه به نمودار جعبه ای شکل زير، متغير های ورودی کنترل کننده، خطا

و تغييرات خطا و متغيرخروجی سرعت های مي باشد.

کاربرد کنترل کننده فازی ژنتيک در ربات سيار

,,YX

),,(),,( yxPyxPerrrrp

)()1( nenee

p

Page 56: کاربرد منطق فازی در ربات های سيار

56

پاسخ سيستم کنترل فازی – ژنتيک به مسيرهای حرکتی متخلف

پاسخ سيستم کنترلی بدون تنظيم پايگاه قواعد و برچسب های فازی خروجی

کاربرد کنترل کننده فازی ژنتيک در ربات سيار

Page 57: کاربرد منطق فازی در ربات های سيار

57

منابع[1 ]Gyula Mester,” Intelligent Mobile Robot Control Design”,IEEE, 2006

[2 ]Elie Maalouf, Maarouf Sada, Hamadou Saliah,” A higher level path tracking controller for a four-wheel differentially steeredmobile robot”, Robotics and Autonomous Systems 54 (2006) 23–33

[3 ]Sung Hoe Kim, Chongkug Park,, F. Harashima, ,” A Self-Organized Fuzzy Controller for Wheeled Mobile Robot Using an Evolutionary Algorithm”, IEEE Transactinson Industrial Electronics, vol. 48, No.2, Apriel 2001

[4 ]Sung Hoe Kim, Chongkug Park,, F. Harashima, ,” Adaptive Fuzzy Controller Design for Trajectory Tracking of a 2D.O.F Wheeled Mobile Robot Using Genetic Agorithm”, Proceeding of the 1998 IEEE/RSJ Intl, Conference on Intelligent Robots and Systems, Victoria, Canada,October 1998

[4 ]Foudil Abdessemed, K.Benmahammedb, E.Monacelli,” A fuzzy-based reactive controller for a non-holonomic mobile robot”, Robotics and Autonomous Systems 47 (2004) 31–46

[5 ]J.S.R.jang, C.T.Sun, E.mizutani, Neuro-Fuzzy and Soft Computing, Prentice-Hall,1997[6 ]L.X.Wang, A course in fuzzy systems and control, Prentice-Hall,1997

Page 58: کاربرد منطق فازی در ربات های سيار

58

با تشکر از توجه شما