夏雨菲想了想,說:“我和瑩瑩差不多,對機器人也基本上一竅不通,還是你們四個上吧,我和瑩瑩給你們做后勤。”
江寒和靳雪雯對視了一眼,一齊攤手。
這樣“新寒江雪”戰隊便只有四名隊員了。
接下來,江寒和方源開始研究AI算法。
能采用的算法很多,但要考慮到算法的強度,以及機器人本身的計算能力。
好在時間還算充裕,可以慢慢嘗試。
江寒打算試一試機器學習中的“強化學習”。
這是一種非常獨特的算法,可以讓機器人“自學成才”,無需編寫復雜的邏輯。
方源對此表示期待和喜聞樂見,但也有一些擔憂。
關鍵問題是,在比賽之前,沒法拿到場地的準確數據。
這樣一來,事先訓練好的機器人,也不知道到了賽場上,會不會適應不良?
江寒灑然一笑:“所以咱們要做兩手準備。”
“哦?”方源眼神亮了起來。
江寒的想法很簡單。
他和方源分別打造一套AI算法。
江寒嘗試“強化學習”路線,方源則按照傳統方式編程。
比賽之前,隊伍內部先來次PK,誰的AI戰斗力強,就派誰上場。
“這個辦法好。”方源馬上表示贊同。
接下來,兩人就分頭行動,各行其是。
另一邊,靳雪雯等女孩子,將幾個戰車機器人的包裝,全都拆了開來。
“哇,好漂亮!”小魚兒驚嘆了一聲,隨后拿起一臺戰車機器人,愛不釋手地擺弄著。
“花了不少錢吧?”小魚兒問。
靳雪雯嘻嘻一笑:“一共8萬多,險些花光我的壓歲錢。”
小魚兒:“……”
意思是還沒花光唄?
這天開始,靳雪雯每天都來蘇家。
大家聚在一起玩玩鬧鬧、其樂融融,順便訓練、訓練機器人,不亦樂乎?
江寒讓靳雪雯又買了五臺機器人,和方源每人選擇五臺,分頭訓練。
兩人的程序很快都編好了。
由于方源采用了傳統算法,程序調試完成后,直接燒錄到機器人的ROM中,就可以運行了。
而江寒這邊的“強化學習”,實現起來就沒那么簡單了。
程序本身就很不好弄,訓練起來更加麻煩,需要相當多的時間。
“強化學習”在這個世界早就出現了,其中最重要的概念,就是智能體(Agent)。
在這個案例中,一臺戰車機器人,就是一個智能體。
訓練的過程中,智能體可以得到所處環境的狀態信息,并采取試探行動。
當環境對某個動作給與了正向反饋時,智能體將來就會更加傾向于這種舉動。
反之,如果得到的是負面反饋,那么就減弱這種傾向。
這樣,智能體就能在不斷地試錯中,一點一點地優化行動策略……
例如著名的Q-learning算法,江寒之前就有過一些研究。
在Q-learning中,用一個表格來保存狀態和動作的Q值,稱為Q-Table。
通過修改Q-Table的值,就能生成一個指引智能體行動的“綱領”。
然而,這種辦法雖然簡單、直觀,易于實現,但也有著致命的缺陷,那就是只適合狀態和動作空間是離散的,而且維數不太高的情況。
當狀態和動作空間是連續的,或者維度很高時,再用Q-Table來表達,就有點力不從心了。
為了解決這個問題,江寒很自然地想到了DQN算法。
所謂DQN,全稱是DeepQNetwork,實際上就是將深度學習和強化學習結合到一起的產物。