На головну

Интерактивті режимдегі айқынталмаған шығыс жүйесін жасаудың әдіс-тәсілдерін игеру

  1. MATLAB жүйесін іске қосу және оның кесте интерфейсінің элементтерімен танысу
  2. MatLab жүйесінің графикалық мүмкіндіктері.
  3. Айқын емес жүйені интерактивті режимде өңдеу процессі.
  4. Айқын емес шығару жүйесінің ережелерін корсететін бағдарлама
  5. Айқын емес шығыс жүйесінің ережелер қорын қалыптастыру
  6. Ан жүйесіне кірмейді
  7. Арастырылатын тапсырманың кіріс және шығыс айнымалыларының бейнелеу

Жұмыстың мақсаты.№2 тәжірибелік жұмыста алынған Fuzzy Logic Toolbox құралымен айқынталмаған модельдеудің айқын емес мысалында білімдерді бекіту. Fuzzy Logic Toolbox дестесінің графикалық тәсілдерінің көмегімен итерактивті режимде айқынталмаған шығыс жүйесін жасаудың мысалы келесі айқынталмаған модельді қарастырамыз, ол MATLAB жүйесінің демонстрациялық мысалдарының санына кіреді.

" Мейрамханадағы шайпұл" мысалы. Мейрамханадағы жағдайды қарастырайық, яғни АҚШта келушіге қызмет көрсеткеннен кейін, даяршыға шайпұл қалдыру дәстүрге сай қабылданған. Осы елдегі тұрақтап қалған салттар мен мейрамханаға келушілердің көзқарастарына негіздей отырып, шайпұл көлемі тұрақты еместігін және мысалы, қызмет көрсету сапасын және тапсырылған тағамдарды дайындау сапсына тәуелді екендігін көреміз. Тапсырманың мәнісі, қандай да бір сарапшы жүйені құру болып табылады, ол айқынталмаған шығыс жүйесі түрінде жүзеге асатындай және келушілердің қызмет көрсету сапасына және тапсырылған тағамдарды дайындау сапсына берген субъективті бағасы негізінде шайпұл шамасын айқынтауға мүмкіндік береді.

Қарастырылып отырған мәселелі аймақтың эмпирикалық мәндері келесі эвристикалық өнім ережелері түрінде ұсынылуы мүмкін:

1. Егер қызмет көрсету нашар немесе кешкі ас күйіңкіреген болса, онда шайпұл -аз.

2. Егер қызмет көрсету жақсы болса, онда шайпұл да - орташа.

3. Егер қызмет көрсету өте жақсы болса немесе кешкі ас керемет болса, онда шайпұл - көп.

Айқынталмаған шығыс жүйесінің кіріс параметрлері ретінде 2 айқынталмаған лингвистикалық айнымалыларды қарастыратын боламыз: "қызмет көрсету сапасы" және "тапсырыс тағамдарын дайындау сапасы" (немес қысқартылған түрде - "кешкі ас сапасы"), ал шығыс параметрлері ретінде - "шайпұл көлемі айқынталмаған лингвистикалық айнымалысы. Терм-жиындық ретінде бірінші "қызмет көрсету сапасы" лингвистикалық айнымалысын T1={"нашар", "жақсы", "өте жақсы"} көпмүшелігінде қолданатын боламыз, ал екінші "кешкі ас сапасы" лингвистикалық айнымалысының терм-жиын ретінде Т2={"күйген", "керемет"} жиындарын қолданамыз. Шығыс лингвистикалық айнымалысының "шайпұл көлемі терм-жиыны ретінде Т3= {"аз", "орташа", "көп"} жиының қолданатын боламыз. Бұл кезде бірінші және екінші кіріс айнымалыларының термдерінің әрқайсысын (қызмет көрсету және тапсырыс тағамдарының дайындалуы) 10-баллдық шкала бойынша бағалайтын боламыз, бұл кезде 0 санына ең нашар баға сәйкес келеді, ал 10 санына - ең жақсы баға сәйкес. Шығыс айнымалыларының термдеріне келетін болсақ, онда аз шайпұл тапсырыс берілген тағамдардың құнының шамамен 5% құрайды, орташа шайпұл - шамамен 15%, ал көп шайпұл - шамамен 25% құрайды деп есептейміз.

Жасалған қортындыларды есепке ала отырып, қарастырылған шайпұлдың көлемі жайындағы субъективті ақпарат келесі түрдегі айқынталмаған өнім ережесінің 3 ережесі түрінде берілуі мүмкін ( Мамдани типті айқынталмаған шығыс жүйесі):

ЕРЕЖЕ_1: ЕГЕР "қызмет көрсету сапасы нашар болса" НЕМЕСЕ "кешкі ас күйген" ОНДА "шайпұл көлемі аз";

ЕРЕЖЕ_2: ЕГЕР "қызмет көрсету сапасы жақсы болса" НЕМЕСЕ "кешкі ас күйген" ОНДА "шайпұл көлемі орташа";

ЕРЕЖЕ_3: ЕГЕР "қызмет көрсету сапасы өте жақсы болса" НЕМЕСЕ "кешкі ас керемет" ОНДА "шайпұл көлемі көп";

Жоғарыда қарастырылған " Мейрамханадағы шайпұл" мысалы үшін, интерактивті режимдегі айқынталмаған шығыс жүйесін жасау процесі СС әдістемелік нұсқаулықтарда толық айтылған және келесі тізбекті әрекеттерді орындауға негізделген:

3.1-сурет.Екінші айнымалы енгізгеннен кейінгі FIS редакторының бейнесі

- айқынталмаған шығыс жүйесінің редакторын шақыру FIS;

- " Мейрамханадағы шайпұл" мысалында екі кірісі бар айқынталмаған шығыс жүйесі қарастырылатын болғандықтан, жасалынатын FIS жүйесіне тағы да бір кіріс айнымалысын қосамыз;

- Үнсіздік бойынша MATLAB жүйесімен ұсынылған, кіріс және шығыс шығыс айнымалыларының атын өзгертемеіз;

- үнсіздік бойынша айқынталмаған шығыс жүйесінің атын өзгетеміз ұсынылған (Untitled);

- енді термдерді және олардың біздің айқынталмаған шығыс жүйесінің кіріс және шығыс айнымалыларына арналған қатыстық функцияларын айқынтау қажет.

3.2-сурет.MATLAB жүйесі ұсынғаннан кейінгі айнымалылардың аты өзгергеннен кейін FIS редакторының бейнесі

4. Айқын емес қорытындыны жүйесінің алдында ұсынылған атын өзгертейік (Untitled). Ол үшін құрып отырған FIS құрылымын сыртқы файлда басқа атпен сақтаймыз, мысалға - mytip. Fis File>Export>To Disk....-осы команданы орындағаннан кейін. Осы кезде стандартты диалогты терезе шақырылады, яғни қолданушыға файлға сәйкес ат қойылу ұсынылады (файлдың кеңеиуі автоматты турде орындалады). MATLAB жүйесімен ұсынылған ережені өзгеріссіз қалдырайық ЖӘНЕ (And method)- "min" мәні, айқын емес логикалық НЕМЕСЕ (Or method)- "max" мәні, импликация әдісі (Implication)- "min" мәні, агрегаттау әдісі (Aggregation)- "max" мәні және дефаззификация әдісі (Defuzziflcation)- "centroid" мәні. Бұл мәндері қолданушы өзгерте алатыны айқын.

5. Енді термдерді және біздің айқын емес қорытынды жүйесіндегі кіріс және шығыс айнымалысы үшін Меншіктік функцияларын анықтау қажет. Бұл мақсат үшін Меншіктік функция редакторымен орындау қажет, оны келесі әдістермен орындаймыз:

- айнымалыға сәйкес атпен тікбұрыш белгісіне екі рет шерту арқылы;

- Edit>Membership Functions...меню командасымен(айнымалыға сәйкес атпен тікбұрыш алдын-ала белгіленуі қажет);

- <Ctrl>+<2> батырмасының көмегімен (айнымалыға сәйкес атпен тікбұрыш алдын-ала белгіленуі қажет);

Меншіктік функциясының редакторы шақырылғаннан кейін әр айнымалыға бағдарламаның ұсынысымен Меншіктік функциясында 3 үшбұрышты функция термі ұсынылады. (3.3-сурет).

Бастапқыда кіріс айнымалыларының анықтау ауқымын өзгертейік, Range және Display Rangeенгізу жолында 1-ден 10(балл) жоғарғы мәнін өзгертейік. «Шайпұл» кіріс айнымалысы үшін сәйкес ауқымдарының өзгеруі аналогты түрде орындалады, сонымен қатар жоғарыдағы 1 мәнін 30 (%) өзгерту керек. Өзгерістер пернетақтадағы <Enter> батырмасымен айқын емес болады.

3.3-сурет.MATLAB жүйесі ұсынғаннан кейінгі "қызмет көрсету" терм айнымалысы үшін меншіктік функция редакторының бейнесі

Осыдан кейін бірінші "қызмет көрсету" кіріс айнымалысының термінің атауын сәйкесінше, үнсіздік бойынша MATLAB жүйесімен (mfl, mf2, mf3) ұсынылған "нашар", "жақсы", "керемет" мәндеріне өзгертеміз. Осыдан соң үнсіздік бойынша ұсынылған бірінші айнымалысының қатыстық функциясының типін, Туре өрісіндегі сәйкес пунктті таңдап, Гаусс (gaussmf) типті функцияға қзгертемеіз. Қайта берілген қатыстық функциялардың парраметрлерін өзгерусіз қалдырамыз. 1-ші кіріс айнымалысын өзгерткеннен кейінгі Меншіктік функция редакторының бейнесі 3.4-суретте көрсетілген

3.4-сурет.Бірінші "қызмет көрсету" кіріс айнымалысының термінің атауын сәйкесінше, меншіктік функция редакторының бейнесі

. Аналогты түрде екінші "кешкі ас" шығыс айнымалысының термінің атауын өзгертеміз және сәйкес қатыстық функциядан термдердің бірін өшіреміз. Ең соңында, шығыс "шайпұл"айнымалысына арналған қатыстық функцияның параметрлерін және терм атауын MATLAB жүйесімен ұсынылған үшбұрышты қатыстық функцияның типін өзгеріссіз қалдырамыз.

"кешкі ас" айнымалысы үшін оның термдерінің Меншіктік функциясының типін трапециялық функцияға (trapmf) және оның параметрлерін келесі түрге өзгертеміз: "күйіп кеткен" термі үшін [0 0 1 3] мына параметрлерін береміз, ал "керемет" терміне- [7 9 10 10] береміз.

Екінші кіріс айнымалыға өзгеріс енгізгеннен кейінгі Меншіктік функция редакторының бейнесін 3.5-суреттен көруге болады.

Аяғында, MATLAB жүйесі ұсынған үшбұрышты Меншіктік функциясын типін өзгертпей, терм атауларын және "шайпұл" шығыс айнымалылары үшін Меншіктік функция параметрлерін өзгертеміз. "аз" термі үшін [0 5 10] параметрін берейік, ал "орташа" термі үшін - [10 15 20], "көп" термі үшін - [20 25 30] мәндерін береміз. Екінші кіріс айнымалыға өзгеріс енгізгеннен кейінгі Меншіктік функция редакторының "шайпұл" бейнесін 3.6-суреттен көруге болады.

6. Енді өңделуші сарапшы жүйе үшін айқын емес қорытындыны анықтайтын ережелерді анықтайтын кезек келді. Бұл мақсатта ережелер редакторымен қолдану керек, ол келесі әдістердің бірімен орындалуы мүмкін:

3.5-сурет. "кешкі ас" екінші кіріс айнымалыға өзгеріс енгізгеннен кейінгі меншіктік функция редакторының бейнесі

3.6-сурет. "шайпұл"екінші кіріс айнымалыға өзгеріс енгізгеннен кейінгі меншіктік функция редакторының бейнесі

- жасалынушы айқын емес қорытынды жүйесін шаршы ортасын екі рет басу (myfis);

- Edit>Rules...меню командасы;

- <Ctrl>+<3> батырмасын басу

Айқын емес қорытындының бастапқыдағы мәліметтер қоры бос болғандықтан, ережелер редакторын шақырғаннан кейін ортаңғы көп жолды енгізу алаңы ешқандай ережелерден тұрмайды. Оларды анықтау үшін меню алаңын және ережелер редакторындағы графикалық интерфейстің төменгі бөлігіндігі айырып-қосқышты қолдану керек.

Бірінші ережені беру үшін "нашар" кіріс айнымалысы үшін, "күйген " терм аты үшін екінші кіріс айнымалысын және "аз" термі үшін шығыс айнымалысы үшін бағдарламасымен ұсынылған терм атымен аталған жолды белгілеп қалдырамыз.

Ары қарай Connectionайырып-қосқышын or(логикалық НЕМЕСЕ) қалпына қойып, Add ruleбатырмасын басу керек. Осыдан кейін кириллица символымен бірінші ереже терезенің жоғарғы бөлігінде көрінеді.

Аналогты түрде екінші ереже беріледі "жақсы", "попе" и "орташа"термдері белгіленеді және "өте жақсы", "керемет" и "көп" термдерін белгілейміз. Дайындалып жатқан сарапшы жүйелерін анықтау ережелер редакторының бейнесі 3.7-суретте көрсетілген.

Weightенгізгеннен кейін,[0, 1] интервал шегінде өзгертуге болатын, әрбір ереженің салмағы көрсетілетін алаң шығатынын айта кету керек (барлық ереже үшін мәнін өзгерусіз бірге тең деп қалдырайық). Осы ережелер салмағы әрбір айқын емес қорытынды ережелерінен кейін ережелер терезесінде домалақ жақшаларда жазылады.

7. Айқын емес қорытындының ережелерін енгізгеннен кейін кіріс айнымалысының белгілі мәні үшін ( шығыс айнымалысының мәні) айқын емес қорытындының нәтижесін көруге болады. Осы мақсатта ережелерді көру бағдарламасын келесі әдістің бірімен қолдануға болады:

- FIS редакторының View>Rules меню командасы;

- Меншіктік функция редакторының View>Rules меню командасы;

- ережелер редакторының View>Rules меню командасы;

- <Ctrl>+<5> батырмасының көмегімен.

Ережелерді қарастыру бағдарламасын шақырғаннан кейін айқын емес қорытынды жүйесі үшін кіріс айнымалыларына орташа интервалы бағдарлама ұсынысымен (Input алаңына енгізу [5 5] мәні)болады. Бұл дегеніміз, мейрамхана қонағы қызмет ету сапасын 5 баллға және астын сапасын да 5 баллға бағалайды. Кіріс айнымалыларының осы мәніне сәйкес шайпұл мәні 15%, бұл дегеніміз көру бағдарламасы терезесінің оң жақ бөлігінде тікбұрыштардан жоғарғы жағында көрсетіледі.

3.7-сурет.Анықталғаннан кейінгі айқын емес қорытынды ережелер редакторының бейнесі

Басқа жағдай үшін кіріс айнымалыларының мәнін өзгертейік, яғни қызметр ету сапасы 0 балл ("өте нашар") және тағамның сапасы 10 балл ("өте тамаша"). Бұл үшін тышқан бағдаршасын Inputкіріс алаңына алып келіп, сәйкес кіріс айнымалыларының мәнін енгіземіз: [0 10]. MATLAB жүйесі шайпұл мәнін өзгеріссіз қалдырады (15%), алайда диаграмма терезесінде орындалған өзгеріс нәтижесін байқауға болады(3.8-сурет).

Айқын емес модельдеу процесі енгізілген айқын емес модельдің теңдігін орнату мақсатымен, әртүрлі кіріс айнымалыларының мәнінде айқын емес қорытынды нәтижесін тандауы ұсынады (берілген жағдайда - сарапшытік жүйелер), басқа да жағдайларды қарастырайық. Мысалға, қызмет ету сапасына 10 балл берейік ("өте тамаша"), ал тағам сапасы - 2 балл ("нашар болу мүмкін, бірақ жиі емес"). Сәйкес айынымалы мәндерін аналогты әдіспен енгізейік. Бұл жағдайда айқын емес қорытынды жүйесі 16.4% мөлшерде шайпұл қалдыруды ұсынады.

3.8-сурет.Кіріс айнымалыларының мәні [0 10]

Қызмет ету сапасы бұрынғыдай 10 балл болсын, ал тамақтың сапасы жақсарды десе, яғни 3 балл берейік, олай болса шайпұлдың көлемі едәуір көбейіп, 24.7%-ға жетеді . онымен қоса, тағамның сапасының ұлғаюы шайпұл көлеміне әсер етпейді. [10 10] Кіріс айнымалылары үшін де шайпұл көлемі 24.7% болып табылады. Егер кейбір қонақтарға осындай сарапшы жүйесі дұрыс емес болып табылса ( мысалға [10 10] кіріс айнымалысы үшін шайпұлдың ең жоғарғы көлемі 30% болу керек), онда енгізілген айқын емес қорытынды жүйесі модификацияны талап етеді. Берілген модификация ондағы бар ережелерді өзгертуді немесе жаңа ереже құруды, сонымен қатар кіріс және шығыс айнымалыларының Меншіктік функцияларын өзгертуді талап етуі мүмкін. Одан аз модельді жөнделуі, әрбір кіріс және шығыс айнымалыларының термдерінің санының көбеюінен болуы мүмкін, кезегімен айқын емес қорытынды жүйесінде ережелер санының көбеюіне және модельдің жалпылама қиындауына әкеп соғады.

Осының барлығы оқырманға өзіндік жұмысы ретінде беріледі.

8. өндірілген айқын емес модельдің ақырғы талдауды үшін айқын емес қорытындының беткі бөлігін бақылау бағдарламасы тиімді болып табылады. Ол келесі тәсілдің бірімен орындалады:

- FIS редакторының View> Surfaceменю командасы;

- Меншіктік функция редакторының View> Surfaceменю командасы;

- ережелер редакторының View> Surfaceменю командасы;

- ережені қарау бағдарламасындағыView>Surfaceменю командасы

- <Ctrl>+<6> батырмасының көмегімен.

Өндірілген айқын емес модель үшін, айқын емес қорытындының беткі бөлігін бақылау бағдарламасының графикалық интерфейсі 3,9-суретте көрсетілген.

Бұл бағдарлама айқын емес модельдің жалпы анализінің дұрыстығы үшін қызмет етеді, ол кіріс айқын емес айнымалы мәнінің, шығыстағы айқын емес айнымалы мәнінің біріне өзгеру әсерін бағалайды. Егер керек болған жағдайда кіріс айнымалысының шығыс айнымалысының біріне тәуелділік графигін алуға болады. Ол үшін X (input)тізіміндегі керекті айнымалыны, ал Y (input)тізімінде-попе- мәнін таңдау керек. Алынған тәуелділік графигі 3.10-суретте көрсетілген.

Алынған тәуелділік графигі екінші кіріс айнымалының орташа мәніне сәйкес (" кешкі ас сапасы") 5 балл. Бұл мәнді қолданушы өзгеотуі мүмкін, ол үшін керкті мәнді Ref. Inputенгізу жолына қою керек. Айта кету керек, бірінші кіріс айнымалысы үшін NaN мәні барлық анықтау интервалындағы өзгертулерге сәйкес.

3.9-сурет.Өндірілген айқын емес модель үшін айқын емес қорытындының жоғарғы бетін бақылау бағдарламасының бейнесі

Қарапайым айқын емес қорытынды жүйесін интерактивті режимде өндіру процесін қарастыруын аяқтай отырып, бұл әдістің көп айнымалы саны және айқын емес қорытындының көп ережелері бар күрделі айқын емес модель үшін едәуір тиімді екенін айта кету керек. Бұл жағдайда графикалық режимде айнымалыларды және Меншіктік функцияны және олардың термдерін беру, сонымен қатар ережелердің визуалды бейнесін көру мүмкін болатын қателіктердің санын төмндетеді және айқын емес модельдеудің жалпы уақытын қысқартады.

Сонымен қатар айнымалылар мен визуалданатын айқын емес модельдің ережелердің көлемі шектеулі екенін есте сақтау керек. Көбінесе, егер кіріс айнымалылардың мәні 10-нан асатын болса, онда оларға сәйкес графикалық редактордағы бейнесі кішкене өзгереді.

Айқын емес қорытындыны команда режимінде өндіру процесі толықтыру мүмкін, ал жеке жағдайларда MATLAB жүйесінің жұмыс аумағындағы барлық айнымалыларды қолданушы толық бақылауға ала отырып, интерактивті режимде өндіру процесін алмастыруы мүмкін.

3.10-суретЖасалған айқын емес модель үшін шығыс айнымалының кіріс айнымалыларының біріншісінен тәуелділік графигі

 



Айқын емес жүйенің беткі бөлігін бақылау бағдарламасы | Бақылау сұрақтары

MATLAB бағдарламасының жалпы сипаттамасы | MATLAB жүйесін іске қосу және оның кесте интерфейсінің элементтерімен танысу | Басты менюдегі бағдарламалардың міндеттері. | Командалар терезесіндегі негізгі жұмыс жасау түрлері. | MatLab жүйесінің графикалық мүмкіндіктері. | Айқын емес жүйені интерактивті режимде өңдеу процессі. | Айқын емес жүйені шығару редакторы FIS | Меншіктік функцияның редакторы | Айқын емес ережелер редакторы | Айқын емес шығару жүйесінің ережелерін корсететін бағдарлама |

© um.co.ua - учбові матеріали та реферати