跳去內容

A/B 測試

出自維基百科,自由嘅百科全書

A/B 測試英文A/B testing)係指比較兩種技術,通常係比較一種已有技術同一種新技術。喺最簡單嘅情況下,研究者會攞兩個技術試行,然後比較吓兩者(喺各指標上)嘅表現。

步驟

[編輯]

做 A/B 測試嘅人係有兩種技術需要比較,佢要搵一啲指標評定一種技術點先算係「好」,喺檢驗咗兩種技術喺呢啲指標上嘅表現之後,作出相應嘅決策[1]。步驟如下[2]

  1. 講明要比較嘅係邊兩種技術;
  2. 決定用乜嘢指標評定技術嘅優劣;
  3. 決定要將幾多百分比嘅玩家用嚟測試新技術;
  4. 試行;
  5. 量度兩組玩家喺指標上嘅數值;
  6. 用個指標決定邊一種技術比較好。
例子

舉個例子說明:想像家陣有隻 PvP 嘅網上遊戲,製作組想做吓有關對局配對(matchmaking;指 PvP 遊戲當中將玩家分配落對局嘅過程)演算法實驗,於是[2]

  1. 佢哋試行兩隻唔同嘅對局配對演算法,叫呢兩個演算法做 A 同 B;
  2. 決定用玩家留存作指標;
  3. 決定將一半玩家用 A 做對局配對,另外一半就用 B 做對局配對;
  4. 試行一個月;
  5. 量度兩組玩家分別嘅玩家留存;
  6. 發現 A 演算法下玩家留存數值高啲(結果),於是就決定今後隻遊戲一律用演算法 A 做對局配對(基於結果嘅決策)。

編程研究

[編輯]

例如喺學術性嘅電腦科學上,會有人研究遊戲編程。而有關遊戲編程嘅學術研究會探討以下嘅問題:

  • 邊啲演算法比較能夠改良玩家體驗?例如[3]
    1. 研究者由人工智能文獻等嘅來源,得知有一種新嘅演算法,而呢種演算法係遊戲編程上甚少有人用,甚至係從來未有人用過嘅;
    2. 佢哋搵一啲指標用嚟量度玩家體驗,例子可以睇吓心流
    3. 佢哋整一隻簡單嘅遊戲,再幫隻遊戲整兩個版本,一個版本用咗新嘅演算法,另一個版本唔用(A/B 測試);
    4. 搵班受試者返嚟試玩,用指標量度喺兩個情況下,玩家體驗係點,睇吓用咗隻新嘅演算法係咪會改良玩家體驗。
  • 邊啲演算法比較能夠造到遊戲設計師想要嘅效果?例如[4]
    1. 研究者由遊戲設計等領域嘅文獻嗰度得知,有某種效果係好多遊戲設計師都想要做到嘅;
    2. 佢哋耖咗吓人工智能等領域嘅文獻,知道有一隻新演算法可以做到類似噉嘅效果;
    3. 做 A/B 測試,比較吓用現有嘅演算法同用新演算法做嗰種效果會係點;
    4. 如果發現隻新演算法能夠更加有效率(用嘅時間空間資源少)或者更加強健噉做到嗰種效果,佢哋就發現咗啲有用嘅嘢。
  • 有乜嘢方法可以幫遊戲編程研究更加準確噉量度玩家體驗?有研究者就試過噉做[3]
    1. 佢哋首先考慮一啲描述玩家經驗嘅心理學理論(例如可以睇吓心流);
    2. 根據呢啲理論,佢哋推斷一個遊戲程式嘅邊啲參數最有可能會影響玩家體驗(例:根據心流理論,唔係太難又唔係太易嘅遊戲最有可能令玩家過癮,而遊戲敵人嘅行為複雜度同難度相關);
    3. 然後佢哋諗出一啲量化嘅指標,量度呢啲參數嘅數值(例:遊戲敵人嘅行為複雜度可以局部由「玩家生存時間嘅標準差」反映);
    4. 做實驗,睇吓呢啲參數嘅數值係咪真係同「玩家有幾享受隻遊戲」(以心流等做指標量度)有強嘅統計相關

... 等等。

參考資料

[編輯]
  1. Kohavi, Ron; Longbotham, Roger (2017). "Online Controlled Experiments and A/B Tests". In Sammut, Claude; Webb, Geoff (eds.). Encyclopedia of Machine Learning and Data Mining. Springer.
  2. 2.0 2.1 A/B Testing – Overview. Game Analytics.
  3. 3.0 3.1 Yannakakis, G. N., & Hallam, J. A Generic Approach for Obtaining Higher Entertainment in Predator/Prey Games.
  4. Yannakakis, G. N., Levine, J., & Hallam, J. (2007). Emerging cooperation with minimal effort: Rewarding over mimicking (PDF). IEEE transactions on evolutionary computation, 11(3), 382-396.