資源描述:
《人工智能實(shí)驗指導(dǎo)書--PROLOG語言.doc》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、《人工智能技術(shù)技術(shù)基礎(chǔ)》實(shí)驗指導(dǎo)書-5-人工智能技術(shù)基礎(chǔ)實(shí)驗指導(dǎo)書張勇編電子學(xué)院運(yùn)輸自動化科研所2011年4月《人工智能技術(shù)技術(shù)基礎(chǔ)》實(shí)驗指導(dǎo)書-5-實(shí)驗一PROLOG語言編程練習(xí)1目的與要求實(shí)驗?zāi)康模杭訌?qiáng)學(xué)生對邏輯程序運(yùn)行機(jī)能的理解,使學(xué)生掌握PROLOG語言的特點(diǎn)、熟悉其編程環(huán)境,同時為后面的人工智能程序設(shè)計做好準(zhǔn)備。實(shí)驗要求:(1)程序自選,但必須是描述某種邏輯關(guān)系的小程序。(2)跟蹤程序的運(yùn)行過程,理解邏輯程序的特點(diǎn)。(3)對原程序可作適當(dāng)修改,以便熟悉程序的編輯、編譯和調(diào)試過程。2實(shí)驗內(nèi)容或題目實(shí)驗題目:PR
2、OLOG語言編程練習(xí)實(shí)驗內(nèi)容:在TurboPROLOG或VisualProlog集成環(huán)境下調(diào)試運(yùn)行簡單的PROLOG程序,如描述親屬關(guān)系的PROLOG程序或其他小型演繹數(shù)據(jù)庫程序等。3實(shí)驗步驟與源程序?qū)嶒灢襟E:(1)啟動Windows操作環(huán)境。(2)下載、安裝TurboPROLOG,了解它的運(yùn)行模式及功能。(3)打開文件目錄,執(zhí)行prolog應(yīng)用程序,啟動Turboprolog,并按空格鍵(SPACE)進(jìn)入集成開發(fā)環(huán)境。(4)選擇Setup項,打開下拉菜單,選擇Directories項,進(jìn)行工作目錄修改,按Esc鍵退出
3、,選擇SaveConfiguration項,保存修改。(5)選擇Files項,打開下拉菜單,選擇Newfile項,進(jìn)入源程序輸入和編輯,或選擇Load項,選擇要打開的示例程序,再選擇Edit項,可以進(jìn)行編輯源程序。(6)編輯之后,可以選擇Run項,執(zhí)行程序,可以在Dialog窗口進(jìn)行詢問,即外部目標(biāo)的執(zhí)行,查看程序運(yùn)行結(jié)果,分析程序之功能。(7)仿前例,可以選擇其他程序并運(yùn)行,分析程序功能。(8)退出,選擇Quit項,可以退出TurboProlog程序,返回到Windows環(huán)境。源程序:驗證題1:domainsd=in
4、tegerpredicates《人工智能技術(shù)技術(shù)基礎(chǔ)》實(shí)驗指導(dǎo)書-5-not_(D,D)and_(D,D,D)or_(D,D,D)xor(D,D,D)clausesnot_(1,0).not_(0,1).and_(0,0,0).and_(0,1,0).and_(1,0,0).and_(1,1,1).or_(0,0,0).or_(0,1,1).or_(1,0,1).or_(1,1,1).xor(Input1,Input2,Output):-not_(Input1,N1),(1,0)not_(Input2,N2),(0,1
5、)and_(Input1,N2,N3),and_(Input2,N1,N4),or_(N3,N4,Output).驗證題2:predicatesstudent(integer,string,real)gradegoalgrade.clausesstudent(1,"zhang",90.2).student(2,"li",95.5).student(3,"wang",96.4).grade:-write("Pleaseinputname:"),readln(Name),student(_,Name,Score),nl,w
6、rite(Name,"gradeis",Score).grade:-write("Sorry,thestudentcannotfind!").驗證題3:domainsn,f=integerpredicatesfactorial(n,f)goalreadint(I),factorial(I,F),《人工智能技術(shù)技術(shù)基礎(chǔ)》實(shí)驗指導(dǎo)書-5-write(I,"!=",F).clausesfactorial(1,1).factorial(N,Res):-N>0,N1=N-1,factorial(N1,FacN1),Res=N*F
7、acN1.驗證題4:domainss=symbolpredicatesp(s)p1(s)p2(s)p3(s)p4(s)p5(s,s)p11(s)p12(s)p31(s)goalp(X),write("thexis",X).clausesp(a1):-p1(b),p2(c).p(a2):-p1(b),p3(d),p4(e).p(a3):-p1(b),p5(f,g).p1(b):-p11(b1),p12(b2).p3(d):-p31(d1).p2(c1).p4(e1).p5(f,g).p11(b1).p12(b2).p31
8、(d11).4.實(shí)驗中易出錯的地方(1)PROLOG程序中大小寫字母分別代表不同的含義,一般大寫字母開頭表示變量,小寫字母開頭表示常量,在寫程序時要注意區(qū)分。(2)子句段中規(guī)則和事實(shí)可連續(xù)排列在一起,但同一謂詞名的事實(shí)或規(guī)則必須集中排列在一起。(3)Goal段可在程序運(yùn)行時臨時給出,但必須是在開發(fā)環(huán)境中運(yùn)行程序時方可給出。若要生成