Re: [note] JP_MJ Programming Techniques (1)

看板MJ_JP (日本麻將 - 日麻)作者 (鴟夷子皮)時間14年前 (2011/01/31 22:14), 編輯推噓5(5014)
留言19則, 6人參與, 最新討論串2/2 (看更多)
原文恕刪 這篇回文可能快偏離日麻討論範疇了XD 還請一些版友見諒 看到這篇文章我還蠻高興的,當初修課修AI的時候期末project就是寫日麻AI設計, 本來的構想是在無視各家進攻下,做到能在14張牌中選擇何者該捨去,是否吃碰槓等功能, 不過時間限制下當初只寫出了如何捨牌,加上判斷和了牌種等共約2000行code, 而且在路線機率的計算上是有問題的....也就因此沒有再繼續完成它 這篇文章給了我一個在計算機率上還不錯的想法,感謝 提供一點個人想法,計算上聽(向聽?)數不一定要全數列出後逐一比對, 在假設13張牌中至少用到5張做為最後和了牌型時, 可以針對每張牌遞迴跑"順子" "刻子" "雀頭" "待捨"四種可能性就好, 在最後只能有4搭子1雀頭的條件限制下,這方法其實出乎意料的快, 而且也同樣能算出每種牌型的上聽數及所需牌種, 不過用比對的方式,在預先將牌種都存在記憶體後,速度上應該還是優勢的 計算役種和得點上,採高得點計的規則其實會帶來不少麻煩, 總不能把綠一色當成混一2000點,或是把三連三暗刻記成一色三順, 計算符數也會造成不小的困擾,不過都還是可以克服的問題 當初我們project的目標其實是想讓AI能捨去1000點自摸,決定等四暗刻, 不過想一想這真的蠻困難,期望值的計算上還要考慮自摸,振聽等因素, 最後我們只做到能讓它懂得去做三色同順,說起來還是弱弱的(汗) 我認同麻將上的AI,初步考慮上比很多遊戲簡單許多, 至少完全進攻形的AI就已經有不小的實力,估計在天鳳打到初段可能也不是問題, 不過全方位考慮下就很困難了,就算假設對手沒有特別偏好,不去做machine leraning, 就已經很難靠對手捨牌來推敲他手上的牌來避免放槍, 加上場況和得點差,1000點在不同的局勢下影響又不一樣,不是能只做線性影響思考的 舉個好玩的例子,友人曾問我在沒有張數,危險度差別下,發和中先打哪張較好, 答案是中,理由是"中成為裡懸賞的機率比發低" orz AI想寫到完整實在是不簡單的工作 ---- 版主是CS相關科系? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 58.114.187.169

01/31 22:29, , 1F
嗯,我正好就是讀CS所以對這個很有興趣XD
01/31 22:29, 1F

01/31 22:34, , 2F
話說你居然作業做日麻,真夠熱血的(拇指) 我想過但不敢做XD
01/31 22:34, 2F

01/31 23:05, , 3F
我也是念CS的,做成project純粹為了好玩啦XD
01/31 23:05, 3F

02/01 22:06, , 4F
我念CS的看完也感覺超好玩的!!
02/01 22:06, 4F

02/04 10:04, , 5F
我不太懂難不難..不過我手邊有單機的日麻遊戲檔..
02/04 10:04, 5F

02/04 10:05, , 6F
電腦不弱的說..會看現物 會默聽..常常和大牌
02/04 10:05, 6F

02/04 10:06, , 7F
我應該沒有偏離你們說的吧...
02/04 10:06, 7F

02/04 10:06, , 8F
我已經看過電腦湖兩次國士了
02/04 10:06, 8F

02/04 12:39, , 9F
你已經偏離了...拿單機遊戲那種資訊不對等的東西來講的話
02/04 12:39, 9F

02/04 12:39, , 10F
電腦不弱的原因最主要是電腦作弊...
02/04 12:39, 10F

02/04 20:30, , 11F
說作弊太過言重了,資訊不對等確實是一個考量點。
02/04 20:30, 11F

02/04 20:30, , 12F
簡單來說,儘管是「隨機」的說法,
02/04 20:30, 12F

02/04 20:31, , 13F
玩家只能看到自己所見之情況,電腦可見所有的情況之下,
02/04 20:31, 13F

02/04 20:31, , 14F
之中的差異性。
02/04 20:31, 14F

02/04 20:32, , 15F
或是一張張產生的方式,來引導或是造成差異性。
02/04 20:32, 15F

02/05 18:02, , 16F
嗯,電腦方資訊完全透明的話是人打不贏的,
02/05 18:02, 16F

02/05 18:02, , 17F
寫AI是讓電腦能在有相同資訊的情況下,做出等同甚至
02/05 18:02, 17F

02/05 18:04, , 18F
比人更好的判斷 我說的難是指防對方榮和這一項上,
02/05 18:04, 18F

02/05 18:05, , 19F
很難用簡單的標準或機率根據河底推出對方手上的牌
02/05 18:05, 19F
文章代碼(AID): #1DHiFOB1 (MJ_JP)
文章代碼(AID): #1DHiFOB1 (MJ_JP)