Вход

Методы программирования игр(пролог)

Рекомендуемая категория для самостоятельной подготовки:
Решение задач*
Код 302546
Дата создания 06 октября 2013
Страниц 5
Покупка готовых работ временно недоступна.
480руб.

Описание

Задание:
Рассмотрите какую-нибудь простую детерминированную игру двух лиц с полной информацией.
1. Сформулируйте задачу в терминах И/ИЛИ-графов.
2. Определите на Прологе И/ИЛИ-пространство.
3. Напишите процедуры для построения выигрывающих стратегий в форме И/ИЛИ-деревьев, реализующие указанные методы поиска:
...

Содержание

отчет+блок-схемы+программа

Введение

Отчет по лабораторной работе №2: «Методы программирования игр»

Задание:
Рассмотрите какую-нибудь простую детерминированную игру двух лиц с полной информацией.
1. Сформулируйте задачу в терминах И/ИЛИ-графов.
2. Определите на Прологе И/ИЛИ-пространство.
3. Напишите процедуры для построения выигрывающих стратегий в форме И/ИЛИ-деревьев, реализующие указанные методы поиска:

3.2. Поиск в глубину в И/ИЛИ-графе с ограничением глубины.

Фрагмент работы для ознакомления

Министерство образования и науки Российской ФедерацииФедеральное агентство по образованиюГОУ ВПО Череповецкий государственный университетИнститут информационных технологийКафедра: ПО ЭВМДисциплина: Системы искусственного интеллектаЛабораторная работа №2«Методы программирования игр».Выполнила: студентка группы 1ПО 41 Камракова М.С. Проверила: преподаватель Майтама Е.В.Череповец 2010Отчет по лабораторной работе №2: «Методы программирования игр»Задание: Рассмотрите какую-нибудь простую детерминированную игру двух лиц с полной информацией.Сформулируйте задачу в терминах И/ИЛИ-графов.Определите на Прологе И/ИЛИ-пространство.Напишите процедуры для построения выигрывающих стратегий в форме И/ИЛИ-деревьев, реализующие указанные методы поиска:3.2. Поиск в глубину в И/ИЛИ-графе с ограничением глубины.И/Или-графВ данном графе Или-вершины соответствуют ходам человека, а И-вершины – ходам компьютера. Решение считается найденным, если нашлись такие две вершины, что – это Или-листья одной И-вершины.Программа: domainssit=integer.list=integer*gamer=string.predicatesxod(sit,integer).xodpl(integer,sit,sit,integer).after(sit,integer,sit,integer).start(integer).hello.situation(integer).addtolist(integer,list,list).find(sit,sit,integer,list).next(sit,sit).goalmakewindow(1,8,10,"Nim",0,0,25,80),hello.clausesstart(Step):-situation(21);xod(21,Step).hello:-write("It's game NIM. Let's play!"),nl,write("Vvedite ogranichenie glubini poiska: "),readint(Step),start(Step).xod(S,Step):-Step<=0,write("Ogranichenie glubini poiska");S>1,Step>0,write("Vash hod: "),readint(N),xodpl(N,S,S1,Step);S=1,write("You lose!!!").xodpl(N,S,S1,Step):-S>0,N>0,N<5,S1=S-N,Step>1,situation(S1);nl,S>0,N>0,N<5,S1=S-N,Step1=Step-1,after(S1,N,S2,Step1);S>0,N>0,N<5,S1=S-N,Step=1,situation(S1).next(S,S1):-S>0,S1=S-4,S1>=1.next(S,S1):-S>0,S1=S-3,S1>=1.next(S,S1):-S>0,S1=S-2,S1>=1.next(S,S1):-S>0,S1=S-1,S1>=1.after(S,X,S1,Step):-S>0,S1=S-4,X+4=5,S1<>0,Step>0,situation(S1);S>0,S1=S-4,X+4=5,S1>0,Step>0,Step1=Step-1,xod(S1,Step1);S=1,S1=S-4,Step>0,write("You win!!!");Step<=0,S1=S-4,S1<>0,S>0,write("Ogranichenie glubini poiska").after(S,X,S1,Step):-S>0,S1=S-3,X+3=5,S1<>0,Step>0,situation(S1);S>0,S1=S-3,X+3=5,S1>0,Step1=Step-1,Step>0,xod(S1,Step1);S=1,S1=S-3,Step>0,write("You win!!!");Step<=0,S1=S-3,S1<>0,S>0,write("Ogranichenie glubini poiska").after(S,X,S1,Step):-S>0,S1=S-2,X+2=5,S1<>0,Step>0,situation(S1);S>0,S1=S-2,X+2=5,S1>0,Step1=Step-1,Step>0,xod(S1,Step1);S=1,S1=S-1,Step>0,write("You win");Step<=0,S1=S-2,S1<>0,S>0,write("Ogranichenie glubini poiska").after(S,X,S1,Step):-S>0,S1=S-1,X+1=5,S1<>0,Step>0,situation(S1);S>0,S1=S-1,X+1=5,S1>0,Step1=Step-1,Step>0,xod(S1,Step1);S=1,S1=S-1,Step>0,write("You win!!!");Step<=0,S1=S-1,S1<>0,S>0,write("Ogranichenie glubini poiska").situation(N):-N>0,write("I "),N1=N-1,situation(N1).addtolist(N,[],[N]).addtolist(N,[N1|Ns],[N1|Ks]):-addtolist(N,Ns,Ks).find(1,S1,C,L):-C<0,write("Net win to comp ").find(1,S1,C,L):-C=0,write("Net win to comp ").find(1,S1,C,L):-C>0,1=S1,write("").find(1,S1,C,L):-C>0,next(S1,S),X=S1-S,addtolist(X,L,L1),C1=C-1,find(1,S,C1,L1),!.Пример работы программы:

Список литературы

сама делала
Очень похожие работы
Найти ещё больше
Пожалуйста, внимательно изучайте содержание и фрагменты работы. Деньги за приобретённые готовые работы по причине несоответствия данной работы вашим требованиям или её уникальности не возвращаются.
* Категория работы носит оценочный характер в соответствии с качественными и количественными параметрами предоставляемого материала. Данный материал ни целиком, ни любая из его частей не является готовым научным трудом, выпускной квалификационной работой, научным докладом или иной работой, предусмотренной государственной системой научной аттестации или необходимой для прохождения промежуточной или итоговой аттестации. Данный материал представляет собой субъективный результат обработки, структурирования и форматирования собранной его автором информации и предназначен, прежде всего, для использования в качестве источника для самостоятельной подготовки работы указанной тематики.
bmt: 0.00449
© Рефератбанк, 2002 - 2024