ПОӘК 042-18-12.1.115/03-2013
|
№1 басылым 18.09.2013ж.
|
беттің -сі
|
ҚАЗАҚСТАН РЕСПУБЛИКАСЫ БІЛІМ ЖӘНЕ ҒЫЛЫМ МИНИСТРЛІГІ
СЕМЕЙ ҚАЛАСЫНЫҢ ШӘКӘРІМ АТЫНДАҒЫ МЕМЛЕКЕТТІК УНИВЕРСИТЕТІ
|
3 деңгейлі СМК құжаты
|
ОӘК
|
ПОӘК 042-18-12.1.115/03-2013
|
«Эксперттік жүйелер» пәнінің оқу-әдістемелік кешені
|
Баспа №1 18.09.2013ж
|
«Эксперттік жүйелер»
пәнінен оқу-әдістемелік кешен
050703-«Ақпараттық жүйелер» мамандығына арналған
ОҚУ-ӘДІСТЕМЕЛІК МАТЕРИАЛДАР
Семей
2013
мазмұны
1. Глоссарий
2. Дәрістер
3. Практикалық және лабораториялық сабақтар
4. Студенттің өздік жұмысы
1. глоссарий
Бұл ОӘМ-да келесі терминдер және оларға түсініктемелер қолданылған:
1.1. Экспертті жүйе деп мамандардың нақты саладағы білімдерін қолданып және сол эмпирикалық тәжірибені қолданушыға кеңес ретінде ұсынатын күрделі программалалық кешендерді айтады.
1.2. Қолданушы – жүйемен жұмыс жасайтын нақты саладағы маман. Көп жағдайда қолданушының квалификациясы төмен болады, сондықтан ол экспертті жүйелер жағынан көмекті қажет етеді.
1.3. Білім бойынша инженер – эксперт және білім базасы арасындағы аралық буфер ролін атқаратын жасанды интеллект бойынша маман. Синонимдері: когнитолог, инженер-интерпретатор.
1.4. Қолданушы интерфейсі-информацияны енгізу және нәтиже алу стадиясында қолданушы және экспертті жүйе арасында диалогты іске асыратын программалар кешені.
1.5.Білім базасы (ББ) - экспертті жүйе ядросы, экспертке және қолданушыға түсінікті формада машиналық тасымалдауышқа жазылған белгілі сала білімінің жиыны (программалау тілдерінде). Осындай адамдық ББ-мен қатар машиналық ББ болады.
2. Дәрістер
Дәріс сабағының құрылымы:
Дәріс 1. Экспертті жүйелердің архитектурасы Дәріс сұрақтары: Экспертті жүйелердің түсінігі. Экспертті жүйелердің классификациясы.
Экспертті жүйе деп мамандардың нақты саладағы білімдерін қолданып және сол эмпирикалық тәжірибені қолданушыға кеңес ретінде ұсынатын күрделі программалалық кешендерді айтады.
Экспертті жүйелердің негізгі түсініктері.
Қолданушы – жүйемен жұмыс жасайтын нақты саладағы маман. Көп жағдайда қолданушының квалификациясы төмен болады, сондықтан ол экспертті жүйелер жағынан көмекті қажет етеді.
Білім бойынша инженер – эксперт және білім базасы арасындағы аралық буфер ролін атқаратын жасанды интеллект бойынша маман. Синонимдері: когнитолог, инженер-интерпретатор.
Қолданушы интерфейсі-информацияны енгізу және нәтиже алу стадиясында қолданушы және экспертті жүйе арасында диалогты іске асыратын программалар кешені.
Білім базасы (ББ) - экспертті жүйе ядросы, экспертке және қолданушыға түсінікті формада машиналық тасымалдауышқа жазылған белгілі сала білімінің жиыны (программалау тілдерінде). Осындай адамдық ББ-мен қатар машиналық ББ болады.
Шығарушы – ББ-да бар білімге сүйене отырып эксперт ойын модельдейтін программа. Синонимдері: дедуктивті машина, логикалық шығару блогы.
Түсіндірулер жиыншасы – «Ұсыныстар қалай шығарылды?» және «Неге жүйе мұндай шешімге келді?» сұрақтарына жауап беретін программа. «Қалай?» сұрағына жауап – барлық ой-қорытындылар тізбегінің қадамдарын көрсету процессі. «Неге?» сұрағына жауап – келген қорытындыдан бір қадам алдыға жылжу.
ББ-ның интеллектуалды редакторы – білім инженеріне диалогты режимде ББ құруға мүмкіндік беретін программа. Элементтері: кірістірілген меню жүйесі, білімді өрнектеу тіл шаблондары, көмекші және базамен жұмыс жасауды жеңілдететін басқа сервисті программалар.
Экспертті жүйені құрушыларға коллективіне минимум төрт адам кіреді:
Эксперт;
Білім инженері;
Программист;
Қолданушы.
Бұл коллективті білім инженері басқарады, ол білімге негізделген жүйелерді құрудағы басты фигура.
«Экспертті жүйелер» классы қазіргі уақытта мыңдаған программалық кешендерді біріктіреді. Оларды әртүрлі критерийлер бойынша класстарға бөлуге болады.
Шығарылатын есеп бойынша классификация
Нақты уақытпен байланыс бойынша классификация
Басқа программалармен интеграциялану дәрежесі бойынша классификация
Шығарылатын есеп бойынша классификация
Мәліметтерді интерпретациялау. Бұл экспертті жүйелердің дәстүрлі есептерінің бірі. Мәліметтерді интерпретациялау деп нәтижесінде нақты болатын мәліметтердің мағынасын анықтауды айтамыз. Көптеген жағдайларда мәліметтердің көп вариантты анализі қолданылады.
Диагностика. Диагностика деп қайбір жүйедегі қателерді түзетудә айтамыз. Қателік – нормадан ауытқу. Негізгі проблемалар – қауіпті жағдайды «өткізу» және «ложного срабатывания» инверсті есебі. Бұл проблемалардың қиындығы қауіпті жағдайдың симпомдарының түсініксіздігі және уақытты ескеру.
Проектілеу. Проектілеу деп алдын-ала белгілі қасиеттермен объектілерді жасаудың ерекшеліктерін құруды айтамыз. Ерекшелік деп барлық керек құжаттар жиынын айтамыз – сызба, түсініктеме қағазы және т.б. Мұндағы негізгі проблемалар – объект жайлы білімнің нақты структуралық сипаттмасын алу және «іздер» проблемасы. Эффективті проектілеу және қайта проектілеу үшін проектті шешімдірді ғана емес және оларды қабылдау мотивтерін де құру керек. Проектілеу есептерінде экспертті жүйеде болатын екі негізгі процесстер тығыз байланысты болады: қорытындыны шығару процессі және түсіндіру процессі.
Болжамдау. Болжамдаушы жүйелер берілген жағдайлардан ықтималды салдарды логикалық түрде шығарады. Болжамдаушы жүйеде параметрлер мәндері берілген жағдайға келтірілетін параметрлік динамикалық модельдер қолданылады. Бұл модельден алынатын салдар ықтималдық бағалардан тұратын болжамдар негізін құрады.
Жоспарлау. Жоспарлау деп қандай да бір функцияларды орындайтын объектілерге қатысты іс-әрекеттер жоспарын құруды айтамыз. Мұндай экспертті жүйелерде жоспарланған іс-әрекеттердің салдарын логикалық түрде тұжырымдайтын нақты объектілердің әрекет модельдері қолданылады.
Оқыту. Оқыту жүйелері ЭЕМ көмегімен қандайда бір пәнді оқу барысындағы қателерді анықтайды және дұрыс шешімді көрсетеді. Олар нашар оқушы жайлы және оның қателіктері жайлы білімді қолданады және жұмыс істеу барысында оқытылатындырдың қателіктерін анықтап, оларды жоюға бағытталған. Оқушының деңгейіне байланысты қарым-қатынас жасау мүмкіндігі қарастырылған.
Білімге негізделген жүйелерді анализ және синтез есептерін шешетін жүйелерге бөлуге болады. Анализ және синтез есептерінің некгізгі айырмашылықтары: анализ есептерінде шешімдер жиыны анықталып, оның барлығы жүйеге қосылады, ал синтез есептерінде шешімдер жиыны компоненттер немесе проблемалар шешімдерінен құрылады. Анализ мәселесі – мәліметтерді интерпретациялау, диагностикалау; синтез мәселелері – проектілеу, жоспралау. Біріктірілген есептер: оқыту, мониторинг, болжамдау.
Өзіндік бақылау сұрақтары:
1. Мәліметтерді интерпретациялау деген не?
2. Проектілеу деген не?
3. Шешімдерді қабылдау деген не?
Ұсынылатын әдебиет:
1. Стерлинг Л., Шапиро Э. Искусство программирования на языке Пролог.- М.: Мир, 1990.
2. Братко И. Программирование на языке Пролог для искусственного интеллекта. – М.: Мир, 1990.
3. Сырецкий Г.А. Информатика, Основы логического программирования на PDC prolog: Учеб.пособие. - Новосибирск: НГТУ.- 1994. Ч.3.
2-дәріс Тақырып: Экспертті жүйелердің классификациясы Дәріс сұрақтары: Экспертті жүйелердің қазіргі уақытпен байланыс бойынша классификациясы. Экспертті жүйелердің басқа программалармен интеграциялану дәрежесі бойынша классификациясы.
Дәстүрлі программалау тілдері
Жасанды интеллект тілдері
Статистикалық экспертті жүйелер білім базасының интерпретацияланатын мәліметтері уақыт бойынша өзгермейтін салалапрда құрылады.Олар тұрақты болады.
Квазидинамикалық экспертті жүйелер белгілі бір уақыт аралығында мәліметтері өзгеретін саларда құрылады.
Динамикалық экспертті жүйелер деп мәліметтер үздіксіз қабылданатын қазіргі уақытта құрылады.
ЭЕМ типі бойынша классификация:
-супер ЭЕМ-дегі стратегиялық есептерге арналған ЭЖ-лер;
-орта деңгейлі ЭЕМ-гі ЭЖ-лер;
-символды процессорлар және жұмыс станцияларындағы ЭЖ-лер;
-мини- және суперминиЭЕМ-гі ЭЖ-лер;
-персоналды компьютергі ЭЖ-лер.
2. Автономды экспертті жүйелер мәліметтерді өндеудің дәстүрлі әдістерін (есептеу, модельдеу, т.б.) қолданбай тек қолданушымен кеңес беру режимінде жұмыс істейді.
Гибридты (қосылған) экспертті жүйелер қолданбалы программалардың стандартты пакетттерін (математикалық статистика, сызықты программалау немесе мәліметтер базасын басқару жүйесі) және білімді басқару құралдарынан тұратын программалық кешен. Ол қолданбалы программалар пакетіне интеллектуалды құрылымдар енгізу немесе күрделі есептерді шешуге арналған экспертті білімдердің элементтерінен тұратын интегралданған орта.
Гибрдты экспертті жүйелердің мүмкіндіктері көбірек болса да, автономды жүйелерден қарағанда оларды құру әлде қайда қиынрақ. Әртүрлі пакеттер, сонымен қатар әртүрлі әдістемелерді біріктіру көптеген теориялық және практикалық қиындықтарды туғызады.
3.Дәстүрлі программалау тілдер классына сандық алгоритмдер және символдық және логикалық мәліметтермен жұмыс жасауға бағытталған тілдер жатады (С, С++, Basic, SmallTalk, Fortran және т.б.). Сондықтан жасанды интеллек жүйелерін бұл тілдер негізінде жасау программисттердің көп жұмысын қажет етеді. Бірақ бұл тілдердің артықшылығы – дәстүрлі машиналық архитектураға ұқсастығымен анықталатын жоғарғы эффективтілігі. Сонымен қатар, дәстүрлі программалау тілдерін қолдану жалпы қызметті ірі программалық кешендерге интеллнктуалды жүйешелерді қосуға мүмкіндік береді. Дәстүрлі программалау тілдері арасында ең қолдануға ыңғайлы тілдер – ол объектті-бағытталған тілдер (С++, SmallTalk). Бұл объектті-бағытталған программалау тілдер парадигмасы білімді фреймдік көрсету моделімен тығыз байланыстылығымен түсіндіріледі. Дәстүрлі программалау тілдері сонымен қатар жасанды интеллекттің инструменталды құралдардың басқа класстарын құруға да қолданылады.
4.Жасанды интеллект тілдерінің ең жиі таралғандары – Лисп(LISP) және Пролог(Prolog). Кей жағдайларда Россияда жасалған РЕФАЛ жасанды интеллект тілі қолданылады. Бұл жасанды интеллект тілдерінің дәстүрлі интеллект тілдерінен қарағанда универсалдығы әлде қайда төмен, бірақ олар символдық және логикалық мәліметтермен жұмыс жасау мүмкіндіктерімен ерекшеленеді. Жасанды интеллект тілдері негізінде жасанды интеллект есептерін шығаруға арналған арнайы компьютерлер жасалады (мысалы, Лисп-машиналар). Бұл тілдердің тағы бір кемшілігі – гибридті экспертті жүйелер құруда қолданылмайды.
Арнайы программалық инструментарий.
Бұл жасанды интеллект программалық құралдар тобына жалпы қызметті арнайы интсрументарийлар жатады. Олар жасанды интеллекттің экспертті жүйелерімен кәдімгі тілдер денгейінен қарағанда жоғары денгейде жұмыс істеуге мүмкіндік беретін Жасанды интеллекттің Лисп тілінің библиотекасы мен құрлылғылары: КRL(Knowledge Represantation Language), FRL (Frame Represantation Language), KEE(Knowledge Engineering Environment), ARTS және т.б.
Өзіндік бақылау сұрақтары:
1. Дәстүрлі программалау деген не?
2. Гибридті экспертті жүйелер деген не?
3. Жасанды интеллект тілдері?
Ұсынылатын әдебиет:
1. Стерлинг Л., Шапиро Э. Искусство программирования на языке Пролог.- М.: Мир, 1990.
2. Братко И. Программирование на языке Пролог для искусственного интеллекта. – М.: Мир, 1990.
3. Сырецкий Г.А. Информатика, Основы логического программирования на PDC prolog: Учеб.пособие. - Новосибирск: НГТУ.- 1994. Ч.3.
3-дәріс Тақырып: Экспертті жүйелердің құрылымы Дәріс сұрақтары:
Қолданушы интерфейсі
Білім базасы
Интерпретатор
Жүйені құру модулі
Экспертті жүйелер төрт негізгі элементтерден тұрады: қолданушы интерфейсі, білім базасы, интерпретатор, жүйені құру модулі. Қолданушы интерфейсі қолданушыға жүйемен диалог жасауға мүмкіндік береді. Білім базасы шешу керек мәселе туралы білімді жинақтайды. Интерпретатор білім базасындағы білімдерді өндейді. Жүйені құру модулі эксперт және жүйелік аналитикке жүйені құруға мүмкіндік береді.
Қолданушы интерфейсі. Менеджер қолданушы интерфейсін экспертті жүйеге мәліметтерді және инструкцияларды енгізуге және шығу информациясын алуға арналған. Инструкциялар деп білімді өндеу процессін бағыттайтын параметрлерді айтады. Мәлімет белгілі бір айнымалыларға мәншіктелетін мәндер формасында көрсетіледі.
Экспертті жүйе кіруі. Менеджер енгізудің төрт әдісін қолдануы мүмкін: меню, командалар, кәдімгі тіл және өз интерфейсі. Меню және командаларды қолдану белгілі. Төртінші буын тілінде сұраныс мысалы: . Өз интерфейсі мысалы ретінде қолданушы шақыратын подменю (Norton Commander).
Экспертті жүйе шығуы. Экспертті жүйелердің ерекшелігі тек шешімді ғана емес, түсіндірулерді де алу мүмкіндігі. Түсіндірулердің екі түрі:
-сұраныс бойынша берілетін түсіндірулер. Қолданушы кез-келген уақытта экспертті жүйеден өз іс-әрекетін түсіндіруді талап ете алады.
-проблеманың шешілуінің түсіндірілуі. Шешім алынғаннан кейін қолдану экспертті жүйеден шешім қалай алынғанын түсіндіруін талап ете алады. Жүйе шешімге қалай келудің әрбір қадамын түсіндіреді.
2. Білім базасы проблемалық облысты сипаттайтын фактілер және олардың логикалық байланысын көрсететін фактілерден тұрады.
Ережелер. Білімді өрнектеудің ен танымал әдісі ережелер түрінде өрнектеу. Ереже нақты жағдайда не істеу керек екенін анықтайды. Ол екі бөлімнен тұрады: орындалатын немесе орындалмайтын шарт және егер шарт орындалғандағы жасалатын әрекет. Ережеге мысал келтірейік: егер сату көлемі 40%-тен жоғары қысқартылса, С цехында өндіруді тоқтату керек.
Экспертті жүйедегі барлық ережелер ережелер жүйесін құрады, ол мыңдаған ережелр болуы мүмкін.
Ережелер иерархиясы. Экспертті жүйеге кіретін ережелердің логикалық байланысы иерархия құрады. Ең төменде орналасқан ережелер жоғарыда орналасқан ережелердің ақиқаттығының шарты болады. Жоғарғы ережелер ақиқаттығы шешімге әкеледі.
Егер жүйенің ең жоғары деңгейінде бір ғана элемент болса, онда проблеманың тек бір шешімі болады. Мұнда проблеманың шешімі деп айнымалы мәнін анықтау, объектілердің біреуін, мүмкін әрекеттер немесе ұсыныстарды таңдауды айтамыз. Мысалы, жаңа өніммен нарыққа шығу мүмкіндігі жайлы ұсыныстарды анықтайтын экспертті жүйе шешімінің жауабы "иә" немесе "жоқ" жауап түрінде беріледі.
Егер жүйенің ең жоғары деңгейінде бірнеше элемент болса, онда проблеманың бірнеше шешімі болады. Мысалы, шығарылатын өнімнің бәсекелестігі жайлы ұсыныстарды беретін экспертті жүйенің бірнеше стратегиясы болады: өнім сапасын арттыру, бағасын төмендету немесе жарнамаға кететін шығындарды өсіру.
Ережелерді таңдау проблемасы. Еределерді қолданудың ен негізгі қиындығы мәліметтер базасынан керекті ережелерді эффективті таңдау.
Интерпретатор деп білім базасындағы білімді өндейтін экспертті жүйенің бөлігі. Жұмыс барысында интерпретатор әрбір ережені қарастырады. Егер ережедегі шарт орындалса, белгілі бір әрекет жасалады. Білімді өндеу тура және кері деп бөлінеді.
Ережелерді тура өндеу. Тура өндеу жағдайында ережелер тура тізбектей орындалады. Мұнда экспертті жүйе әрбір шарт орындалуын тексереді. Егер шарт орындалса, ереже орындалады деп есептеледі. Егер шарт орындалмаса, ереже орындалмайды деп есептеледі. Шарт не ақиқат, не жалған емес болатын жағдайлар да болады(шартта мәні белгісіз айнымалылар болуы). Бұл жағдайда шарт белгісіз деп есептеледі.
Шешімді алу үшін ережелер жиынын қарастыру процесі бірнеше рет қайталанады. Ол кейбір ережелерді бағалау үшін одан кейін тексерілетін ержелердің нәтижесінде бағалатынымен байланысты. Мұндай жағдайларда ол ережелерді бағалау келесі итерацияда іске асырылады. Барлық ережелер бағаланғанда процесс тоқтатылады.
Ережелерді кері өндеу. Ережелерді кері өндеу жағдайында интерпретатор белгілі ережені шешу керек проблема ретінде қарастырады.
Жүйені құру модулі. Жүйені құру модулі экспертті жүйені құруға арналған. Бұл компонент ережелер жиынын құрғанда өте маңызды. Жүйені құру модулінің негізінде екі әдіс қолданылады: программалаудың алгоритмдік тілдерін қолдану ЭЖ-дің қабықшаларын қолдану.
ЭЖ-ның қабықшасы. ЭЖ-ның қабықнасы деп белгілі мәселені шешуге арналған білім базасы қосылған арнайы процессор. Көп жағдайларда программалау тілдерін қолданғаннан қарағанда қабықшаны қолданғанда ЭЖ-ны құру әлде қайда тез және оңай болады. Экономика және бизнесте барлық ЭЖ-ларды қабықша көмегімен құрады.
Жүйелік аналитик ролі. «Білім бойынша инженер» термині экспертпен бірге ЭЖ-ны құруға қатысатын адамды білдіреді. Көптеген фирмаларда ЭЖ-ны құрғанда білім бойынша инженер функциясын жүйелік аналитиктер атқарады. Компьютерлік қосымшаларды білгеннен басқа, жүйелік аналитик
-эксперт өз мәселесі туралы білімдерді қалай қалыптастыратынын білу
-эксперттен алынған ЭЖ-ге енгізілетін білімге сипаттама беру керек.
Өзіндік бақылау сұрақтары:
1. Жүйені құру модулі?
2. ЭЖ-ның қабықшасы?
3. Жүйелік аналитик ролі?
Ұсынылатын әдебиет:
1. Стерлинг Л., Шапиро Э. Искусство программирования на языке Пролог.- М.: Мир, 1990.
2. Братко И. Программирование на языке Пролог для искусственного интеллекта. – М.: Мир, 1990.
3. Сырецкий Г.А. Информатика, Основы логического программирования на PDC prolog: Учеб.пособие. - Новосибирск: НГТУ.- 1994. Ч.3.
Достарыңызбен бөлісу: |