Основы искусственного интеллекта




Скачать 473.71 Kb.
НазваниеОсновы искусственного интеллекта
страница4/4
Дата26.09.2012
Размер473.71 Kb.
ТипУчебно-методическое пособие
1   2   3   4
3. Поиск заданного элемента

Чтобы определить содержится ли элемент X в списке L создадим отношение member(X, L).

Возможны случаи:

1) если X совпадает с головой списка L, то элемент найден и поиск прекращается. Первая часть правила (нерекурсивная):

member (X, [X | L]).

2) если X не принадлежит голове, то он может принадлежать хвосту. Отбрасываем голову списка и вызываем правило для оставшегося списка. Вторая часть правила (рекурсивная):

member (X, [_ | L]: - member (X, L).

Таким образом, правило поиска элемента имеет вид:

member (X, [X | L]).

member (X, [_ | L]: - member (X, L).

Например, для ответа на вопрос «Содержится ли число 4 в списке [2, 3, 4, 5]?», можно составить запрос:

GOAL

member(4, [2, 3, 4, 5]),Write (“yes”);Write (“no”), nl.

При выполнении поиска X сравнивается с головой L. Если элементы не совпадают, то первый элемент отбрасывается и X сравнивается с головой полученного списка и так далее, пока L не станет пустым списком. Если элемент X найден, то цель достигнута, выводится сообщение “yes”, иначе выводится “no”.

4.Удаление элемента из списка.

Определим отношение del(X, L, L1), где

X – удаляемый элемент;

L – исходный список;

L1 – список, полученный в результате удаления X из L.

Возможны два случая:

1) если X – голова списка, то результирующий список равен хвосту списка L. Первая часть правила (нерекурсивная):

del(X, [X|L], L).

2) если X принадлежит хвосту, то список L делим на голову и хвост. Для хвоста снова вызывается правило del. Вторая часть правила (рекурсивная):

del(X, [Y|L], [Y|L1]):- del(X,L,L1).

Полная запись правила удаления элемента из списка:

del(X, [X|L], L).

del(X, [Y|L], [Y|L1]):- del (X,L,L1).

Например, для удаления из списка [1, 2, 3, 4] элемента 3, следует составить запрос:

GOAL

del(3, [1, 2, 3, 4], L),Write (L), nl.

Результат: [1, 2, 4].

П
нет
ри выполнении программы X сравнивается с первым элементом списка.

X
нет
= 3 [1 | 2, 3, 4] - первая часть правила не выполняется, 1 заносится в стек, рекурсивный вызов для хвоста [2, 3, 4]

X
да
= 3 [2 | 3, 4] - первая часть правила не выполняется, 2 заносится в стек, рекурсивный вызов для хвоста [3, 4]

X = 3 [3 | 4] первая часть правила выполняется, результирующий список принимает значение хвоста L = [4]. Элементы извлекаются из стека по одному и становятся в голову списка L.

L = [1, 2, 4]

5. Вставка символа X в список

Определим отношение ins(X, L, L1), где

X – добавляемый элемент в список

L – исходный список

L1 – список, полученный в результате вставки элемента Х в список L

Отношение ins(X, L, L1) можно определить через del(X, L1, L). Если для отношения del(X, L1, L) список L1 – исходный список, содержащий элемент Х, то для ins(X, L, L1) список L1 является результирующим. Список L, не содержащий Х, для del(X, L1, L) – результирующий, а для ins(X, L, L1) – исходный.

ins(X, L, L1): - del(X, L1, L).

Например, для вставки элемента 5 в список [1, 2, 3] необходимо составить запрос:

GOAL

ins(5, [1, 2, 3], L),Write (L), nl, fail.

Результат:

[5, 1, 2, 3]

[1, 5, 2, 3]

[1, 2, 5, 3]

[1, 2, 3, 5]

Примечание: так как отношение ins(X, L, L1) определено через del (X, L1, L), то в разделе CLAUSES должно быть описано также правило del(X, L1, L).

Литература


  1. Адаменко А., Кучуров А. Логическое программирование и Visual Prolog.-CПб., 2003.

  2. Братко И. Программирование на языке ПРОЛОГ для искуственного интеллекта.- М., 1990.

  3. Ин Ц., Соломон Д. Использование Турбо-Пролога. -М., 1993.

  4. Клоксин У., Меллиш К. Программирование на языке ПРОЛОГ. -М., 1991.

  5. Макаллистер Дж. Искусственный интеллект и Пролог на микроЭВМ.- М., 1990.

  6. Нильсон Н. Искусственный интеллект. М., 1973.

  7. Попов Э.В. Экспертные системы. М., 1987.

  8. Симонс Дж. ЭВМ пятого поколения: компьютеры 90-х годов.- М.,1985 г.

  9. Тимофеев А.В. Информатика и искусственный интеллект.- М.,1992.

  10. Янсон А. Турбо-Пролог в сжатом изложении. -М.,1990.






1   2   3   4

Похожие:

Основы искусственного интеллекта iconУчебно-методический комплекс по дисциплине “основы искусственного интеллекта”
...
Основы искусственного интеллекта icon«Основы искусственного интеллекта»
Рабочая учебная программа по дисциплине «Основы искусственного интеллекта» для ооп «050100 Физика и информатика по циклу б в. 13...
Основы искусственного интеллекта iconУчебно-методический комплекс по дисциплине “основы искусственного интеллекта” для специальности
...
Основы искусственного интеллекта iconУчебно-методический комплекс по дисциплине “основы искусственного интеллекта” для специальности
...
Основы искусственного интеллекта iconВ. К. Финн к структурной когнитологии: феноменология сознания с точки зрения искусственного интеллекта
Ки и искусственного интеллекта – полигона экспериментальной проверки научных средств имитации рациональности и продуктивного мышления....
Основы искусственного интеллекта iconКонспект лекций по дисциплине «Системы искусственного интеллекта»
Место среди других наук, первые шаги и современные направления искусственного интеллекта
Основы искусственного интеллекта icon«шаг за шагом» создание искусственного интеллекта гашева Светлана
Интеллект рассматривают как прикладную область исследований, связанных с имитацией отдельных функций интеллекта человека [6]. Распознавание...
Основы искусственного интеллекта iconФилософия искусственного интеллекта в свете новой методологии познания
М.: Философия искусственного интеллекта. Материалы Всероссийской междисциплинарной конференции, иф ран, 2005 г., с. 143-146
Основы искусственного интеллекта iconО работе научного советаран по методологии искусственного интеллекта
Первой Всероссийской междисциплинарной конференции, посвященной философским, методологическим и теоретическим проблемам искусственного...
Основы искусственного интеллекта iconСтатья рассматривает вопросы в области информационных технологий в системах: человек-машина, человек-информация. В статье раскрыты моменты: функции обработки информации,
Целью данной работы является моделирование алгоритма искусственного интеллекта на доминантах функций: интроверсии, экстраверсии;...
Разместите кнопку на своём сайте:
Библиотека


База данных защищена авторским правом ©lib.znate.ru 2014
обратиться к администрации
Библиотека
Главная страница