110 likes | 231 Vues
An Introduction to Applied AI Focus On Computer Games ‧ 演算法的簡單介紹 ‧ 目前的發展與未來的展望 余承叡. 什麼是 Computer Game ?. Computer Game 包括:五子棋 Go-moku 、 、黑白棋 Othello 、西洋棋 Chess 、圍棋 Go
E N D
An Introduction to Applied AI Focus On Computer Games ‧演算法的簡單介紹 ‧目前的發展與未來的展望 余承叡
什麼是 Computer Game? Computer Game 包括:五子棋 Go-moku、 、黑白棋 Othello、西洋棋 Chess 、圍棋 Go 象棋 Chinese Chess 等棋類。當電腦能與人類對奕,就可稱為 Computer Game。
AI 的研究和 Game 有什麼關係? • AI 應用在 game 上的好處:勝負清楚, ,能與人腦比較,且需要有系統、有對策地解決對手。 • 但這個解決對手的方法並不是那麼容易.. • 每個人都有自己喜歡的一套下法。 • 若 Computer Game 能好好發展,這樣的 AI 有朝一日能應用在 High-performance Computing 的基礎上。
CG 演算法的基礎 • 目標--盡量接近人腦的思考方式 • Evaluation Function • 對於棋盤上目前的形勢給予一個相對分數的 method. • 以象棋為例: • 紅方目前的 EF 為零分
CG 演算法介紹 • Tree Searching. • 完全解決了五子棋和黑白棋 • 展開全部的可能性..
但以目前的軟硬體能力.. • 對於西洋棋,這樣的展開要花上好幾百年。 • Method – minimaxing 首先先把 EF 值加進來.. • 但這個 tree 會成對數成長,非常龐大,若在西洋棋中每手要算8步,有 2*1012個 node。
如何不失真地把tree 減小? • Alpha-beta pruning. • 除去不可能實行的 sub-trees.
如何得到 EF 的值? • 從許多比賽,或專家的意見統計得來。 • 但每個人有自己的棋風,不能確定哪一種下法比較好。 • 以現在的科技,能夠解決的問題大多是能找出解題的公式,向 CG 這樣的 problem 比較難設計。 • 如果真能找到必勝的公式… • 如果找不到,但仍設計出不錯的 CG…
Complexity 的比較 • E : 從第一手開始到結束時,能落子的點數。 • A : 若要完全把 tree 展開,需要多少 tree node。
最難 design 的 CG 是.. • 圍棋是變化最複雜,最難設計的。這是一盤剛結束的圍棋 暨西洋棋之後,圍 棋應是下一波被 AI 衝擊的對象。
結語 目前發展 AI 最困難的部分除了技術之外, 就是電腦需要我們給予很明確的步驟,才 能一步步地解決問題。Computer games 大 都是 P Problem,不能用傳統的方式解決, 而生活中的問題也大多都是 P Problem…