Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Питання и пидготовка.doc
Скачиваний:
6
Добавлен:
29.08.2019
Размер:
541.7 Кб
Скачать

6

Питання до державного іспиту з дисципліни "Системи штучного інтелекту"

  1. Що таке квазіалгоритм і у чому полягає відмінність квазіалгоритмічної процедури від алгоритмічної?

(Алгоритмічний і декларативний підходи до керування)

(Формалізація понять алгоритмічності та декларативності)

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

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

Можна окремити як мінімум чотири основні джерела квазіалгоритмічності. Вони можуть доповнювати один одного, а у деяких випадках — описані схожими математичними моделями. Проте ці джерела мають принципово різну природу, а саме:

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

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

S:= 0; for і := 1 to 51 do S := S + і.

  1. Нечіткість формулювань, що фігурують в описі процедури. Розглянемо будь-який кулінарний рецепт. Наприклад: "Розтерти тісто, змішати з дрібно порізаними яблуками, додати солі і перцю за смаком і смажити до появи рум'яної скоринки". Це є типовим прикладом нечіткості формулювань, що приводить до невизначеностей. До якої межі слід розтирати тісто? Що означає "дрібно порізані"? "за смаком"? Як формалізувати момент "появи рум'яної скоринки"? Неінтелектуальна система, орієнтована на чисто алгоритмічне керування, просто не зрозуміє цього опису і тому не зможе його виконати. Інтелектуальна ж система, наприклад, людина, повинна спро бувати поповнити й уточнити цей опис на основі наявних знань і досвіду. Сам по собі факт виконання завдання свідчитиме про те, що квазіалгоритмічний первинний опис процедури був зведений до деякого внутрішнього алгоритму, але навряд чи виконавець зможе чітко пояснити і розписати цей алгоритм. Крім того, такі внутрішні алгоритми для кожного виконавця будуть різними, що зумовить неоднакові результати – у даному разі різні смакові якості виробу.

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

  3. Слід зазначити, що справжньою квазіалгоритмічністю найчастіше вважають ту, що зумовлена третім і четвертим чинниками.

  1. Неформальне та формалізоване визначення семантичної мережі.