佛山市合誠汽車銷售服務(wù)有限公司Crea_第1頁
佛山市合誠汽車銷售服務(wù)有限公司Crea_第2頁
佛山市合誠汽車銷售服務(wù)有限公司Crea_第3頁
佛山市合誠汽車銷售服務(wù)有限公司Crea_第4頁
佛山市合誠汽車銷售服務(wù)有限公司Crea_第5頁
已閱讀5頁,還剩135頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

問題求解與博弈主要內(nèi)容狀態(tài)空間搜索技術(shù)機器博弈一些例子搭積木智力游戲:有一個農(nóng)夫帶一條狼、一只羊和一筐菜要從河的左岸乘船到右岸,但受下列條件限制:船太小,農(nóng)夫每次只能帶一樣?xùn)|西過河沒有農(nóng)夫看管,則狼要吃羊,羊要吃菜請設(shè)計一個過河方案,使得農(nóng)夫、狼、羊、菜都不能受損地過河。下棋(撲克、西洋跳棋、國際象棋、象棋等)(屬于博弈)狀態(tài)空間表示法人工智能的多個研究領(lǐng)域從求解現(xiàn)實問題的過程來看,都可抽象為一個“問題求解”過程問題求解過程實際上就是一個搜索過程為了進(jìn)行搜索,首先必須用某種形式把問題表示出來狀態(tài)空間表示法就是用來表示問題及其搜索過程的一種方法狀態(tài)空間表示法狀態(tài)空間表示法是用“狀態(tài)”和“算子”來表示問題的一種方法狀態(tài):用來描述問題求解過程中不同時刻的狀況算子:表示對狀態(tài)的操作,算子的每次使用就使問題由一種狀態(tài)變換為另一種狀態(tài)當(dāng)達(dá)到目標(biāo)狀態(tài)時,由初始狀態(tài)到目標(biāo)狀態(tài)所用算子的序列就是問題的一個解狀態(tài)空間表示法狀態(tài)狀態(tài)是描述問題求解過程中任一時刻狀況的數(shù)據(jù)結(jié)構(gòu),一般用一組變量的有序組合表示SK(SK0,SK1,…)當(dāng)給每一分量以確定的值時,就得到一個具體的狀態(tài)算子引起狀態(tài)中某些分量發(fā)生變化,從而使問題由一個狀態(tài)變?yōu)榱硪粋€狀態(tài)的操作稱為算子。產(chǎn)生式系統(tǒng)中,每一條產(chǎn)生式規(guī)則就是一個算子狀態(tài)空間由問題的全部狀態(tài)及一切可用算符所構(gòu)成的集合稱為問題的狀態(tài)空間,一般用三元組表示:(S,F,G)S:所有初始狀態(tài)構(gòu)成的集合F:算子的集合G:目標(biāo)狀態(tài)的集合例子:HanoiTower二階hanoitowerSK=(SK0,SK1)表示問題的狀態(tài),SK0表示盤片A所在的柱號,SK1表示盤片B所在的柱號全部可能的狀態(tài):S0=(1,1),S1=(1,2),S2=(1,3),S3=(2,1),S4=(2,2),S5=(2,3),S6=(3,1),S7=(3,2),S8=(3,3).問題的初始狀態(tài)集合S={S0},目標(biāo)集合為G={S4,S8}算子分別用A(i,j),B(i,j)表示A(i,j):盤片A從柱i移到柱jB(i,j):盤片B從柱i移到柱j全部可能的算子:A(1,2),A(1,3),A(2,1),A(2,3),A(3,1),A(3,2),B(1,2),B(1,3),B(2,1),B(2,3),B(3,1),B(3,2)狀態(tài)空間表表示法首先必須定定義狀態(tài)的的描述形式式,通過使使用這種描描述可把問問題的一切切狀態(tài)都表表示出來。。其實還要要定義一組組算子,通通過使用算算子可把問問題由一種種狀態(tài)轉(zhuǎn)變變?yōu)榱硪环N種狀態(tài)問題的求解解過程就是是一個不斷斷把算子作作用于狀態(tài)態(tài)的過程算子的一次次使用,就就使問題由由一種狀態(tài)態(tài)轉(zhuǎn)變?yōu)榱砹硪环N狀態(tài)態(tài)??赡苡杏卸鄠€算子子序列都可可使問題從從初始狀態(tài)態(tài)變到目標(biāo)標(biāo)狀態(tài),這這就得到了了多個解,,我們把使使用算子最最少的解稱稱為最優(yōu)解解對于任何一一種狀態(tài),,可使用的的算子可能能不止一個個,這樣由由一個狀態(tài)態(tài)所生成的的后繼狀態(tài)態(tài)就可能有有多個。當(dāng)當(dāng)對這些后后繼狀態(tài)使使用算子生生成更進(jìn)一一步狀態(tài)時時,首先應(yīng)應(yīng)對哪一狀狀態(tài)進(jìn)行操操作呢?這這取決于搜搜索策略,,不同搜索索策略的操操作順序是是不相同的的。搜索技術(shù)搜索技術(shù)是是人工智能能的基本技技術(shù)之一,在人工工智能各應(yīng)應(yīng)用領(lǐng)域中中被廣泛地地使用。早期的人工工智能程序序與搜索技技術(shù)聯(lián)系就就更為緊密密,幾乎所所有的早期期的人工智智能程序都都是以搜索索為基礎(chǔ)的的。例如,,A.Newell(艾倫··紐厄爾)和H·A·Simon(西西蒙)等人人編寫的LT(LogicTheorist)程序,J.Slagle寫的符符號積分程程序SAINT,A·Newell和H·A·Simon寫的的GPS(GeneralProblemSolver)程程序,H·Gelernter(格格倫特爾)寫的Geometrytheorem-provingmachine程序序,R.Fikes(菲克克斯)和N.Nilsson(尼爾遜遜)寫的STRIPS(StanfordResearchInstituteProblemSolver)程序以以及A.Samuel(塞繆繆爾)寫的的Chechers程序等,都使用用了各種搜搜索技術(shù)?!,F(xiàn)在,搜搜索技術(shù)滲滲透在各種種人工智能能系統(tǒng)中,可以說說沒有哪一一種人工智智能的應(yīng)用用不用搜索索方法,在在專家系統(tǒng)統(tǒng)、自然語語言理解、、自動程序序設(shè)計、模模式識別、、機器人學(xué)學(xué)、信息檢檢索和博弈弈都廣泛使使用搜技術(shù)術(shù)。搜索技術(shù)搜索問題是是AI核心心理論問題題之一一般一個問問題可以用用好幾種搜搜索技術(shù)解解決,選選擇一種好好的搜索技技術(shù)對解決決問題的效效率很有關(guān)關(guān)系,甚甚至關(guān)系到到求解問題題有沒有解解。搜索方法好好的標(biāo)準(zhǔn),一般認(rèn)認(rèn)為有兩個個:(1)搜索索空間小;(2)解最最佳。搜索技術(shù)搜索從問題題性質(zhì)上來來看,可可分為一般般搜索和博博奕搜索,從處理理方法上來來看,可可分為盲目目搜索和啟啟發(fā)式搜索索。還可以以分得更細(xì)細(xì)。當(dāng)所給定的的問題用狀狀態(tài)空間表表示時,則則求解過過程可歸結(jié)結(jié)為對狀態(tài)態(tài)空間的搜搜索。當(dāng)問題有解解時,使使用不同的的搜索策略略,找到到解的搜索索空間范圍圍是有區(qū)別別的。一般般來說,對對大空間間問題,搜搜索策略略是要解決決組合爆炸炸的問題搜索策略通常搜索策策略的主要要任務(wù)是確確定如何選選取規(guī)則的的方式。有有兩種基本本方式:一種是不考考慮給定問問題所具有有的特定知知識,系系統(tǒng)根據(jù)事事先確定好好的某種固固定排序,依次調(diào)調(diào)用規(guī)則或或隨機調(diào)用用規(guī)則,這這實際上是是盲目搜索索的方法,一般統(tǒng)統(tǒng)稱為無信信息引導(dǎo)的的搜索策略略。另一種是考考慮問題領(lǐng)領(lǐng)域可應(yīng)用用的知識,動態(tài)地地確定規(guī)則則的排序,優(yōu)先調(diào)調(diào)用較合適適的規(guī)則使使用,這這就是通常常稱為啟發(fā)發(fā)式搜索策策略或有信信息引導(dǎo)的的搜索策略略。AI領(lǐng)域的的搜索方法法(1)求任任一解路的的搜索策略略回溯法(Backtracking)爬山法(HillClimbing)寬度優(yōu)先法法(Breadth-first)深度優(yōu)先法法(Depth-first)限定范圍搜搜索法(BeamSearch)最佳優(yōu)先法法(Best-first)(2)求最最佳解路的的搜索策略略大英博物館館法(BritishMuseum)分枝界限法法(BranchandBound)動態(tài)規(guī)劃法法(DynamicProgramming)最佳圖搜索索法(A*)AI領(lǐng)域的的搜索方法法(3)求與與或關(guān)系解解圖的搜索索法一般與或圖圖搜索法(AO*)極小極大法法(Minimax)剪枝法(Alpha-betaPruning)啟發(fā)式剪枝枝法(HeuristicPruning)搜索策略分分類盲目搜索方方法盲目搜索是是不利用問問題的有關(guān)關(guān)信息,而而根據(jù)事事先確定好好的某種固固定的搜索索方法進(jìn)行行搜索。典型的盲目目搜索方法法是深度優(yōu)優(yōu)先搜索和和寬度優(yōu)先先搜索(亦亦稱廣度優(yōu)優(yōu)先搜索),這是是兩處基本本搜索方法法回溯策略例:皇后問問題在一個4××4的國際際象棋棋盤盤上,一次次一個地擺擺布四枚皇皇后棋子,擺好后后要滿足每每行、每列列和對象線線上只允許許出現(xiàn)一枚枚棋子,即即棋子間間不許相互互俘獲()()Q((1,1))()QQ((1,1))((1,1)(2,3))()Q((1,1))((1,1)(2,3))()QQ((1,1))((1,1)(2,3))((1,1)(2,4))()QQ((1,1))((1,1)(2,3))((1,1)(2,4))Q((1,1)(2,4)(3.2))()QQ((1,1))((1,1)(2,3))((1,1)(2,4))((1,1)(2,4)(3.2))()Q((1,1))((1,1)(2,3))((1,1)(2,4))((1,1)(2,4)(3.2))()((1,1))((1,1)(2,3))((1,1)(2,4))((1,1)(2,4)(3.2))()((1,1))((1,1)(2,3))((1,1)(2,4))((1,1)(2,4)(3.2))Q((1,2))()((1,1))((1,1)(2,3))((1,1)(2,4))((1,1)(2,4)(3.2))Q((1,2))Q((1,2)(2,4))()((1,1))((1,1)(2,3))((1,1)(2,4))((1,1)(2,4)(3.2))Q((1,2))Q((1,2)(2,4))Q((1,2)(2,4)(3,1))()((1,1))((1,1)(2,3))((1,1)(2,4))((1,1)(2,4)(3.2))Q((1,2))Q((1,2)(2,4))Q((1,2)(2,4)(3,1))Q((1,2)(2,4)(3,1)(4,3))遞歸的思想想從前有座山……從前有座山……

從前有座山……Fibonacci數(shù)列1202年年,意大利利家斐波那那契在提出出了一個關(guān)關(guān)于兔子繁繁殖的問題題:如如果一對兔兔子每月能能生一對小小兔(一雄雄一雌),,而每對小小兔在它出出生後的第第三個月里里,又能開開始生一對對小兔,假假定在不不發(fā)生死亡亡的情況下下,由一對對出生的小小兔開始,,50個月月后會有多多少對兔子子?當(dāng)n>1時時,F(xiàn)n+2=Fn+1+Fn,而F0=F1=1。。遞歸的思想想(續(xù))當(dāng)前狀態(tài)目標(biāo)狀態(tài)g回溯搜索算算法BACKTRACK(DATA)DATA::當(dāng)前狀態(tài)態(tài)。返回值:從從當(dāng)前狀態(tài)態(tài)到目標(biāo)狀狀態(tài)的路徑徑(以規(guī)則表表的形式表表示)或FAIL?;厮菟阉魉闼惴ㄟf歸過程BACKTRACK(DATA)1,IFTERM(DATA)RETURNNIL;2,IFDEADEND(DATA)RETURNFAIL;3,RULES:=APPRULES(DATA);4,LOOP:IFNULL(RULES)RETURNFAIL;5,R:=FIRST(RULES);6,RULES:=TAIL(RULES);7,RDATA:=GEN(R,DATA);8,PATH:=BACKTRACK(RDATA);9,IFPATH=FAILGOLOOP;10,RETURNCONS(R,PATH);存在問題及及解決辦法法問題:深度問題死循環(huán)問題題解決辦法::對搜索深度度加以限制制記錄從初始始狀態(tài)到當(dāng)當(dāng)前狀態(tài)的的路徑回溯搜索算算法1BACKTRACK1(DATALIST)DATALIST::從初始到到當(dāng)前的狀狀態(tài)表(逆逆向)返回值:從從當(dāng)前狀態(tài)態(tài)到目標(biāo)狀狀態(tài)的路徑徑(以規(guī)則表表的形式表表示)或FAIL。回溯搜索算算法11,DATA:=FIRST(DATALIST)2,IFMENBER(DATA,TAIL(DATALIST))RETURNFAIL;3,IFTERM(DATA)RETURNNIL;4,IFDEADEND(DATA)RETURNFAIL;5,IFLENGTH(DATALIST)>BOUNDRETURNFAIL;6,RULES:=APPRULES(DATA);7,LOOP:IFNULL(RULES)RETURNFAIL;8,R:=FIRST(RULES);回溯搜索算算法1(續(xù)續(xù))9,RULES:=TAIL(RULES);10,RDATA:=GEN(R,DATA);11,RDATALIST:=CONS(RDATA,DATALIST);12,PATH:=BACKTRCK1(RDATALIST)13,IFPATH=FAILGOLOOP;14,RETURNCONS(R,PATH);一些深入的的問題失敗原因分分析、多步步回溯QQ一些深入問問題(續(xù)))回溯搜索中中知識的利利用基本思想::盡可能選取取劃去對角角線上位置置數(shù)最少的的。QQQQ4334圖搜索策略略問題的引出出回溯搜索::只保留從從初始狀態(tài)態(tài)到當(dāng)前狀狀態(tài)的一條條路徑。圖搜索:保保留所有已已經(jīng)搜索過過的路徑。。一些基本概概念節(jié)點深度::根節(jié)點深度度=0其它節(jié)點深深度=父節(jié)節(jié)點深度+10123一些基本概概念(續(xù)1)路徑設(shè)一節(jié)點序序列為(n0,n1,…,nk),對于i=1,……,k,若若節(jié)點ni-1具有一個后后繼節(jié)點ni,則該序列列稱為從n0到nk的路徑。路徑的耗散散值一條路徑的的耗散值等等于連接這這條路徑各各節(jié)點間所所有耗散值值的總和。。用C(ni,nj)表示從ni到nj的路路徑徑的的耗耗散散值值。。一些些基基本本概概念念((續(xù)續(xù)1))擴展展一一個個節(jié)節(jié)點點生成成出出該該節(jié)節(jié)點點的的所所有有后后繼繼節(jié)節(jié)點點,,并并給給出出它它們們之之間間的的耗耗散散值值。。這這一一過過程程稱稱為為““擴擴展展一一個個節(jié)節(jié)點點””。。圖搜搜索索的的一一般般過過程程(1)建建立立一一個個只只含含有有起起始始節(jié)節(jié)點點S的的搜搜索索圖圖G,,把把S放放到到一一個個叫叫做做OPEN的的未未擴擴展展節(jié)節(jié)點點表表中中((簡簡稱稱OPEN表表))。。(2)建建立立一一個個叫叫做做CLOSED的的已已擴擴展展節(jié)節(jié)點點表表((簡簡稱稱CLOSED表表)),,其其初初始始為為空空表表。。(3)LOOP::若若OPEN表表是是空空表表,,則則失失敗敗退退出出。。(4)選選擇擇OPEN表表上上的的第第一一個個節(jié)節(jié)點點,,把把它它從從OPEN表表移移出出并并放放進(jìn)進(jìn)CLOSED表表中中。。稱稱此此節(jié)節(jié)點點為為節(jié)節(jié)點點n,,它它是是CLOSED表表中中節(jié)節(jié)點點的的編編號號。。(5)若若n為為一一目目標(biāo)標(biāo)節(jié)節(jié)點點,,則則有有解解并并成成功功退退出出,,此此解解是是追追蹤蹤圖圖G中中沿沿著著指指針針從從n到到S這這條條路路徑徑而而得得到到的的(指指針針將將在在第第7步步中中設(shè)設(shè)置置)。。(6)擴擴展展節(jié)節(jié)點點n,,同同時時生生成成不不是是n的的祖祖先先的的那那些些后后繼繼節(jié)節(jié)點點的的集集合合M。。把把M的的這這些些成成員員作作為為n的的后后繼繼節(jié)節(jié)點點添添入入圖圖G中中。。(7)對對那那些些未未曾曾在在G中中出出現(xiàn)現(xiàn)過過的的(既既未未曾曾在在OPEN表表上上或或CLOSED表表上上出出現(xiàn)現(xiàn)過過的的)M成成員員設(shè)設(shè)置置一一個個通通向向n的的指指針針。。把把M的的這這些些成成員員加加進(jìn)進(jìn)OPEN表表。。對對已已經(jīng)經(jīng)在在OPEN或或CLOSED表表上上的的每每一一個個M成成員員,,確確定定是是否否需需要要更更改改通通到到n的的指指針針方方向向。。對對已已在在CLOSED表表上上的的每每個個M成成員員,,確確定定是是否否需需要要更更改改圖圖G中中通通向向它它的的每每個個后后裔裔節(jié)節(jié)點點的的指指針針方方向向。。(8)按按某某一一任任意意方方式式或或按按某某個個探探試試值值,,重重排排OPEN表表。。(9)GOLOOP。。OPEN表表節(jié)點點父節(jié)節(jié)點點CLOSED表表標(biāo)號號節(jié)點點父節(jié)節(jié)點點例子子例子子::從從某某王王姓姓家家族族的的四四代代中中找找王王A的的后后代代且且其其壽壽命命為為X的的人人。。王A::壽壽命命47,,有有兒兒子子王王B1、、王王B3、、王王B2王B1::壽壽命命77,,有有兒兒子子王王C1、、王王C2王B3::壽壽命命52,,有有兒兒子子王王D1王B2::壽壽命命65,,有有兒兒子子王王E1、、王王E2王F1::壽壽命命32王G1::壽壽命命96王C2::壽壽命命87,,有有兒兒子子王王F1王D1::壽壽命命77,,沒沒有有兒兒子子王E1::壽壽命命57,,有有兒兒子子王王G1王E2::壽壽命命92,,有有兒兒子子王王H1王C1::壽壽命命27,,沒沒有有兒兒子子王H1::壽壽命命51若X=57,,如如何何尋尋找找??無信信息息圖圖搜搜索索過過程程深度度優(yōu)優(yōu)先先搜搜索索(1)把把起起始始節(jié)節(jié)點點S放放到到未未擴擴展展節(jié)節(jié)點點OPEN表表中中。。如如果果此此節(jié)節(jié)點點為為一一目目標(biāo)標(biāo)節(jié)節(jié)點點,,則則得得到到一一個個解解。。(2)如如果果OPEN為為一一空空表表,,則則失失敗敗退退出出。。(3)把把第第一一個個節(jié)節(jié)點點(節(jié)節(jié)點點n)從從OPEN表表移移到到CLOSED表表。。(4)如如果果節(jié)節(jié)點點n的的深深度度等等于于最最大大深深度度,,則則轉(zhuǎn)轉(zhuǎn)向向(2)。。(5)擴擴展展節(jié)節(jié)點點n,,產(chǎn)產(chǎn)生生其其全全部部后后裔裔,,并并把把它它們們放放入入OPEN表表的的前前頭頭。。如如果果沒沒有有后后裔裔,,則則轉(zhuǎn)轉(zhuǎn)向向(2)。。(6)如如果果后后繼繼節(jié)節(jié)點點中中有有任任一一個個為為目目標(biāo)標(biāo)節(jié)節(jié)點點,,則則求求得得一一個個解解,,成成功功退退出出;;否否則則,,轉(zhuǎn)轉(zhuǎn)向向(2)。。無信信息息圖圖搜搜索索過過程程寬度度優(yōu)優(yōu)先先搜搜索索(1)把把起起始始節(jié)節(jié)點點放放到到OPEN表表中中(如如果果該該起起始始節(jié)節(jié)點點為為一一目目標(biāo)標(biāo)節(jié)節(jié)點點,,則則求求得得一一個個解解答答)。。(2)如如果果OPEN是是個個空空表表,,則則沒沒有有解解,,失失敗敗退退出出;;否否則則繼繼續(xù)續(xù)。。(3)把把第第一一個個節(jié)節(jié)點點(節(jié)節(jié)點點n)從從OPEN表表移移出出,,并并把把它它放放入入CLOSED擴擴展展節(jié)節(jié)點點表表中中。。(4)擴擴展展節(jié)節(jié)點點n。。如如果果沒沒有有后后繼繼節(jié)節(jié)點點,,則則轉(zhuǎn)轉(zhuǎn)向向上上述述第第(2)步步。。(5)把把n的的所所有有后后繼繼節(jié)節(jié)點點放放到到OPEN表表的的末末端端,,并并提提供供從從這這些些后后繼繼節(jié)節(jié)點點回回到到n的的指指針針。。(6)如如果果n的的任任一一個個后后繼繼節(jié)節(jié)點點是是個個目目標(biāo)標(biāo)節(jié)節(jié)點點,,則則找找到到一一個個解解答答,,成成功功退退出出;;否否則則轉(zhuǎn)轉(zhuǎn)向向第第(2)步步231847652318476528314765231847652831476528316475283147652831647528316475283714658321476528143765283145761237846512384765283641752831675483214765283714652814376528314576123456789abcd12384765目標(biāo)標(biāo)深度優(yōu)先搜索索的性質(zhì)一般不能保證證找到最優(yōu)解解當(dāng)深度限制不不合理時,可可能找不到解解,可以將算算法改為可變變深度限制最壞情況時,,搜索空間等等同于窮舉與回溯法的差差別:圖搜索索是一個通用的的與問題無關(guān)關(guān)的方法23184765231847652831476523184765283147652831647528314765283164752831647528371465832147652814376528314576123784651238476512567312384765目標(biāo)8234187654寬度優(yōu)先搜索索的性質(zhì)當(dāng)問題有解時時,一定能找找到解當(dāng)問題為單位位耗散值,且且問題有解時時,一定能找找到最優(yōu)解方法與問題無無關(guān),具有通通用性效率較低屬于圖搜索方方法非啟發(fā)式搜索索按照事先規(guī)定定的路線進(jìn)行行搜索廣度優(yōu)先搜索索是按“層””進(jìn)行搜索的的,先進(jìn)入OPEN表表的節(jié)點先被被考察深度優(yōu)先搜索索是沿著縱深深方向進(jìn)行搜搜索的,后進(jìn)進(jìn)入OPEN表的節(jié)點先先被考察按已經(jīng)付出的的代價決定下下一步要搜索索的節(jié)點代價樹的廣度度優(yōu)先代價樹的深度度優(yōu)先啟發(fā)式圖搜索索利用知識來引引導(dǎo)搜索,達(dá)達(dá)到減少搜索索范圍,降低低問題復(fù)雜度度的目的。啟發(fā)性信息用于指導(dǎo)搜索索過程,且與與具體問題求求解有關(guān)的控控制性信息稱稱為啟發(fā)性信信息啟發(fā)信息的強強度強:降低搜索索工作量,但但可能導(dǎo)致找找不到最優(yōu)優(yōu)解弱:一般導(dǎo)致致工作量加大大,極限情況況下變?yōu)槊っつ克阉鳎赡芸梢哉艺业阶顑?yōu)解希望:引入啟發(fā)知識識,在保證找找到最佳解的的情況下,盡盡可能減少搜搜索范圍,提提高搜索效率率?;舅枷攵x一個評價價函數(shù)f,對對當(dāng)前的搜索索狀態(tài)進(jìn)行評評估,找出一一個最有希望望的節(jié)點來擴擴展。1,啟發(fā)式搜搜索算法A((A算法)評價函數(shù)的格格式:f(n)=g(n)+h(n)f(n):評評價函數(shù)g(n):實實際已已經(jīng)付出的代代價函數(shù)h(n):啟啟發(fā)函數(shù)符號的意義g*(n)::從s到n的的最短路徑的的耗散值h*(n)::從n到g的的最短路徑的的耗散值f*(n)=g*(n)+h*(n):從s經(jīng)經(jīng)過n到g的的最短路徑的的耗散值g(n)、h(n)、f(n)分別別是g*(n)、h*(n)、f*(n)的估估計值一個A算法的的例子定義評價函數(shù)數(shù):f(n)=g(n)+h(n)g(n)為從從初始節(jié)點到到當(dāng)前節(jié)點的的耗散值h(n)為當(dāng)當(dāng)前節(jié)點“不不在位”的將將牌數(shù)2831647512384765h計算舉例h(n)=428316475123457682831647528314765283164752831647523184765283147652831476528371465832147652318476523184765123847651238476512378465s(4)A(6)B(4)C(6)D(5)E(5)F(6)G(6)H(7)I(5)J(7)K(5)L(5)M(7)目標(biāo)123456最佳圖搜索算算法A*(A*算法)在A算法中,,如果滿足條條件:h(n)≤h*(n)則A算法稱為為A*算法。。A*條件舉例例8數(shù)碼問題h(n)=“不在位位”的將牌數(shù)數(shù)h(n)=將牌“不在位位”的距離和和2

831

647512345768將牌1:1將牌2:1將牌6:1將牌8:2A*算法的性性質(zhì)定理1:對有限圖,如如果從初始節(jié)節(jié)點s到目標(biāo)標(biāo)節(jié)點t有路路徑存在,則則算法A一定定成功結(jié)束。。問題圖搜索是針對對什么知識表表示方法的問問題求解方法法?什么是圖搜索索?其中,,重排OPEN表意味著著什么,重排排的原則是什什么?寬度優(yōu)先搜索索方法中OPEN表需要要按什么方式式進(jìn)行操作A.先進(jìn)后出出B..先進(jìn)先出有界深度優(yōu)先先搜索方法能能夠保證在搜搜索樹中找到到一條通向目目標(biāo)節(jié)點的最最短途徑嗎??試比較各種盲盲目搜索搜索索方法的效率率,找出影響響算法效率的的原因試比較寬度優(yōu)優(yōu)先搜索、有有界深度優(yōu)先先搜索及有序序搜索的搜索索效率,并以以實例數(shù)據(jù)加加以說明啟發(fā)式搜索的的必要性現(xiàn)實的困難迫迫使人們轉(zhuǎn)而而求援于啟發(fā)發(fā)式算法。這這種算法的本本質(zhì)是部分地地放棄算法““一般化,通通用化”的的概念,把把所要解的問問題的具體領(lǐng)領(lǐng)域的知識識加進(jìn)算法中中去,以提提高算法的效效率。如,廣度優(yōu)優(yōu)先法幾乎可可以用于解一一切搜索問題題:九宮圖(八數(shù)碼難題題),hanoi塔(焚塔問題),旅行推推銷員,華華容道,以以至魔方等等等。但實際使使用時,效效率也許低得得驚人,甚甚至根本解不不出來(例如如魔方問題)。如果我們?yōu)槊棵款悊栴}找出出一些特殊規(guī)規(guī)則,和廣廣度優(yōu)先法配配合起來使用用,那結(jié)果果就可能完全全不一樣了。。啟發(fā)式搜索的的必要性根據(jù)啟發(fā)信息息,在生成成各種搜索樹樹時可以考慮慮種種可能的的選擇,如如:1.下一步步展開哪個節(jié)節(jié)點?2.是部分分展開還是完完全展開?3.使用哪哪個規(guī)則(或或算子)?4.怎樣決決定舍棄還是是保留新生成成的節(jié)點?5.怎樣決決定舍棄還是是保留一棵子子樹?6.怎樣決決定停止或繼繼續(xù)搜索?7.如何定定義啟發(fā)函數(shù)數(shù)(評價函數(shù)數(shù))?8.如何決決定搜索方向向?……由于這些選擇擇的不同,就就得到了不不同的啟發(fā)式式算法*解路徑如粗粗線所標(biāo)左、、上、右、下下**S、A、、B、…、L、M等為狀狀態(tài)空間圖中中各個節(jié)點名名,其后的的小括號中數(shù)數(shù)字表示該節(jié)節(jié)點的評價函函數(shù)f(n)的估計值,例如S(4)、L(5)等。***圖圖中標(biāo)記"▲"節(jié)點為為被擴的節(jié)點點,標(biāo)記"■"的節(jié)點點為生成的節(jié)節(jié)點。九宮重排問題題搜索效率比較較啟發(fā)式搜索策策略人工智能問題題求解者在兩兩種基本情況況下運用啟發(fā)發(fā)式策略:一個問題由于于在問題陳述述和數(shù)據(jù)獲取取方面固有的的模糊性可能能使它沒有一一個確定的解解。醫(yī)療診斷斷即是一例。。所給出的一一系列癥狀可可能有多個原原因,醫(yī)生生運用啟發(fā)式式搜索來選擇擇最有可能的的論斷并依此此產(chǎn)生治療計計劃。一個問題可能能有確定解,但是求解解過程中的計計算機代價令令人難以接受受。在很多問問題(如國際際象棋)中,狀態(tài)空間間的增長特別別快,可能能的狀態(tài)數(shù)隨隨著搜索的深深度呈指數(shù)級級增長、分解解。在這種情情況下,窮窮盡式搜索策策略諸如深度度優(yōu)先或廣度度優(yōu)先搜索,在一個給給定的較實際際的時空內(nèi)很很可能得不到到最終的解和發(fā)明創(chuàng)造的的所有規(guī)則一一樣,啟發(fā)發(fā)式策略也是是極易出錯的的圖搜索策略圖搜索策略的的定義圖搜索策略可可看作一種在在圖中尋找路路徑的方法。。初始節(jié)點和和目標(biāo)節(jié)點分分別代表初始始數(shù)據(jù)庫和滿滿足終止條件件的數(shù)據(jù)庫。。求得把一個個數(shù)據(jù)庫變換換為另一數(shù)據(jù)據(jù)庫的規(guī)則序序列問題就等等價于求得圖圖中的一條路路徑問題。研研究圖搜索的的一般策略,,能夠給出圖圖搜索過程的的一般步驟。。圖搜索算法中中的幾個重要要名詞術(shù)語(1)OPEN表與CLOSE表(2)搜索圖圖與搜索樹你可曾聽說過過“深藍(lán)”??1997年5月11日,,IBM開發(fā)發(fā)的“深藍(lán)”擊敗了國際際象棋冠軍卡卡斯帕羅夫。。1980年他他獲得世界少少年組冠軍1982年他他并列奪得蘇蘇聯(lián)冠軍1985年22歲的卡斯斯帕羅夫成為為歷史上最年輕輕的國際象棋冠軍積分是2849,這一分分?jǐn)?shù)是有史以以來最高分。。遠(yuǎn)遠(yuǎn)領(lǐng)先于第第二位的克拉拉姆尼克的2770卡氏何許人也也?電腦棋手:永永不停歇的挑挑戰(zhàn)!1988年““深思”擊敗了丹麥麥特級大師拉拉森。1993年““深思”第二代擊敗敗了丹麥?zhǔn)澜缃鐑?yōu)秀女棋手手小波爾加。。電腦棋手:永永不停歇的挑挑戰(zhàn)!2001年““更弗里茨”擊敗了除除了克拉姆尼尼克之外的所所有排名世界界前十位的棋棋手。2002年10月“更弗里茨”與世界棋王王克拉姆尼克克在巴林交手手,雙方以4比4戰(zhàn)平。。2003年1至2月“更年少者”與卡斯帕羅羅夫在紐約較較量,3比3戰(zhàn)平。許多人在努力力

機器博弈20世紀(jì)50年代,有人人設(shè)想利用機機器智能來實實現(xiàn)機器與人人的對弈。1997年IBM的“深深藍(lán)”戰(zhàn)勝了了國際象棋世世界冠軍卡斯斯帕羅夫,驚驚動了世界。。加拿大阿爾伯伯塔大學(xué)的奧奧賽羅程序Logistello和和西洋跳棋程程序Chinook也相相繼成為確定定的、二人、、零和、完備備信息游戲世世界冠軍西洋雙陸棋這這樣的存在非非確定因素的的棋類也有了了美國卡內(nèi)基基梅隆大學(xué)的的西洋雙陸琪琪程序BKG這樣的世界界冠軍。對圍棋、中國國象棋、橋牌牌、撲克等許許多種其它種種類游戲博弈弈的研究也正正在進(jìn)行中。。機器博弈的基基本思想機器博弈的核核心思想就是是對博弈樹節(jié)節(jié)點的估值過過程和對博弈弈樹搜索過程程的結(jié)合博弈樹在博弈的任何何一個中間階階段,站在博博弈雙方其中中一方的立場場上,可以構(gòu)構(gòu)想一個博弈弈樹。這個博博弈樹的根節(jié)節(jié)點是當(dāng)前時時刻的棋局,,它的兒子節(jié)節(jié)點是假設(shè)再再行棋一步以以后的各種棋棋局,孫子節(jié)節(jié)點是從兒子子節(jié)點的棋局局再行棋一步步的各種棋局局,以此類推推,構(gòu)造整棵棵博弈樹,直直到可以分出出勝負(fù)的棋局局。機器博弈系統(tǒng)統(tǒng)的構(gòu)成知識表示規(guī)則集,產(chǎn)生生機制,構(gòu)建建博弈樹搜索技術(shù)估值技術(shù)博弈搜索博弈搜索的基基本思想已經(jīng)經(jīng)提出半個多多世紀(jì),目前前廣泛研究的的是確定的、、二人、零和和、完備信息息的博弈搜索索。沒有隨機因素素的博弈在兩兩個人之間進(jìn)進(jìn)行,在任何何一個時刻,,一方失去的的利益即為另另一方得到的的利益,不會會出現(xiàn)“雙贏贏”的局面,,而且在任何何時刻,博弈弈的雙方都明明確的知道每每一個棋子是是否存在和存存在于哪里。。二人、、零和和、完完備信信息的的博弈弈搜索索理論論已經(jīng)經(jīng)很系系統(tǒng)。。極大大極小小算法法是所所有搜搜索算算法的的基礎(chǔ)礎(chǔ)。一類是是作為為主流流的深深度優(yōu)優(yōu)先的的alpha-beta搜索索及其其系列列增強強算法法另一類類是最最佳優(yōu)優(yōu)先的的系列列算法法。解謎::電腦腦是怎怎樣下下棋的的——人人機博博弈程程序的的一般般設(shè)計計方法法以中國國棋棋為為例(1))第一一步該該做什什么??數(shù)據(jù)結(jié)結(jié)構(gòu)的的選取取——棋盤表表示占用空空間-〉少少操作速速度-〉快快是否方方便-〉方方便在機器器中表表示棋棋局,,讓程程序知知道博弈狀狀態(tài)。。九列十十行十四種種不同同的棋棋子三十二二個棋棋子幾種棋棋盤表表示的的方式式二維數(shù)數(shù)組———直直觀緊湊的的數(shù)據(jù)據(jù)結(jié)構(gòu)構(gòu)———省空空間,,不直直觀,速速度?比特棋棋盤———用用于8*8棋盤盤(國國際象象棋),,64位主主機(2))接下下來怎怎么辦辦?產(chǎn)生合合法走走步的的規(guī)則則,使使博弈弈能公公正的的進(jìn)行行,并并且能能夠判判斷對對手是是否亂亂走。。依賴賴于具體棋棋類特特征。是一段段將局局面所所有可可能的的正確確走法法羅列列出來來的程程序。。稱之之為走法產(chǎn)產(chǎn)生。幾種走走法產(chǎn)產(chǎn)生的的實現(xiàn)現(xiàn)方式式一般做做法建立小小型數(shù)數(shù)據(jù)庫庫位運算算位運算算走法法產(chǎn)生生之例例尋找象象的可可走步步位運算算走法法產(chǎn)生生之要要求一個基基于比比特棋棋盤的的完善善的數(shù)數(shù)據(jù)庫庫該數(shù)據(jù)據(jù)庫應(yīng)應(yīng)位于于內(nèi)存存中(3))終于于到核核心了了從所有有的走走法中中找出出最佳佳的走走法,,也就是是———搜索博弈概概述諸如下下棋、、打牌牌、競競技、、戰(zhàn)爭爭等一一類競競爭性性智能能活動動稱為為博弈弈。博博弈有有很多多種,,我們們討論論最簡簡單的的"二二人零零和、、全信信息、、非偶偶然"博弈弈,其其特征征如下下:(1)對對壘壘的MAX、MIN雙方方輪流流采取取行動動,博博弈的的結(jié)果果只有有三種種情況況:MAX方勝勝,MIN方敗?。籑IN方勝勝,MAX方敗??;和和局。。(2)在在對壘壘過程程中,,任何何一方方都了了解當(dāng)當(dāng)前的的格局局及過過去的的歷史史。(3)任任何何一方方在采采取行行動前前都要要根據(jù)據(jù)當(dāng)前前的實實際情情況,,進(jìn)行行得失失分析析,選選取對對自已已為最最有利利而對對對方方最為為不利利的對對策,,不存存在擲擲骰子子之類類的"碰運運氣"因素素。即即雙方方都是是很理理智地地決定定自己己的行行動。。博弈概概述在博弈弈過程程中,,任何何一方方都希希望自自己取取得勝勝利。。因此此,當(dāng)當(dāng)某一一方當(dāng)當(dāng)前有有多個個行動動方案案可供供選擇擇時,,他總總是挑挑選對對自己己最為為有利利而對對對方方最為為不利利的那那個行行動方方案。。此時時,如如果我我們站站在MAX方的的立場場上,,則可可供MAX方選選擇的的若干干行動動方案案之間間是"或"關(guān)系系,因因為主主動權(quán)權(quán)操在在MAX方方手里里,他他或者者選擇擇這個個行動動方案案,或或者選選擇另另一個個行動動方案案,完完全由由MAX方方自已已決定定。當(dāng)當(dāng)MAX方方選取取任一一方案案走了了一步步后,,MIN方方也有有若干干個可可供選選擇的的行動動方案案,此此時這這些行行動方方案對對MAX方方來說說它們們之間間則是是"與與"關(guān)關(guān)系,,因為為這時時主動動權(quán)操操在MIN方手手里,,這些些可供供選擇擇的行行動方方案中中的任任何一一個都都可能能被MIN方選選中,,MAX方方必須須應(yīng)付付每一一種情情況的的發(fā)生生。博弈概概述這樣,,如果果站在在某一一方(如MAX方,,即MAX要取取勝),把把上述述博弈弈過程程用圖圖表示示出來來,則則得到到的是是一棵棵"與與或樹樹"。。描述述博弈弈過程程的與與或樹樹稱為為博弈弈樹,,它有有如下下特點點:(1)博博弈弈的初初始格格局是是初始始節(jié)點點。(2)在在博博弈樹樹中,,"或或"節(jié)節(jié)點和和"與與"節(jié)節(jié)點是是逐層層交替替出現(xiàn)現(xiàn)的。。自己己一方方擴展展的節(jié)節(jié)點之之間是是"或或"關(guān)關(guān)系,,對方方擴展展的節(jié)節(jié)點之之間是是"與與"關(guān)關(guān)系。。雙方方輪流流地擴擴展節(jié)節(jié)點。。(3)所所有自自己一一方獲獲勝的的終局局都是是本原原問題題,相相應(yīng)的的節(jié)點點是可可解節(jié)節(jié)點;;所有有使對對方獲獲勝的的終局局都認(rèn)認(rèn)為是是不可可解節(jié)節(jié)點。。我我們假假定MAX先走走,處處于奇奇數(shù)深深度級級的節(jié)節(jié)點都都對應(yīng)應(yīng)下一一步由由MAX走走,這這些節(jié)節(jié)點稱稱為MAX節(jié)點點,相相應(yīng)地地偶數(shù)數(shù)級為為MIN節(jié)節(jié)點。。搜索算算法極大極極小值值算法法負(fù)極大大值搜搜索深度優(yōu)優(yōu)先的的alpha-beta搜搜索渴望搜搜索((AspirationSearch))極小窗窗口搜搜索((MinimalWindowSearch))遍歷深深化((IterativeDeepening))歷史啟啟發(fā)搜搜索((HistoryHeuristic))殺手啟啟發(fā)搜搜索(KillerHeuristic)MTD(f)算算法((Memory––enhancedTestDriverwithfandn))極大極極小法法基本思思想或或算法法是::(1)設(shè)設(shè)博弈弈的雙雙方中中一方方為MAX,另另一方方為MIN。然然后為為其中中的一一方(例如如MAX)尋找找一個個最優(yōu)優(yōu)行動動方案案。(2)為為了了找到到當(dāng)前前的最最優(yōu)行行動方方案,,需要要對各各個可可能的的方案案所產(chǎn)產(chǎn)生的的后果果進(jìn)行行比較較,具具體地地說,,就是是要考考慮每每一方方案實實施后后對方方可能能采取取的所所有行行動,,并計計算可可能的的得分分。(3)為為計計算得得分,,需要要根據(jù)據(jù)問題題的特特性信信息定定義一一個估估價函函數(shù),,用來來估算算當(dāng)前前博弈弈樹端端節(jié)點點的得得分。。此時時估算算出來來的得得分稱稱為靜靜態(tài)估估值。。極大大極極小小法法((續(xù)續(xù)))(4)當(dāng)當(dāng)端端節(jié)節(jié)點點的的估估值值計計算算出出來來后后,,再再推推算算出出父父節(jié)節(jié)點點的的得得分分,,推推算算的的方方法法是是::對對““或或””節(jié)節(jié)點點,,選選其其子子節(jié)節(jié)點點中中一一個個最最大大的的得得分分作作為為父父節(jié)節(jié)點點的的得得分分,,這這是是為為了了使使自自己己在在可可供供選選擇擇的的方方案案中中選選一一個個對對自自己己最最有有利利的的方方案案;;對對““與與””節(jié)節(jié)點點,,選選其其子子節(jié)節(jié)點點中中一一個個最最小小的的得得分分作作為為父父節(jié)節(jié)點點的的得得分分,,這這是是為為了了立立足足于于最最壞壞的的情情況況。。這這樣樣計計算算出出的的父父節(jié)節(jié)點點的的得得分分稱稱為為倒倒推推值值。。(5)如如果果一一個個行行動動方方案案能能獲獲得得較較大大的的倒倒推推值值,,則則它它就就是是當(dāng)當(dāng)前前最最好好的的行行動動方方案案。。一字字棋棋游游戲戲極極小小極極大大分分析析法法設(shè)有有九九個個空空格格,,由由MAX,,MIN二二人人對對弈弈,,輪輪到到誰誰走走棋棋誰誰就就往往空空格格上上放放一一只只自自己己的的棋棋子子,,誰誰先先使使自自己己的的棋棋子子構(gòu)構(gòu)成成““三三子子成成一一線線””(同同一一行行或或列列或或?qū)墙蔷€線全全是是某某人人的的棋棋子子),,誰誰就就取取得得了了勝勝利利。。用叉叉號號表表示示MAX,,用用圓圓圈圈代代表表MIN。。一字字棋棋游游戲戲極極小小極極大大分分析析法法為了了不不致致于于生生成成太太大大的的博博弈弈樹樹,,假假設(shè)設(shè)每每次次僅僅擴擴展展兩兩層層。。估估價價函函數(shù)數(shù)定定義義如如下下設(shè)棋棋局局為為P,,估估價價函函數(shù)數(shù)為為e(P)(1)若若P對對任任何何一一方方來來說說都都不不是是獲獲勝勝的的位位置置,,則則e(P)=e(那那些些仍仍為為MAX空空著著的的完完全全的的行行、、列列或或?qū)墙蔷€線的的總總數(shù)數(shù))-e(那那些些仍仍為為MIN空空著著的的完完全全的的行行、、列列或或?qū)墙蔷€線的的總總數(shù)數(shù))(2)若若P是是MAX必必勝勝的的棋棋局局,,則則e(P)==+∞∞。。(3)若若P是是B必必勝勝的的棋棋局局,,則則e(P)==-∞∞。。一字字棋棋極極大大極極小小法法的的第第一一階階段段一字字棋棋極極大大極極小小法法的的第第二二階階段段一字字棋棋極極大大極極小小法法的的第第三三階階段段Alpha-Beta剪剪枝枝技技術(shù)術(shù)基本本思思想想或或算算法法是是,,邊邊生生成成博博弈弈樹樹邊邊計計算算評評估估各各節(jié)節(jié)點點的的倒倒推推值值,,并并且且根根據(jù)據(jù)評評估估出出的的倒倒推推值值范范圍圍,,及及時時停停止止擴擴展展那那些些已已無無必必要要再再擴擴展展的的子子節(jié)節(jié)點點,,即即相相當(dāng)當(dāng)于于剪剪去去了了博博弈弈樹樹上上的的一一些些分分枝枝,,從從而而節(jié)節(jié)約約了了機機器器開開銷銷,,提提高高了了搜搜索索效效率率。。Alpha-Beta剪剪枝枝技技術(shù)術(shù)(1)對對于于一一個個與與節(jié)節(jié)點點MIN,,若若能能估估計計出出其其倒倒推推值值的的上上確確界界ββ,,并并且且這這個個ββ值值不不大大于于MIN的的父父節(jié)節(jié)點點(一一定定是是或或節(jié)節(jié)點點)的的估估計計倒倒推推值值的的下下確確界界αα,,即即αα≥≥ββ,,則則就就不不必必再再擴擴展展該該MIN節(jié)節(jié)點點的的其其余余子子節(jié)節(jié)點點了了(因因為為這這些些節(jié)節(jié)點點的的估估值值對對MIN父父節(jié)節(jié)點點的的倒倒推推值值已已無無任任何何影影響響了了)。。這這一一過過程程稱稱為為αα剪剪枝枝。。(2)對對于于一一個個或或節(jié)節(jié)點點MAX,,若若能能估估計計出出其其倒倒推推值值的的下下確確界界αα,,并并且且這這個個αα值值不不小小于于MAX的的父父節(jié)節(jié)點點(一一定定是是與與節(jié)節(jié)點點)的的估估計計倒倒推推值值的的上上確確界界ββ,,即即αα≥≥ββ,,則則就就不不必必再再擴擴展展該該MAX節(jié)節(jié)點點的的其其余余子子節(jié)節(jié)點點了了(因因為為這這些些節(jié)節(jié)點點的的估估值值對對MAX父父節(jié)節(jié)點點的的倒倒推推值值已已無無任任何何影影響響了了)。。這這一一過過程程稱稱為為ββ剪剪枝枝。。搜索索算算法法最佳佳優(yōu)優(yōu)先先算算法法SSS*和和DUAL*算算法法B*和和PB*算算法法Alpha-Beta剪剪枝枝Alpha-Beta搜搜索索和極極大大極極小小搜搜索索結(jié)結(jié)合合在奇奇數(shù)數(shù)層層進(jìn)進(jìn)行行Alpha剪剪枝枝,,偶偶數(shù)數(shù)層層Beta剪剪枝枝。。和負(fù)負(fù)極極大大值值搜搜索索結(jié)結(jié)合合在每每一一層層都都進(jìn)進(jìn)行行Beta剪剪枝枝。。(4))最最后后評估估局局面面優(yōu)優(yōu)劣劣,,配配合合搜搜索索技技術(shù)術(shù)做做出出智智能能的的選選擇擇————估值技術(shù)棋子價值值評估SideValue=Sum(piecenumber*piecevalue)棋子靈活活性Mobility=Sum(movenumber*movevalue)棋盤控制制棋子關(guān)系系的評估估(威脅脅、保護(hù)護(hù)、形、、定勢。。并且要要考慮到到誰走棋棋)估值的幾幾種形式式終點估值值思路清晰晰,容易易設(shè)計,,模塊獨獨立性高高,同搜索算算法耦合合程度低低速度慢棋子價值值表T[pieceType][boardWidth][boardHeight]二者結(jié)合合動態(tài)棋子子價值表表估值函數(shù)數(shù)的內(nèi)容容及其調(diào)調(diào)試Score=aX+bY+cZ+dK+………X=車+馬+炮炮+………參數(shù)確定定的方法法手工調(diào)整整爬山法蒙特卡羅羅模擬退火火遺傳算法法爬山法的的缺陷———初值值依賴蒙特卡羅羅使用多種種初始參參數(shù),從從不同的的地方開開始多次次爬山有足夠多多次的爬爬山,出出現(xiàn)頻率率最高的的結(jié)果是是最優(yōu)解解的概率率就會足足夠大不同初值值的大量量采樣,,使運算算效率低低模擬退火火MetroPolis重要性性采樣的的基本思思想:在在尋優(yōu)的的開始使使用較高高的概率率進(jìn)行隨隨機突跳跳,隨著著尋優(yōu)過過程的深深入逐步步降低這這一接受受不佳參參數(shù)概率率。并且且隨著搜搜索的深深入,可可接受的的參數(shù)的的不佳程程度也越越來越小小。模擬退火火一次對參參數(shù)改變變一點,,測試。。提高,保保留不提高,,在一定定概率上上繼續(xù)由粗到細(xì)細(xì),逼近近最優(yōu)參參數(shù)遺傳算法法隨機產(chǎn)生生一組初初始個體構(gòu)成初始始種群,并評價價每一個個體的適配值。判斷算法法收斂準(zhǔn)準(zhǔn)則是否否滿足,,若滿足足則輸出出搜索結(jié)結(jié)果,否否則執(zhí)行行以下步步驟。根據(jù)適配配值大小小以一定定方式執(zhí)執(zhí)行復(fù)制操作。按交叉概概率pc之行交叉操作。按變異概概率pm執(zhí)行變異操作。返回上面面第二步步驟。遺傳算法法適配值::對個體體進(jìn)行評評價的指指標(biāo),算算法優(yōu)化化的主要要信息,,與個體體的目標(biāo)標(biāo)值對應(yīng)應(yīng)復(fù)制:復(fù)復(fù)制概率率正比于于適配值值交叉:交交換父代代個體中中的部分分信息產(chǎn)產(chǎn)生后代代,繼承承變異:隨隨機改變變個體中中的某些些信息產(chǎn)產(chǎn)生新個個體,增增加種群群多樣性性標(biāo)準(zhǔn)遺傳傳算法優(yōu)優(yōu)化框圖圖GeneticAlgorithms優(yōu)優(yōu)越性性全空間并并行搜索索,重點點集中在在高性能能部分,,防止陷陷入局部部最優(yōu)孰優(yōu)孰劣劣?名局測試試和其他博博弈程序序?qū)倪x不同的的參數(shù),,自相對對弈同向下幾幾層的搜搜索結(jié)果果比較啟發(fā)式搜搜索的一一個例子子井字博弈弈中,博博弈者在在3X3數(shù)組中中輪流標(biāo)標(biāo)記,一一個標(biāo)記記X,一一個標(biāo)記記O,先用標(biāo)標(biāo)記填滿滿一行、、一列或或一條對對角線者者便贏得得博弈。。初始狀狀態(tài)為空空棋盤,,從起點點到終點點的路徑徑表明了了贏棋的的走法。。啟發(fā)式搜搜索的一一個例子子一個簡單單的啟發(fā)發(fā)式策略略幾乎可可以整個個地消除除復(fù)雜的的搜索過過程。假假設(shè)我方方為“X”,首首先,將棋棋子走到到棋盤上上×有最最多的贏贏線的點點啟發(fā)式搜搜索的一一個例子子啟發(fā)信息息:將棋棋子走到到棋盤上上×有最最多的贏贏線的點點衡量一個個搜索策策略性能能的準(zhǔn)則則完備性只要問題題有解,,在搜索索策略的的控制下下就一定定能找到到這個((些)解解盡量避免免無用搜

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論