Scratch 3 遊戲:人工智慧篇

若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。

在讀者閱讀此篇文章之前,請花個時間閱讀用十分鐘快速瞭解 《人工智慧的過去、現在與未來》,了解一下人工智慧是什麼玩意兒。而此篇文章要介紹如何用Scratch來製作有人工智慧的遊戲。雖然筆者在Scratch簡易人工智慧:有智慧的蟑螂與蟲蟲一文裡,修改了兩個Scratch遊戲,分別為 Scratch 遊戲:水中踩蟑螂Scratch 遊戲:蟲蟲危機,讓遊戲的蟑螂與蟲蟲看起來有智慧(還請AI大師們用力鞭策在下),修改的想法為三種:隨機移動、沿著X軸移動、沿著Y軸移動,而這三種方式用來當成遊戲中人工智慧的入門範例似乎可行(!?)。總之,這要看讀者們對人工智慧的理解是什麼,以及對人工智慧一詞的定義是什麼,才能自己做判斷(茶)。

此外有聽過深度學習的讀者們,可能會覺得人工智慧不是要讓電腦自己來學習嗎?以這兩個Scratch遊戲來說,根本就不能算人工智慧(笑)。恩,好了,這閒聊的話題就到此為止,開始進入主題囉!

在Scratch官網的專案分享上有個由SenatorPenguin所分享的Tic-Tac-Toe: Human vs. Computer專案,請讀者玩玩看這個遊戲。


有沒有感覺很像在與真人對戰呢?

那這遊戲是怎麼做出來的?有興趣的讀者可以到Tic-Tac-Toe: Human vs. Computer專案按下切換到程式頁面按鈕,就可以看到程式積木了。此外還有Scratcher網友分享聊天機器人:https://scratch.mit.edu/projects/229484236/https://scratch.mit.edu/projects/105644873/;西洋棋:https://scratch.mit.edu/projects/148769358/;五子棋:https://scratch.mit.edu/projects/246218177/https://scratch.mit.edu/projects/250789603/等可以讓玩家(人)與電腦對戰。一樣要請讀者試玩這幾個遊戲,看看有沒有覺得電腦很厲害?

遊戲所使用的人工智慧通常會分成底下幾種(當然不只有這樣子的分法):漫遊型AI、行為型AI、策略型AI。漫遊型AI是指遊戲中的角色會根據固定的模式來行動,例如左右移動、上下移動、追著主角跑、或是一直跳等單一的動作,在Scratch簡易人工智慧:有智慧的蟑螂與蟲蟲一文中,所使用人工智慧可屬漫遊型AI。行為型AI則是組合多種漫遊型AI來產生具有一些行為的角色,來調整遊戲的難易度,例如攻擊型的角色會用比較多的時間來追逐主角,並攻擊主角;而保守型的角色,則會用比較多的時間來防守自己的寶物等,例如常見的史萊姆通常很弱、魔王通常很聰明又很強。策略型AI使用一些定義好的遊戲規則來開發程式,最常見於棋類遊戲、撲克牌等電腦遊戲,但現在有些會使用深度學習(Deep Learning)的方式來進行開發策略型AI,例如會玩圍棋的AlphaGo。那要怎麼入門遊戲人工智慧呢?請參考這一篇文章:The Total Beginner's Guide to Game AI

沒有留言: