
Среда программирования: SWI-Prolog
Название работы: КР2. Вариант 10. 2 задачи на Прологе. Прикладные методы искусственного интеллекта. Искусственный интеллект и экспертные системы
Вид работы: Контрольная работа
Тематика работы: Математика, Работа с текстом, Прочие
Объем программы: 5 (по десятибалльной шкале)
Уровень сложности: 6 (по десятибалльной шкале)
Разработчик (автор):
Программист сайта kursovik.com
(письмо автору)
Данная работа написана ЧЕЛОВЕКОМ без использования ИИ
Ключевые слова: ТУСУР, ФДО, Прикладные методы искусственного интеллекта, Пролог, Рыцари и дамы, Поиск в глубину, ограничением глубины, На берег реки, приезжают 3 рыцаря, каждый со своей дамой, имеется лодка, другой берег рыцари, дама не может остаться без своего рыцаря, в обществе других рыцарей, атомы west, западный берег, east, восточный берег, списки из элементов, списки рыцарей, База знаний экспертной системы
Функции программы:
Контрольная работа 2.
Вариант 10. 2 задачи на Прологе.
Разработать 2 программы на Prolog в соответствии с заданиями:
1. Рыцари и дамы. Поиск в глубину с ограничением глубины до 16.
Рыцари и дамы
На берег реки приезжают 3 рыцаря, каждый со своей дамой. В их распоряжении имеется лодка, способная вместить не более 2-х человек. Как смогут перебраться на другой берег рыцари со своими дамами, если требуется выполнить условие: ни одна дама не может остаться без своего рыцаря в обществе других рыцарей - она тут же подвергается насилию (нравы "рыцарей" не слишком-то изменились с тех пор). Лошади переплывают реку сами, дамы гребут веслами, как и рыцари, лодка может пересекать реку сколько угодно раз.
Указания к решению. Удобно рыцарей обозначать атомами a, b и c и их соответствующих дам тоже теми же атомами. Различные состояния этой задачи задаются информацией, на каком берегу находятся лодка и списком рыцарей и дам, находящихся же на этом берегу. Поэтому структура
state(НаКакомБерегуЛодка,
СписокРыцарейНаТомБерегуГдеЛодка,
СписокДамНаТомБерегуГдеЛодка)
полностью описывает состояние. Возможные значение первого аргумента: атомы west (западный берег) и east (восточный берег). Второй и третий аргументы - списки из элементов a, b и c. В этой задаче списки рыцарей и дам нужно рассматривать как множества, т. е. не учитывать порядок перечисления и поэтому воспользоваться специальными предикатами для операций с множествами. Удобно, для отладки, так написать программу, чтобы список рыцарей (а, следовательно, дам) задавался фактом knight([a,b,c]); в этом случае легко будет менять число рыцарей для тестирования.
Начальное состояние: state(east,X,Y), где выполнено условие knight(M) и X и
Y равны как множества списку M.
Конечное состояние: state(west, M,M), где выполнено условие knight(M).
2. База знаний экспертной системы
Описание (отчет):
Есть
на 6 страниц, посмотреть оглавление
Пояснения к компиляции и запуску программы:
Для работы с программами нужно использовать файлы: "expt.pl", "kr2-1.pl", "kr2-2.PL" например, в swi-prolog.
исходники
expt
kr2-1
kr2-2Перед покупкой готовой работы не забудьте проверить её оригинальность. Запросить у администратора проверку текущей оригинальности работы по версии системы Антиплагиат.РУ
Отчет к программе. СодержаниеОписание заданий, листинги и скриншоты работы программ
Предварительный просмотр
|
Стоимость ИСХОДНОГО ТЕКСТА программы составляет 3800 руб РФ Продажа каждой работы строго учитывается, у каждой работы есть своя история продаж. |