Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
перші розділи (Відновлено).doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
573.44 Кб
Скачать
  1. Вибір та обґрунтування методу розв’язання завдання

    1. Вибір парадигми програмування

Засоби реалізації механізму тверджень, що виконуються, часто називають парадигмами програмування, проте багато з цих парадигм не мають відношення до програмування в його узвичаєному змісті. До основних парадигм відносять: процедурне програмування; програмування, орієнтоване на дані; програмування, орієнтоване на правила; об'єктно-орієнтоване програмування.

Парадигма процедурного програмування найширше поширена серед існуючих мов програмування. Тут явно виділяють два види різноманітних сутностей:

1) процедури, що виконують активну роль, тобто являються тим, що задає поведінку (функціонування) програми;

2) дані, що виконують пасивну роль, тобто являють тим, що опрацьовується засобом, продиктованим процедурами.

Спроможність складати процедури з команд (операторів) і викликати їх є ключем даної парадигми. Особливістю цієї парадигми є "побічні ефекти", що виникають у тих випадках, коли різноманітні процедури, що використовують загальні дані, змінюють їх незалежно.

При використанні програмування, орієнтованого на дані, активну роль відіграють дані, а не процедури. Тут із структурами активних даних зв'язують деякі дії (процедури), що активізуються тоді, коли здійснюється доступ до цим даним. Програмування, орієнтоване на дані, дозволяє організувати поведінку мало залежних процесів, що важко реалізувати в процедурній парадигмі. Мала залежність процесів означає, що вони можуть розглядатися і програмуватися окремо. Проте при використанні парадигми, керованої даними, ці незалежно запрограмовані процеси можуть взаємодіяти між собою без їхньої зміни (тобто без перепрограмування).

У парадигмі, орієнтованої на правила, поведінка визначається множиною правил виду: умова -> дія. Умова задає образ даних, при виникненні якого дія правила може бути виконана. Правила в даній парадигмі грають таку ж роль, як і програми в процедурній парадигмі. Проте якщо в процедурній парадигмі поведінка задається детермінованою послідовністю операторів, що не залежить для широкого класу оброблюваних даних від значень цих даних, то в парадигмі, орієнтованої на правила, поведінка (послідовність дій) задається не заздалегідь продиктованою послідовністю правил, а формується на основі значень тих даних, що у поточний момент опрацьовуються програмою (системою). Формування поведінки здійснюється по такій схемі. Умови правил зіставляються з поточними даними, і ті правила, умови яких задовольняються значеннями поточних даних, стають претендентами на виконання. Потім по визначеному критерії здійснюються вибір одного правила серед претендентів і його виконання (тобто виконання дії, зазначеної у правій частині правила). Підкреслимо, що правила - претенденти можуть виконуватися одночасно при наявності декількох процесів.

Отже, підхід, орієнтований на правила, зручний для опису поведінки, гнучко різноманітно і реагуючої на велике різноманіття станів даних.

Парадигма об'єктного програмування на відміну від процедурної парадигми не розділяє програму на процедури і дані. Тут програма організується навколо сутностей, названих об'єктами, що включають локальні процедури (методи) і локальні дані (змінні). Поведінка (функціонування) у цій парадигмі організується шляхом пересилки повідомлень між об'єктами. Об'єкт, отримавши повідомлення, здійснює його локальну інтерпретацію, базуючись на локальних процедурах і даних. Такий підхід дозволяє описувати складні системи найбільш природним чином.

Моделі представлення знань зазвичай поділяють на логічні (формальні) і евристичні (формалізовані). В основі логічних моделей представлення знань лежить поняття формальної системи (теорії). Прикладами формальних теорій можуть служити числення предикатів і будь-якої конкретної системи продукцій. У логічних моделях, як правило, використовується числення предикатів першого порядку, доповнене рядом евристичних стратегій. Ці методи є системами дедуктивного типу, тобто в них використовується модель одержання виведення із заданої системи посилок за допомогою фіксованої системи правил виведення. Подальшим розвитком предикатних систем є системи індуктивного типу, у котрі правила виведення породжуються системою на основі опрацювання кінцевого числа навчальних прикладів.

У логічних моделях представлення знань відношення, що існують між окремими одиницями знань, виражаються тільки за допомогою тих небагатих засобів, що даються синтаксичними правилами використовуваної формальної системи.

На відміну від формальних моделей евристичні моделі мають різноманітний набір засобів, що передають специфічні особливості тієї або іншої проблемної області. Саме тому евристичні моделі перевершують логічні як по можливості адекватно представити проблемне середовище, так і по ефективності використовуваних правил виведення. До евристичних моделей, використовуваним в експертних системах, можна віднести мережні, фреймові, продукційні й об'єктно-орієнтовані моделі.

Слід зазначити, що продукційні моделі, що використані для представлення знань в експертних системах, відрізняються від формальних продукційних систем тим, що вони використовують більш складні конструкції правил, а також містять евристичну інформацію про специфіку проблемного середовища, що виражається часто у виді семантичних структур.