DQN的原理相當簡單,只要將Q-Table換成人工神經網絡就行,但如果想取得理想的效果,那就得講究一點細節了。
首先要克服的,就是噪聲、延遲和不穩定等問題。
江寒在虛擬空間里忙碌了三百多個小時,才終于弄出了一個比較完善的DQN算法。
接下來,就是漫長的訓練過程。
好在這種算法最大的優點,就是不怎么需要人工干預,只要給“智能體”適當的環境,它就能自主學習、慢慢進步。
蘇婉瑩特地將閣樓清理出來,給大家做訓練場地。
江寒讓方源的五臺機器人,給自己麾下的戰車做陪練。
一開始,江寒的機器人看起來笨頭笨腦的,和無頭蒼蠅差不多。
別說作戰了,連路都跑不明白,經常卡在莫名其妙的地方,原地轉圈圈。
看到這種情況,大家不免心里有點沒底。
靳雪雯藏不住事兒:“江寒哥哥,這種辦法真的行嗎?”
蘇婉瑩直接吐槽:“江寒,你這幾臺戰車,看起來不怎么聰明呀?”
夏雨菲也有點擔憂,問江寒:“它們好像一直在亂轉,這都半個下午了,是不是哪里出問題了?”
江寒淡淡一笑:“現在下結論還太早了點,過兩天再看效果吧。”
這些戰車機器人都是標準套裝,性能還算不錯,續航就比較馬虎了。
通常能連續運作三個小時,就差不多到極限了。
為了解決這個問題,江寒不得不設計了一個磁吸式充電接口,讓這些機器人電量消耗得差不多時,自己滾去充電……
江寒的五臺戰車機器人,每天都在緩慢地進步著。
從一開始什么也不懂,慢慢學會了走路、射擊、躲閃……
三天后,訓練效果漸漸體現了出來,至少與方源PK時,不再一面倒的被屠殺。
雖然處于下風的時候多,占據優勢的時候少,取得勝利的次數,更是約等于0。
但這種其妙的現象,仍然引得蘇婉瑩、夏雨菲等人嘖嘖稱奇。
她們之前的確沒想到,這些“死”的機械,居然也能在實戰中,不停地成長!
漸漸的,江寒的機器人學會了簡單的戰術配合,這樣一來,再和方源PK,勝率就提高了不少。
又過了兩天,方源的機器人,就徹底不是對手了。
沒辦法,方源的程序,是傳統的邏輯推理型AI,成長性約等于沒有,寫成什么樣,就是什么樣。
而江寒這邊,卻是一個擁有學習能力的AI,只要有充足的時間,就可以愈練愈強!
這天,江寒和方源又進行了一場友誼賽。
開戰不到3分鐘,江寒這邊就摧枯拉朽一般,將方源的隊伍虐了個體無完膚。
“不玩了,不玩了。”方源用力搖頭。
“老板,你的機器人進步太快了,我估計,等到下周比賽時,差不多能和遙控戰車一較高下了。”
江寒卻笑著搖了搖頭:“只怕還不夠。”
“你是說時間嗎?”方源問。
江寒解釋說:“不僅僅是時間的問題,我這個算法的上限,取決于陪練的戰斗力,現在這種情況,只怕后面很難有大的進步了。”
方源若有所思,忽然問:“老板,就憑你這幾臺機器人的強度,差不多也夠用了吧?”
他對自己的編程能力,還是相當自信的,正式比賽中的對手,不可能個頂個都比自己強……
江寒搖了搖頭,平靜的說:“其他隊伍的情況,目前還不清楚,我們拿冠軍的可能性,不能說沒有,但還不夠大。”
方源默默點頭,忽然說:“可惜我的能力有限,弄不出戰斗力更強的機器人,否則就能給你做陪練了……”
江寒心中一動,忽然想到了一個辦法。
不如在方源的這幾臺機器人里,也寫入訓練好的DQN網絡,然后,讓兩個DQN網絡對戰!
這樣一來,這些已經達到瓶頸,很難取得進步的機器人,不就可以在對抗中,一起成長了嗎?
然后,你成長一點,我成長一點……
江寒越想越覺得可行。