Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Список использованных источников




 

1. Малпас Дж. Реляционный язык Пролог и его применение.- М.: Наука, 1990.-464 с.

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

.   Курс лекций по предмету “Системы искусственного интеллекта” Михалев А.Г.

.   «Встроенные предикаты Турбо- Пролога»: методические указания часть 1,2,3/ Б.В. Казаков, И.А. Казакова, А.Г. Михалёв, О.С. Дорофеева; под редакцией проф. Б.Г. Хмелевского. - Пенза: издательство ПГУ, 1998 г.


Приложение А

.pro

include "Vopros.pro"=integer*=Symbol(RNO,GATE,GATE,Cond,Cond)(1,"ТЕЛЕФОН","Alcatel One Touch 512",[10,20,30,40,111,120],[53,64,70,80,90,100,130,140,151,160,171,181,191,201,211]).(2,"ТЕЛЕФОН","Alcatel One Touch 512i",[10,20,30,40,111,120],[53,64,70,80,90,100,130,140,151,160,171,181,191,201,210]).(3,"ТЕЛЕФОН","Motorolla T190",[10,20,31,41,110,120],[51,63,70,80,91,100,131,140,150,160,170,181,191,201,211]).(4,"ТЕЛЕФОН","Ericsson T65",[11,21,30,40,111,120],[53,62,70,81,90,101,130,141,151,160,170,180,191,204,211]).(5,"ТЕЛЕФОН","LG W7000",[10,20,30,40,113,121],[54,65,71,80,91,101,130,140,150,160,170,181,190,204,211]).(6,"ТЕЛЕФОН","LG W5200",[12,20,30,40,113,121],[50,65,71,80,91,100,130,141,150,161,170,180,190,204,211]).(7,"ТЕЛЕФОН","Motorolla T720",[10,20,30,40,113,121],[52,64,71,80,90,100,131,140,150,160,170,181,190,201,210]).(8,"ТЕЛЕФОН","Nokia 6100",[12,20,31,40,113,120],[52,66,70,80,90,100,130,140,150,160,170,180,190,203,210]).(9,"ТЕЛЕФОН","Sony CMP-J70",[10,21,30,41,110,120],[53,61,71,80,91,100,131,141,151,160,170,181,191,202,211]).(10,"ТЕЛЕФОН","Siemens C55",[10,21,30,41,111,120],[52,60,71,81,91,100,131,140,151,161,170,181,191,200,211]).(11,"ТЕЛЕФОН","Ericsson R520",[10,21,30,41,110,120],[52,62,70,81,91,101,130,140,151,160,171,180,191,203,211]).(12,"ТЕЛЕФОН","Alcatel One Touch 715",[11,20,31,40,112,120],[52,61,71,80,90,100,131,141,150,161,170,181,190,202,211]).(13,"ТЕЛЕФОН","Alcatel One Touch 310",[10,20,30,41,110,120],[52,61,70,80,91,101,130,141,151,160,171,181,191,200,211])..pro"Baza.pro"= myfile(BNO)(BNO)(Integer)(BNO)(Integer)(String)(GATE)_No(BNO)_Yes(Nom,BNO)_1(BNO)_number(Nom)(Cond,GATE,integer)(RNO,Cond,Cond,integer,integer)(Cond,RNO,BNO,String,integer,integer)(Cond,RNO,String,BNO,integer,integer,integer)

Opred_Kolva_Cond(integer,integer)(Cond,integer,integer) _Yes

%------------------Предикаты критерия_crit(RNO,Cond,Cond)_crit(Cond,RNO,BNO,String)_crit(Cond,RNO,String,BNO,integer)

% Приближенный поиск_Cond(BNO,Cond) _Rule(Cond,Cond)_y(Cond,Cond) _Param(Cond)_Other_Param(X):-not(Rabota([],X,100)),otv(1),!.

Consultat(_):-otv(2),nl,("В точности таких телефонов у нас нет, но можем предложить Вам\n наиболее подходящие по основным критериям\n"),nl,/*нажмите кнопку*/

openappend(myfile,"List.txt"),(myfile),

write("В точности таких телефонов у нас нет, но можем предложить Вам \n наиболее подходящие по основным критериям\n"),nl,

closefile(myfile),Pol_Other_Param,fail.(_).

%--------------------------------------------(_,X,Y):-(rule(_,X,_,_,_)),!,not(tel(X)),

nl,write("Ваш выбор это - ",X," с уверенностью - ",Y,"%"),

openappend(myfile,"List.txt"),(myfile),

nl,write("Ваш выбор это - ",X," с уверенностью - ",Y,"%"),

closefile(myfile),(tel(X)),nl.(History,X,_):-rule(RNO,X,Ny,Cond1,Cond),_crit(RNO,History,Cond1),(RNO,History,Cond,100,Z),_Yes,([RNO|History],Ny,Z),fail.(_,_,_):-fail.

%-------------------------------------------- _crit(RNO,History,[BNO|Rest]):-yes(BNO),!,_crit(RNO,History,Rest)._crit(_,_,[BNO|_]):-No(BNO),!,fail. _crit(RNO,History,[BNO|Rest]):-otv(2),Cond(BNO,TEXT,_),_crit(History,RNO,BNO,TEXT),_crit(RNO,History,Rest). _crit(_,_,[]).(RNO,History,[BNO|Rest],P,Z):-yes(BNO),!,(RNO,History,Rest,P,Z).(RNO,HISTORY,[BNO|REST],P,Z):-Neuveren(BNO),!,_Kolva_Cond(BNO,I),=P-P/I,(RNO,History,Rest,P1,Z).(_,_,[BNO|_],_,_):-No(BNO),!,fail.(RNO,History,[BNO|Rest],P,Z):-otv(2),Cond(BNO,TEXT,_),<>0,(History,RNO,BNO,TEXT,P,P1),(RNO,History,Rest,P1,Z). (_,_,[],P,P):-P<>0.

%--------------------------------------------_crit(History,RNO,BNO,TEXT):-Write("Вопрос: ",TEXT,"?"),(" (1-Да;2-Нет) "),(myfile,"List.txt"),(myfile),("Вопрос: ",TEXT,"?"),(" (1-Да;2-Нет) "),(myfile),(Resp),_crit(History,RNO,TEXT,BNO,Resp).(History,RNO,BNO,TEXT,P,P1):-

Write("Вопрос: ",TEXT,"?"),(" (1-да;2-нет;3-не уверен.) "),(myfile,"List.txt"),(myfile),

Write("Вопрос: ",TEXT,"?"),(" (1-да;2-нет;3-не уверен.) "),(myfile),(Resp),(History,RNO,TEXT,BNO,Resp,P,P1).

%_______________________________________________crit(_,_,_,_,0):-exit._crit(_,_,_,BNO,1):-!,Asserta(yes(BNO)),Zapis_No(BNO),("<ДА>"),nl,(myfile,"List.txt"),(myfile),("<ДА>"),nl,(myfile)._crit(_,_,_,BNO,2):-!,Asserta(no(BNO)),("<НЕТ>"),nl,(myfile,"List.txt"),(myfile),("<НЕТ>"),nl,(myfile),. _crit(History,RNO,Text,BNO,_):-Vopros_crit(History,RNO,BNO,TEXT),!. (_,_,_,_,0,P,P):-exit.(_,_,_,BNO,1,P,P):-

!,Asserta(yes(BNO)),Zapis_No(BNO),("<ДА>"),nl,(myfile,"List.txt"),(myfile),("<ДА>"),nl,(myfile).(_,_,_,BNO,2,P,P):-

!,Asserta(no(BNO)),("<НЕТ>"),nl,(myfile,"List.txt"),(myfile),("<НЕТ>"),nl,(myfile),.(_,_,_,BNO,3,P,P1):-

!,Neuveren_1(BNO),_Kolva_Cond(BNO,I),("<НЕ УВЕРЕН>"),nl,=P-P/I,(myfile,"List.txt"),(myfile),("<НЕУВЕРЕН>"),nl,(myfile).(History,RNO,Text,BNO,_,P,P1):-Vopros(History,RNO,BNO,TEXT,P,P1),!.

%--------------------------------------------_Yes:-otv(2),asserta(otv(1)),Retract(otv(2)),!. _Yes:-!.

%--------------------------------------------_Kolva_Cond(B,K):-Cond(B,_,T),findall(X,cond(X,_,T),L),(L,0,I),K=I.

%--------------------------------------------_1(Bn):-Cond(BN,_,T),Zapis_number(T).

%--------------------------------------------_number(T):-Cond(B,_,T),not(asserta(neuveren(B)))._number(_).


 

%--------------------------------------------_No(Bn):-Cond(BN,_,T),Zapis_Yes(T,Bn).

%--------------------------------------------_Yes(T,Bn):-Cond(B,_,T),Bn<>B,not(asserta(no(B)))._Yes(_,_).

%--------------------------------------------([],I,I):-!.([_|T],J,I):-J1=J+1,Kolvo(T,J1,I).

%--------------------------------------------:-retract(yes(_)),fail.:-retract(no(_)),fail.:-retract(neuveren(_)),fail.:-retract(otv(_)),fail.:-retract(veroyat(_)),fail.:-retract(tel(_)),fail.._Cond(X,[X|_]):-!._Cond(X,[_|L]):-_Cond(X,L),!._Rule([H|C],R):-

!,_Cond(H,R),_Rule(C,R),!._Rule(_,_)._y([H|L],[H|R]):-(H),_y(L,R),!._y([_|L],R):-_y(L,R),!.


 

Otvet_y(_,[]). _Param(R):-(X,Crit(X),L),_y(L,R)._Other_Param:-Pol_Param(C),(_,_,T,R,_),_Rule(C,R),,(T),(myfile,"List.txt"),(myfile),(T),nl,(myfile),(tel(T)),fail._Other_Param:-not(tel(_)),!._Other_Param:-Vivod_Yes..pro=15000"ex.pro"=integer= other; esc; up; down; enter; fkey(integer); char(integer) _menu_cur(integer)(KEY,integer,integer)(integer,integer)(integer)


 

ReadKey(KEY)(KEY,char,integer)(KEY,integer)(integer)

%--------------------------------------------------------------:-(1,7,32,"Экспертная система",0,0,25,80),

My_menu,

clear,.

%--------------------------------------------------------------_menu:-(4,30,47," КОНСУЛЬТАНТ ПО СОТОВЫМ ТЕЛЕФОНАМ ",9,21,9,38),nl,

write(" 1 Консультация"),nl,

write(" 2 Редактирование (Vopros.pro)"),nl,(" 3 Редактирование (Baza.pro)"),nl,

write(" 4 Помощь"),nl,(" 5 Выход"),(1).

%--------------------------------------------------------------(Pos):-_cur(Pos),(KEY),(KEY,Pos,Pos_a),(Pos_a).

%--------------------------------------------------------------_cur(Pos):-


 

Pos=1,_attr(1,1,33,112),(1,1); Pos<>0,!.

%--------------------------------------------------------------(A,B):- A>4,B=0,!;A<1,B=5,!;B=A,!.

%--------------------------------------------------------------(KEY):-(T),_int(T,VAL),(KEY,T,VAL).

%--------------------------------------------------------------(KEY,_,0):-

!,readchar(T),_int(T,VAL),(KEY,VAL).(esc,_,27):-!.(enter,_,13):-!.(char(T),T,_).

%--------------------------------------------------------------(up,72):-!.(down,80):-!.(other,77):-!.(other,75):-!.

%--------------------------------------------------------------(KEY,P,P):- =esc,,.(KEY,P,P):- =enter,(P),!.(KEY,Pos_e,Pos_a):- =down,_attr(Pos_e,1,33,30),(Pos_e,S),=S+1,(M,1),_attr(M,1,33,112),_a=M,!.(KEY,Pos_e,Pos_a):- =up,_attr(Pos_e,1,33,30),=Pos_e-1,(Stop,S),(S,1),_attr(S,1,33,112),_a=S,!.(_,P,P):-!.

%--------------------------------------------(1):-,(myfile,"List.txt"),(myfile),(""),(myfile),("ТЕЛЕФОН"), %ex.pro,(otv(2)),(_),,_menu.(2):-,_str("Vopros.pro", S),(S,A,"","Vopros.pro","",1,"",1,0,1,0,_,_),(myfile,"Vopros.pro"),(myfile),(A),(myfile),,_Menu.(3):-,_str("Baza.pro", S),(S,A,"","Baza.pro","",1,"",1,0,1,0,_,_),(myfile,"Baza.pro"),(myfile),(A),(myfile),,_menu.(4):-, (4,75,47," ПОМОЩЬ ",1,5,23,70),nl,_str("Help.txt",S),(S),,_menu.(5):-, exit.,(otv(2)),..pro,RNO,Nom=integer(BNO,STRING,Nom)

Crit(BNO) % основные параметры отбора в случае неудачи поиска

Clauses(10,"Стандарт GSM",1).(11,"Стандарт EGSM",1).

Cond(12,"Стандарт Mobile",1).(20,"С виброзвонком",2).(21,"Без виброзвонка",2).(30,"Русский язык",3).(31,"Английский язык",3).(40,"С доступом в Интернет",4).(41,"Без доступа в Интернет",4).(50,"3 строки",5).(51,"4 строк",5).(52,"5 строк",5).(53,"6 строк",5).(54,"10 строк",5).(60,"5 мелодий",6).(61,"16 мелодий",6).(62,"20 мелодий",6).(63,"27 мелодий",6).(64,"30 мелодий",6).(65,"40 мелодий",6).(66,"> 40 мелодий",6).(70,"С программиованием мелодий",7).(71,"Без программирования мелодий",7).(80,"С калькулятором",8).(81,"Без калькулятора",8).(90,"С голосовым набором",9).(91,"Без голосового набора",9).(100,"Игры",10).(101,"Без игр",10).(110,"100$ < Цена < 150$",11).(111,"150$ < Цена < 200$",11).(112,"200$ < Цена < 250$",11).(113,"Цена > 250$",11).(120,"Обычный корпус",12).(121,"Корпус: книжка",12).(130,"Со звуковой индикацией кнопок",13).(131,"Без звуковой индикации кнопок",13).(140,"Сменные панели",14).(141,"Без сменных панелей",14).(150,"С будильником",15).(151,"Без будильника",15).(160,"Имеется контроль времени",16).(161,"Контроля времени нет",16).(170,"Часы",17).(171,"Часов нет",17).(180,"Календарь",18).(181,"Без календаря",18).(190,"Диктофон",19).(191,"Без диктофона",19).(200,"Время работы в режиме разговора до 3 часов",20).(201,"Время работы в режиме разговора до 5 часов",20).(202,"Время работы в режиме разговора до 6 часов",20).(203,"Время работы в режиме разговора до 10 часов",20).(204,"Время работы в режиме разговора более 10 часов",20).(210,"MP-3 плеер",21).(211,"Без MP-3 плеера",21).

% Основной Параметр - Стандарт(10). (11). (12).

% Основной Параметр - Вибро(20). (21).

% Основной параметр - язык(30). (31).

%Основной параметр - цена(110).(111).(112).(113).

%Основной параметр - корпус(120).(121).

%Основной параметр - доступ в интернет(40).(41).


Приложение Б

 

Опрос №1

Вопрос: Стандарт GSM? (1-Да;2-Нет) <НЕТ>

Вопрос: Стандарт EGSM? (1-Да;2-Нет) <ДА>

Вопрос: Без виброзвонка? (1-Да;2-Нет) <НЕТ>

Вопрос: С виброзвонком? (1-Да;2-Нет) <ДА>

Вопрос: Английский язык? (1-Да;2-Нет) <ДА>

Вопрос: С доступом в Интернет? (1-Да;2-Нет) <ДА>

Вопрос: 200$ < Цена < 250$? (1-Да;2-Нет) <ДА>

Вопрос: Обычный корпус? (1-Да;2-Нет) <ДА>

Вопрос: 5 строк? (1-да;2-нет;3-не уверен.) <НЕУВЕРЕН>

Вопрос: 16 мелодий? (1-да;2-нет;3-не уверен.) <НЕУВЕРЕН>

Вопрос: Без программирования мелодий? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: С калькулятором? (1-да;2-нет;3-не уверен.) <НЕУВЕРЕН>

Вопрос: С голосовым набором? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: Игры? (1-да;2-нет;3-не уверен.) <НЕУВЕРЕН>

Вопрос: Без звуковой индикации кнопок? (1-да;2-нет;3-не уверен.) <НЕУВЕРЕН>

Вопрос: Без сменных панелей? (1-да;2-нет;3-не уверен.) <НЕУВЕРЕН>

Вопрос: С будильником? (1-да;2-нет;3-не уверен.) <НЕУВЕРЕН>

Вопрос: Контроля времени нет? (1-да;2-нет;3-не уверен.) <НЕУВЕРЕН>

Вопрос: Часы? (1-да;2-нет;3-не уверен.) <НЕУВЕРЕН>

Вопрос: Без календаря? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: Диктофон? (1-да;2-нет;3-не уверен.) <НЕУВЕРЕН>

Вопрос: Время работы в режиме разговора до 6 часов? (1-да;2-нет;3-не уверен.) <НЕУВЕРЕН>

Вопрос: Без MP-3 плеера? (1-да;2-нет;3-не уверен.) <НЕУВЕРЕН>

Ваш выбор это - Alcatel One Touch 715 с уверенностью - 1%

Опрос№2

Вопрос: Стандарт GSM? (1-Да;2-Нет) <ДА>

Вопрос: С виброзвонком? (1-Да;2-Нет) <ДА>

Вопрос: Русский язык? (1-Да;2-Нет) <ДА>

Вопрос: С доступом в Интернет? (1-Да;2-Нет) <ДА>

Вопрос: 150$ < Цена < 200$? (1-Да;2-Нет) <ДА>

Вопрос: Обычный корпус? (1-Да;2-Нет) <ДА>

Вопрос: 6 строк? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: 30 мелодий? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: С программиованием мелодий? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: С калькулятором? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: С голосовым набором? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: Игры? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: Со звуковой индикацией кнопок? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: Сменные панели? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: Без будильника? (1-да;2-нет;3-не уверен.) <НЕТ>

В точности таких телефонов у нас нет, но можем предложить Вам наиболее подходящие по основным критериям

Alcatel One Touch 512One Touch 512i

Опрос №3

Вопрос: Стандарт GSM? (1-Да;2-Нет) <ДА>

Вопрос: С виброзвонком? (1-Да;2-Нет) <ДА>

Вопрос: Русский язык? (1-Да;2-Нет) <ДА>

Вопрос: С доступом в Интернет? (1-Да;2-Нет) <ДА>

Вопрос: 150$ < Цена < 200$? (1-Да;2-Нет) <ДА>

Вопрос: Обычный корпус? (1-Да;2-Нет) <ДА>

Вопрос: 6 строк? (1-да;2-нет;3-не уверен.) <НЕУВЕРЕН>

Вопрос: 30 мелодий? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: С программиованием мелодий? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: С калькулятором? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: С голосовым набором? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: Игры? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: Со звуковой индикацией кнопок? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: Сменные панели? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: Без будильника? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: Имеется контроль времени? (1-да;2-нет;3-не уверен.) <НЕУВЕРЕН>

Вопрос: Часов нет? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: Без календаря? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: Без диктофона? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: Время работы в режиме разговора до 5 часов? (1-да;2-нет;3-не уверен.) <ДА>

Вопрос: Без MP-3 плеера? (1-да;2-нет;3-не уверен.) <НЕУВЕРЕН>

Ваш выбор это - Alcatel One Touch 512 с уверенностью - 20%

Ваш выбор это - Alcatel One Touch 512i с уверенностью - 20%

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...