??在本章中作儿,我們將看到關(guān)于狀態(tài)空間的信息是如何能夠防止算法在黑暗中跌跌撞撞的拘悦。
1.有信息的搜索策略
? ?我們要考慮的通用算法叫做“最佳優(yōu)先搜索”(名字古老而不太準(zhǔn)確)塌忽。它一般是將TREE-SEARCH和GRAPTH-SEARCH結(jié)合起來(lái),它要擴(kuò)展的節(jié)點(diǎn)是基于評(píng)價(jià)函數(shù)f(n)來(lái)決定的绍在。
? 注意:評(píng)價(jià)函數(shù)有時(shí)不能真正的評(píng)價(jià)優(yōu)劣感帅,這將將搜索引入歧途斗锭。
? ?BEST-FIRST-SEARCH算法有一整個(gè)家族,其中不同的方法是使用不同的評(píng)價(jià)函數(shù)失球,這些算法的一個(gè)關(guān)鍵點(diǎn)為啟發(fā)函數(shù)(heuristic function)岖是,標(biāo)記為h(n):
? h(n)=從節(jié)點(diǎn)n到目標(biāo)節(jié)點(diǎn)的最低耗散路徑的耗散值。
1.1貪婪最佳優(yōu)先搜索
? ?貪婪最佳優(yōu)先搜索实苞,從名字可以知道貪婪算法的思想豺撑。每次搜索擴(kuò)展節(jié)點(diǎn)的時(shí)候,試圖擴(kuò)展離目標(biāo)節(jié)點(diǎn)最近的節(jié)點(diǎn)黔牵,因此它只用啟發(fā)函數(shù)f(n)=h(n)來(lái)評(píng)價(jià)節(jié)點(diǎn)聪轿。
? 例子:尋路問(wèn)題--在一個(gè)國(guó)家中尋找由城市A到城市B最近的路線。當(dāng)然猾浦,你有一副地圖陆错。路線結(jié)果為從A城市到B城市所要經(jīng)過(guò)的城市的順序列表灯抛。小路神馬就不考慮了。
? 貪婪最佳優(yōu)先搜索首先會(huì)列出從A出發(fā)能直接到達(dá)的所有城市音瓷, 并計(jì)算每一個(gè)能直接到達(dá)的城市距離和B的距離对嚼,然后選擇最近的那個(gè)城市作為從A出發(fā)所到達(dá)的第一個(gè)城市,然后依次類推绳慎,直至到達(dá)城市B纵竖。
? 該搜索方法很簡(jiǎn)單,簡(jiǎn)單到明顯有很多缺點(diǎn):不能保證最優(yōu)偷线,不具有完備性磨确,如果不注意重復(fù)可能會(huì)出現(xiàn)震蕩的情況……但它畢竟讓我們邁出了第一步沽甥,壞的東西總比沒(méi)有的好声邦。
1.2A*搜索:最小化總的估計(jì)解耗散
? 它把到達(dá)節(jié)點(diǎn)的耗散g(n)和從該節(jié)點(diǎn)到目標(biāo)節(jié)點(diǎn)的耗散h(n)結(jié)合起來(lái)進(jìn)行評(píng)價(jià)。
f(n) = g(n) + h(n)
? 該搜索算法很合理摆舟、很優(yōu)秀亥曹。以至于我不知道該怎么摘錄《人工智能:一種現(xiàn)代方法》中的文字、或者利用自己的問(wèn)題來(lái)形容恨诱。具體分析請(qǐng)見(jiàn)《人工智能:一種現(xiàn)代方法》中內(nèi)容媳瞪。
1.3儲(chǔ)存限制的啟發(fā)式搜索
? ?A*算法減少儲(chǔ)存/空間復(fù)雜度的辦法就是把迭代深入的思想用在啟發(fā)式搜索上。我們稱之為迭代深入A*算法或者IDA*算法照宝。IDA*算法和典型的迭代深入算法最主要的區(qū)別就是蛇受,所用的截?cái)嘀挡皇撬阉魃疃龋呛纳⒅礷 = g + h厕鹃。IDA*對(duì)很多單位耗散問(wèn)題都適用兢仰,但在實(shí)數(shù)耗散值的時(shí)候會(huì)出現(xiàn)困難(具體見(jiàn)《人工智能:一種現(xiàn)代方法》習(xí)題3.11)。以下考慮兩種儲(chǔ)存限制搜索算法剂碴,RBFS和MA*把将。
? function RECRSIVE-BEST-FIRST-SEARCH(problem) returns a solution, or failure
RBFS(problem,MAKE-NODE(INITIAL-STATE[problem]),∞)
function RBFS(problem,node,f_limit) returns a solution, or failure and a new f_cost limit
if GOAL-TEST[problem](state) then return node
successors <--- EXPAND(node,problem)
if successors is empty then return failure,∞
for each s in successors do
f[s] <--- max(g(s)+f(s),f[node])
repeat
best <--- the lowest f-value node in successors
if f[best] > f_limit then return failure, f[best]
alternative <--- the second lowest f-value among successors
result, f[best] <--- RBFS(problem,best,min(f_limit,alternative))
if result ≠failure then return result
? ? RBFS的特點(diǎn)可以說(shuō)是“一步一回頭”忆矛,它會(huì)通過(guò)“alternative <--- the second lowest f-value among successors”來(lái)記錄與當(dāng)前節(jié)點(diǎn)相平行層次的次優(yōu)節(jié)點(diǎn)值察蹲,當(dāng)向下搜索,當(dāng)前最優(yōu)點(diǎn)的后繼的評(píng)價(jià)函數(shù)值大于次優(yōu)解時(shí)催训,放棄當(dāng)前最優(yōu)解洽议,轉(zhuǎn)而向次優(yōu)解。但上述代碼有一點(diǎn)問(wèn)題漫拭,應(yīng)該在最后“if result ≠failure then return result”之后加上“best <--- alternative, remove the lowest f-value node in successors”亚兄。將舍棄的最優(yōu)解從successors中刪除,repeat才有意義嫂侍,否則repeat會(huì)重復(fù)循環(huán)而失去了篩選最優(yōu)解的意義儿捧。
? ? IDA*和RBFS的優(yōu)點(diǎn)是空間復(fù)雜度底荚坞,缺點(diǎn)是……太低了……IDA*只保留一個(gè)數(shù)字:當(dāng)前的f耗散值。RBFS保留的多一些菲盾。為了充分利用內(nèi)存颓影,由此改進(jìn)出了兩個(gè)算法,MA*(儲(chǔ)存限制A*)和SMA*(簡(jiǎn)化MA*)懒鉴。SMA*和A*一樣會(huì)擴(kuò)展最佳節(jié)點(diǎn)诡挂,直至內(nèi)存放滿為止,但當(dāng)內(nèi)存放滿之后临谱,它會(huì)像RBFS一樣遺忘一個(gè)最差的節(jié)點(diǎn)璃俗,并將它備份到父節(jié)點(diǎn)。當(dāng)其他所有路徑比被遺忘的節(jié)點(diǎn)都差的時(shí)候悉默,SMA*才會(huì)利用那個(gè)節(jié)點(diǎn)重新生成子樹(shù)城豁。具體算法略(原書(shū)中也省略了,比較復(fù)雜抄课,原文是“完整的算法在這里浮現(xiàn)太復(fù)雜了唱星!”)。
2.啟發(fā)函數(shù)
? ? 如何設(shè)計(jì)一個(gè)啟發(fā)函數(shù)跟磨?
? ? 首先設(shè)計(jì)一個(gè)松弛問(wèn)題间聊,即降低了限制的問(wèn)題。然后設(shè)計(jì)該松弛問(wèn)題的最優(yōu)解抵拘。該最優(yōu)解的耗散值哎榴,是一個(gè)可采納的啟發(fā)函數(shù)。當(dāng)設(shè)計(jì)了多個(gè)啟發(fā)函數(shù)時(shí)僵蛛,可以采用如下公式:
? ? h(n) = max{h1(n),h2(n),...,hm(n)}
? ? 可采納的啟發(fā)式也可以通過(guò)給定問(wèn)題的子問(wèn)題的最優(yōu)解的耗散得到尚蝌。模式數(shù)據(jù)庫(kù)就是儲(chǔ)存每個(gè)可能的子問(wèn)題的實(shí)例的精確耗散。這樣墩瞳,每個(gè)搜索的開(kāi)銷就分?jǐn)偟搅嗣總€(gè)子問(wèn)題上驼壶。這里也可以采取上述最大值原則。
? ? 總結(jié):設(shè)計(jì)啟發(fā)函數(shù)方法有松弛問(wèn)題法和子問(wèn)題法(不限于這兩種)喉酌,綜合啟發(fā)函數(shù)的方法有最大值法和平均數(shù)法(不限于這兩種)热凹。
3.超越經(jīng)典搜索算法
3.1 局部搜索和最優(yōu)化問(wèn)題
? ? 在搜索問(wèn)題中,如果到目標(biāo)的路徑無(wú)關(guān)緊要泪电,那么將引出不關(guān)心路徑的算法般妙。局部搜索算法從單獨(dú)的一個(gè)當(dāng)前狀態(tài)(而不是多條路徑)出發(fā),通常只移動(dòng)到與之相鄰的狀態(tài)相速。典型情況下碟渺,搜索的路徑是不保留的,雖然局部搜索算法不是最優(yōu)化的突诬,但是它有兩個(gè)關(guān)鍵的優(yōu)點(diǎn):(1)只用很少的內(nèi)存苫拍,通常是一個(gè)常數(shù)芜繁。它們經(jīng)常能夠在不適合或者不能用系統(tǒng)化算法的很大的或者無(wú)限的狀態(tài)空間中找到合理的解。除了找到目標(biāo)绒极,局部搜索算法對(duì)于解決純粹的最優(yōu)化問(wèn)題很有用骏令,其目標(biāo)是根據(jù)一個(gè)目標(biāo)函數(shù)找到最佳的狀態(tài)。
? 3.1.1爬山法搜索
function HILL-CLIMBING(problem) returns a state that is local maximum
inputs:problem, a problem
local variables:current, a node
neighbor,a node
current <--- MAKE-NODE(INITIAL-STATE[problem])
loop do
neighbor <--- a higest-valued successor of current
if VALUE[neighbor] =< VALUE(current) then return STATE[current]
current <--- neighbor
? 爬山搜索算法垄提,節(jié)點(diǎn)的后繼中榔袋,如果存在目標(biāo)函數(shù)的值大于當(dāng)前節(jié)點(diǎn)的,移動(dòng)到該后繼節(jié)點(diǎn)铡俐,如此循環(huán)凰兑。最終會(huì)返回一個(gè)局部最大值。該搜索算法的最大缺點(diǎn)是:局部最大值不一定是全局最大值审丘。
3.1.2模擬退火算法
function SIMULATED-ANNEALING(problem,schedule) returns a solution state
inputs:problem, a problem
schedule, a mapping from time to "temperature"
local variables:current, a node
next, a node
T, a "temperature" controlling the probability of downward steps
current <--- MAKE-NODE(INITISL-STATE[problem])
for t <--- 1 to ∞ do
T <--- schedule[t]
if T = 0 then return current
next <--- a random selected successor of current
ΔE <--- VALUE[next] - VALUE[current]
if ΔE > 0 then current <--- next
else current <--- next only with probability e^(ΔE/T)
? ?模擬退火算法和爬山搜索算法很像吏够,不同之處在于(1)模擬退火算法的后繼是隨機(jī)選取的,而爬山算法是選擇目標(biāo)函數(shù)最大且大于當(dāng)前目標(biāo)節(jié)點(diǎn)值的备恤。(2)模擬退火算法最終的返回的時(shí)刻由函數(shù)schedule[t]來(lái)決定稿饰,而不是由后繼達(dá)到某種狀態(tài)來(lái)決定的。(3)當(dāng)后繼的目標(biāo)函數(shù)值大于當(dāng)前節(jié)點(diǎn)的目標(biāo)函數(shù)值時(shí)露泊,兩者都會(huì)將節(jié)點(diǎn)移動(dòng)到后繼,但當(dāng)后繼的值小于當(dāng)前節(jié)點(diǎn)時(shí)旅择,模擬退火算法按照一定的概率(e^(ΔE/T))來(lái)確定是否將節(jié)點(diǎn)移動(dòng)到后繼節(jié)點(diǎn)惭笑。
3.1.3局部剪枝搜索
? ?局部剪枝搜索記錄k個(gè)狀態(tài),而不是一個(gè)狀態(tài)生真。局部剪枝搜索由k個(gè)隨機(jī)的生成的狀態(tài)開(kāi)始沉噩,每一個(gè)步都生成k個(gè)狀態(tài)的所有后繼,如果其中有一個(gè)是目標(biāo)狀態(tài)柱蟀,那么搜索就停止川蒙,否則從所有生成的后繼中選擇k個(gè)最佳的后繼,如此重復(fù)长已。
? ?注意:它和爬山算法很類似的一點(diǎn)就是畜眨,很容易將某一個(gè)一步較差的節(jié)點(diǎn)剪枝,即使這個(gè)節(jié)點(diǎn)的后繼表現(xiàn)很好术瓮。如果一個(gè)狀態(tài)的后繼很好康聂,而其他k-1個(gè)狀態(tài)的后繼都不好,那么所有的機(jī)會(huì)就都集中到了這個(gè)節(jié)點(diǎn)后面胞四,那么搜索就變得單一沒(méi)有多樣性恬汁。這和重新開(kāi)始k次隨機(jī)搜索是不同的,局部剪枝搜索中信息在這k個(gè)并的搜索之間傳遞辜伟。這個(gè)算法的一個(gè)改進(jìn)是隨機(jī)剪枝搜索氓侧。
3.1.4遺傳算法
function GENETIC-ALGORITHM( population, FITNESS-FN) returns an individual
inputs: population, a set of individuals
FITNESS-FN, a function that measures the fitness of an individual
repeat
new_population <--- empty set
for a <--- 1 to SIZE(popuitition) do
x RANDOM-SELECTION(populatio, FITNIESS-FN)
y RANDOM-SELECTION(popuLtion, FITNEss-FN)
child <--- REPRODUCE(x, y)
if (small random probability) then child <--- MUTATE( child)
add child to new_population
population <--- new_population
until some individual is fit enough, or enough time has elapsed
return the best individual in population, according to FITNESS-FN
-------------------------------------------------------------------------------------
function REPRODUCE(x, y) returns an individual
inputs: x,y, parent individuals
n <--- LENCTII(x)
c <--- random number from 1 to n
return APPEND(SUBSTRING(x, 1, c),SUBSTRING(y, c + 1, n))
3.2連續(xù)空間的局部搜索
(1)微分方程
(2)離散化
3.3非確定動(dòng)作搜索
? ?對(duì)非確定動(dòng)作脊另,通過(guò)構(gòu)造與-或樹(shù)來(lái)描述。以一個(gè)自動(dòng)除塵器對(duì)含有多個(gè)房間的屋子進(jìn)行打掃為例约巷。該屋子中所有房間之間都是相鄰的尝蠕,以九宮格排布,除塵器在房屋之間可以相互自由移動(dòng)载庭。除塵器可以以LEFT看彼、RIGHT、UP囚聚、DOWN來(lái)行動(dòng)靖榕。它可以執(zhí)行SUCK來(lái)除塵。在某個(gè)房間里執(zhí)行SUCK時(shí)顽铸,如果房間里有灰塵茁计,SUCK動(dòng)作將清除所有灰塵,偶爾還有可能將相鄰放假的灰塵一并清除谓松;如果房間里沒(méi)有灰塵星压,那么它有時(shí)候會(huì)在房間里釋放一些灰塵。
? ?我們使用與-或樹(shù)來(lái)描述整個(gè)可能的清理過(guò)程鬼譬。
? ?在房間里執(zhí)行動(dòng)作時(shí)娜膘,只是選擇一個(gè)動(dòng)作,動(dòng)作之間是互斥的优质,我們將搜索時(shí)只用考慮一個(gè)后繼的節(jié)點(diǎn)成為或節(jié)點(diǎn)竣贪;當(dāng)執(zhí)行一個(gè)動(dòng)作時(shí),可能會(huì)有兩種情況巩螃,我們?cè)谒阉鲿r(shí)必須同時(shí)考慮兩種情況演怎,我們將這種節(jié)點(diǎn)稱為與節(jié)點(diǎn)。具體參見(jiàn)《artificial intelligence a modern approach V3》page135避乏。與節(jié)點(diǎn)域或節(jié)點(diǎn)組成搜索樹(shù)爷耀,稱之為與-或樹(shù)。
? ?與-或樹(shù)的一個(gè)搜索算法如下
function AND-OR-GRAM-SEARCH(problem) returns a conditional plan, or failure
OR-SEARCH(problem.INITIAL-STATE, problem,[ ])
function OR-SEARCH(state, problem, path) returns a conditional plan., or failure
if problem.GOAL-TEST(state) then return the empty plan
if state is on path then return failure
for each action in problem.ACTIONS(state) do
plan <--- AND-SEARCH(RESULTS(state, action), problem, [state | path])
if plan ≠ failure then return [action | plan]
return failure
function AND-SEARCH(states, problem, path) returns a conditional plan, or failure
for each s_i in states do
plan_i <--- OR-SEARCH(s_i, problem, path)
if plan_i = failure then return failure
return [if s_1 then plan_1, else if s_2 then plan_2, else ... if s_n-1 then plan_n-1, else plan_n]
3.4部分觀測(cè)
? ? 解決部分觀測(cè)的關(guān)鍵概念在于置信狀態(tài)拍皮,它是在給出動(dòng)作序列和到目前為止的感知情況下歹叮,表征智能體對(duì)其所處物理狀態(tài)的信度。置信狀態(tài)通俗的說(shuō)春缕,就是智能體所有可能的物理的狀態(tài)的集合盗胀。
3.4.1無(wú)觀測(cè)的搜索
? ? 和常識(shí)相反,無(wú)觀測(cè)搜索大多數(shù)情況下是可解的锄贼,而且具有重要的實(shí)際意義票灰。首先是不依賴傳感器,當(dāng)傳感器發(fā)生故障的時(shí)候,這是相當(dāng)重要的屑迂。第二是傳感器成本太高或者無(wú)法使用傳感器的情況浸策。
? ? 為了解決無(wú)觀測(cè)問(wèn)題,我們?cè)谥眯艩顟B(tài)空間中搜索惹盼,而不是在物理狀態(tài)空間中搜索庸汗。需要注意的是,在置信狀態(tài)空間中手报,是完全可觀測(cè)的蚯舱,因?yàn)橹悄荏w知道它處于哪一個(gè)置信狀態(tài)。而且結(jié)構(gòu)也只是一個(gè)動(dòng)作序列掩蛤,因?yàn)闆](méi)有感知枉昏,所以沒(méi)有和前面使用與-非樹(shù)時(shí)一樣的通過(guò)輸入改變動(dòng)作的部分了。
? ? 假定潛在的物理問(wèn)題P可以通過(guò)以下定義:ACTIONp,RESULTp,GOAL-TESTp,STEP-COSTp揍鸟。那么我們可以通過(guò)按照如下所述來(lái)定義相應(yīng)的無(wú)感知問(wèn)題:
對(duì)確定性動(dòng)作:b' = RESULT(b,a) = {s':s'= RESULTp(s,a) and s∈b}
其中b'是轉(zhuǎn)移之后的置信狀態(tài)道川,b為轉(zhuǎn)移之前的置信狀態(tài)午衰,a為轉(zhuǎn)移發(fā)生的動(dòng)作。
生成新的置信空間的過(guò)程稱為預(yù)測(cè):b' = PREDICTp(b,a)
對(duì)非確定性動(dòng)作:
? ? 通過(guò)置信狀態(tài)來(lái)搜索無(wú)疑仍舊是一個(gè)笨辦法……稍稍的改進(jìn)搜索是灯帮,首先假定一個(gè)狀態(tài)為初始狀態(tài)崖技,然后搜索出一個(gè)可行方案,將方案應(yīng)用到另一個(gè)狀態(tài)為初始狀態(tài)的環(huán)境下钟哥,如果方案能夠成立迎献,則應(yīng)用于第三個(gè)狀態(tài)為初始狀態(tài)的環(huán)境下,否則返回原點(diǎn)重新尋找一個(gè)方案腻贰,直至找到一個(gè)能夠滿足所有初始狀態(tài)的方案吁恍。
3.4.2有觀測(cè)的搜索
? ?在有觀測(cè)的搜索當(dāng)中,ACTIONS、STEP-COST和GOAL-TEST同無(wú)觀測(cè)搜索一致冀瓦,轉(zhuǎn)移模型Transition Model則稍顯復(fù)雜伴奥。我們將在特定動(dòng)作下由一個(gè)置信狀態(tài)到下一個(gè)置信狀態(tài)的轉(zhuǎn)移劃分為三個(gè)階段。
b'' = UPDATE(b',o) = {s : o=PERCEPT(s) and?s∈b'}
? ?將這三步合起來(lái)就是:
3.5在線搜索智能體和未知環(huán)境
? ? 到目前為止,我們一直在使用離線搜索算法感局,它在涉足真實(shí)世界之前先計(jì)算出解決方案尼啡,之后執(zhí)行。與之相反询微,在線搜索智能體計(jì)算與行動(dòng)交錯(cuò)進(jìn)行崖瞭。首先它采取一個(gè)行動(dòng),然后再觀測(cè)拓提,通過(guò)觀測(cè)值再計(jì)算出下一步行動(dòng)動(dòng)作读恃。在線搜索對(duì)未知環(huán)境問(wèn)題至關(guān)重要,同時(shí)對(duì)常規(guī)問(wèn)題也很重要代态,它可以使智能體的計(jì)算集中于已經(jīng)發(fā)生的事情上寺惫,而不是可能發(fā)生但最終沒(méi)有發(fā)生的事情上。當(dāng)環(huán)境未知時(shí)蹦疑,智能體面臨探索問(wèn)題西雀。
? 3.5.1在線搜索問(wèn)題
? ? 在線搜索問(wèn)題是必須通過(guò)執(zhí)行動(dòng)作來(lái)完成的,而不能僅僅通過(guò)計(jì)算得到答案歉摧。我們假定一個(gè)確定并且完全可觀測(cè)的環(huán)境艇肴。但是智能體只能知道如下信息:
注意:智能體不能決定RESULT(s冲九,a),除非它處于s狀態(tài)且執(zhí)行了a動(dòng)作跟束,它才能知道結(jié)果莺奸。
? ? 最后,智能體肯那個(gè)擁有一個(gè)啟發(fā)函數(shù)h(s)冀宴,用于評(píng)估從當(dāng)前狀態(tài)到目標(biāo)狀態(tài)的距離灭贷。我們把在線搜索的路徑耗散和如果已知環(huán)境尋找到路徑的耗散的比值稱為競(jìng)爭(zhēng)比。當(dāng)搜索路徑中有“死胡同”時(shí)略贮,競(jìng)爭(zhēng)比為無(wú)窮大甚疟。為簡(jiǎn)單起見(jiàn)仗岖,我們假設(shè)搜索空間是安全搜索的,也就是說(shuō)沒(méi)有“死胡同”古拴。
? 3.5.2在線搜索智能體
function ONLINE-DFS-AGENT(s?) returns an action
inputs: s', a percept that identifies the current state
persistent: result , a table indexed by state and action, initially empty
untried, a table that lists, for each state, the actions not yet tried
unbacktracked, a table that lists, for each state, the backtracks not yet tried
s, a, the previous state and action, initially null
if GOAL-TEST(s'?) then return stop
if s'? is a new state (not in untried) then untried[s?]←ACTIONS(s?)
if s is not null then
result [s, a]←s?'
add s to the front of unbacktracked[s'?]
if untried[s?'] is empty then
if unbacktracked[s?] is empty then return stop
else a←an action b such that result [s?, b] = POP(unbacktracked[s?])
else a←POP(untried[s?])
s ←s?'
return a
? ? 以上為使用深度優(yōu)先搜索策略的在線搜索算法箩帚。
? 3.5.3在線局部搜索
? ?深度優(yōu)先策略能夠應(yīng)用于在線搜索,是因?yàn)槠湔归_(kāi)節(jié)點(diǎn)策略的局部性黄痪,不必回溯去展開(kāi)所有的狀態(tài)的后繼節(jié)點(diǎn)以便搜索紧帕。與此類似,爬山算法也有著良好的局部性桅打。事實(shí)上是嗜,由于爬山算法保存了當(dāng)前狀態(tài)值,它已經(jīng)是一個(gè)在線搜索算法了挺尾。但最簡(jiǎn)單的爬山算法并不適用于在線局部搜索鹅搪。首先它會(huì)是智能體處于啟發(fā)函數(shù)值最大或最小的地方,但不會(huì)到新的地方去遭铺,這樣無(wú)法到達(dá)目的地丽柿。其次它隨機(jī)開(kāi)始的特性不適用于在線搜索,因?yàn)橹悄荏w不能讓自己突然移動(dòng)到任何位置魂挂。一下為一個(gè)改進(jìn)后的使用爬山策略的在線局部搜索算法甫题。
3.5.3學(xué)習(xí)
? ?智能體起初對(duì)環(huán)境一無(wú)所知,但隨著其對(duì)環(huán)境的探索涂召,它會(huì)逐漸生成對(duì)環(huán)境的地圖坠非,這就是學(xué)習(xí)。在采用啟發(fā)式的情況下果正,其記錄每個(gè)位置的耗散炎码,也是一種學(xué)習(xí)。
4.總結(jié)
? 本章主要講解了以下內(nèi)容秋泳。