Изучение аналогии как механизма вывода, используемого в интеллектуальных системах. Лабораторная работа №6

Страницы работы

Содержание работы

Министерство образования Российской Федерации

Новосибирский Государственный Технический Университет

Кафедра программных систем и баз данных

Лабораторная работа №6

по дисциплине «Искусственный интеллект»

Факультет:          ПМИ

Группа:                ПМ-13

Студент:              Глухова М.А.

Преподаватель:  Пономаренко В.М.

Ванюкевич О.Н.

Новосибирск

2005

1.  Цель работы:

Изучение аналогии как механизма вывода, используемого в интеллектуальных системах.

2.  Задание

 


r

A                                 B                     X                                 Y

3.  Реализация

Интерпретация данной задачи следующая: “Фигура A находится в таком же соответствии к фигуре B, как фигура X к фигуре  Y . Требуется определить фигуру Y ” .

Рассмотрим один из возможных подходов к реализации аналогии. Идея данного подхода заключается в том, что из причинно-следственного перехода A -> B извлекается закономерность (правило), которое затем применяется к X -> Y. Действительно, из факта A->B, можно заключить, что если внутри одной фигуры находится 2 такие же, то в результате перехода внутри фигуры находится одна такая же.

Реализовать данный мезанизм вывода можно с помощью механизма унификации,       который является базовым в Прологе

4.  Текст программы

DOMAINS

FIGURA =           inside (FIGURA, FIGURA);           % быть внутри

above (FIGURA, FIGURA);                         % быть рядом

circle;                                                % круг

triangle;                                            % треугольник

square;                                              % квадрат

point;                                                 % точка

line;                                                   % линия

nil.                                                     % пусто

SITUATION = is_to (FIGURA, FIGURA).         % причинно-следственное отношение

RULE = symbol                                                     %имя правила        

PREDICATES

analogy (SITUATION, SITUATION)

match (FIGURA, FIGURA, RULE)

run (FIGURA)

CLAUSES

analogy (is_to  (A, B), is_to (A1, B1)):match (A, B, Rule),

match (A1, B1, Rule).

match (inside (X, Y), inside (Y,X), invert).

match (inside (inside (_, Y), Z), inside (Y, Z), delete).

run (Result) :-    

analogy (is_to (inside (inside (square, square), square), inside (square, square)), is_to (inside (inside (circle, circle), circle), Result)).

Информация о работе