大家好,
有一天,我兒子要求玩格紋紙版的《戰艦》。每個人有 5 艘“船”,長度分別為 5、4、3、3 和 2 個單位(寬度為 1 個單位)。 「船」被放置在 XY 空間中 10 x 10 的網格上;每艘「船」都有一組唯一的 (x,y) 座標。例如,3 個單位「船」之一的座標可能為 (3,4)、(4,4) 和 (5,4)。同一 (x,y) 座標不能超過一艘「船」。 「船舶」只能垂直或水平運作—不允許對角線佈局。
然後我們輪流喊出座標對(x,y)來看看誰直接擊中了別人的「船」。我們每個人只有 16 個回合來嘗試擊中(或擊沉)對方盡可能多的「船」。當我們經歷這件事時,我心想,必須有一種更好的方法來最大限度地提高擊中(和/或沉沒)另一個人的「船」的機會,而不僅僅是隨機喊出座標。當然,您不會呼叫已經使用過的座標 (x,y),因為您會知道您是否撞到了「船」。
起初,我認為自訂設計平台可能是正確的選擇,但如果您創建一個設計,其中 Y 為「命中」(0/1 表示否/是),並且 X1 = x 且 X2 = y 座標(10 級離散數值),平台將產生一個設計,其中僅使用每個X 和Y 的高水平和低水平。因此,不幸的是,定制設計不起作用。
Full Factorial DOE 平台無法運作,因為它想要進行 100 次運行(10x10 Factorial),而我們每次只有 16 次運行(嘗試)。
RSM DOE 平台僅適用於高/低電平,輸入 1 和 10 表示低/高電位。 CCD 設計選項並沒有真正填滿放置「船」的 10 x 10 網格的空間 - 太多的中心運行無法覆蓋網格空間。
唯一適用於此的其他平台是空間填充設計。對 x 和 y 使用相同的低/高、1/10 設定以及「命中」作為回應(這將是二進制的,0/1 表示否/是),我可以獲得包含 (x,y) 配對的 DOE 表填滿網格空間。我不確定空間填充設計方法的最佳選擇是什麼,FFF 或均勻,或拉丁超立方體等。
我認為更重要的是,DOE 是固定的,它不具有“適應性”,即根據第一次運行的結果,如何修改 DOE 以考慮已知資訊。使用上面的 3 單位船坐標,假設我的第一次運行是調用坐標 (3,4) 並且我得到了命中。知道「船」的佈局是水平的還是垂直的,我的下一個調用根本不會遵循 DOE,而是調用 (3,5)、(3,3)、(2,4) ,或(4,4 )——我將x 或y 增加一個單位,看看結果是什麼。依此類推,直到船沉沒或移動到下一個可能的起始座標。
我想找到一種更科學的方法來產生自適應 DOE,可以優化 16 次運行以產生「命中」。關閉靜態 DOE 不會這樣做,因為每次運行後,坐標都會“用完”,我會知道它是否命中。每次運行都會通知 n+1 次後續運行。據我所知,沒有一個能源部可以處理這樣的事情,但我也不是這個領域的專家。
隨機選擇起點是「戰艦」中最好的選擇嗎?我不這麼認為,但我很難弄清楚如何擁有一個基本上包含“if/then”語句的自適應 DOE,以便它優化我的 16 次嘗試的使用,同時考慮來自上一步。如果有一個「適應性強」的 DOE 能夠優化您每次運行的選擇,從而最大限度地提高您在 16 次嘗試中獲勝的機會,那就太酷了。
感謝您的討論!
DS
PS,在搜尋 JMP 和「戰艦」時,我確實找到了@Jordan_Hiller的這篇文章,其中展示瞭如何使用 JMP 來玩不同的遊戲, @brady_brady編寫了 JSL 程式碼來實際玩「戰艦」。非常酷!很快就會下載 JSL!
你好@Jordan_Hiller ,
感謝您提供博客鏈接,我喜歡這篇文章。
我大體上理解他們如何計算一艘船在某個廣場的概率背後的概念——這對每種船來說都是不同的。 然而,由於棋盤的概率狀態在每一輪遊戲後都會發生變化,下一個方塊的選擇也會發生變化,對我來說這無非是重新優化的空間填充設計,考慮了命中/未命中/船的大小/和剩餘的跑步次數。
博客發帖人能夠生成一種算法,可以在 34 步內完成遊戲,這恰好是小船佔據的方格數的兩倍。 據推測,有可能生成一條最佳決策路徑,該路徑可以獲得接近 17 步獲勝所需的步數。 也許不完全是 17,但非常接近。
當然,ML/AI 方法可以構建一種算法來贏得比賽,但我同意,這是矯枉過正,而不是我真正想要的。 我更感興趣的可能是博客人所做的和使用 DOE 的混合。 顯然,遊戲板的概率密度函數對於做出決策選擇至關重要。 但是,是否可以將其從純粹的概率計算修改為基於優化空間填充的計算——幾乎就像將電路板的概率函數作為 DOE 的“加權”函數,以便 DOE 產生最高可能的命中率。 在我看來,首先產生最高命中數然後專注於沉沒會比博主的做法更快獲勝,後者是先專注於沉沒船隻,然後再進入狩獵模式。
無論如何,我發現考慮和思考很有趣,顯然其他人也有!
謝謝!,
DS
有趣的想法,迪德里希!
這是一篇關於這個主題的舊博客文章,有人想出瞭如何計算在任何給定遊戲狀態下一艘船在網格的每個方格上的概率。 https://www.datagenetics.com/blog/december32011/之後,你甚至不需要模型,你可以選擇最可能的正方形。 那裡也有一些機器學習項目,但這似乎有點矯枉過正!
約旦