Я намагаюся розробити AI для карткової гри, і я трохи застряг у техніці / алгоритмі, який я повинен використовувати. Ось кілька припущень щодо гри:
- Після розподілу карт гравцям, випадковості немає. Я маю на увазі, що кожен гравець може вибрати, в які карти він грає, але не відбувається випадкових процесів, як при розподілі карт на початку гри.
- Існує обмеження щодо карт, які можна грати, коли карта вже грала.
- Гравець, який виграє трюк, грає потім перший. Наприклад, Гравець 1 грає в карту, Гравець 2 грає в карту і виграє. Потім Гравець 2 грає в карту, а потім Гравець 1 грає.
Я знаю багато підказок / правил (наприклад, якщо я знаю, що у гравця є карти A, B, C, то я повинен грати D), який допомагає мені виграти в грі. Тому я спершу хотів використати байєсівську мережу для опису цих правил. Проблема полягає в тому, що я не знаю жодної ймовірності призначити, але я міг обчислити евристику, використовуючи історію зіграних ігор (проти людини). По-друге, дуже ймовірно, що я не знаю всіх правил і є деякі неявні правила, які потрібні AI, щоб знайти оптимальну гру.
Я не впевнений, чи це був би хороший спосіб розробити AI для такої карткової гри?
Мені також цікаво, чи є інші методи, які найкраще підходять до проблеми. Наприклад, я подивився на minimax (можливо, з алгоритмом обрізки), але чи вдалий варіант для цієї проблеми? Я зовсім не впевнений, оскільки найважливіші гри - це на початку гри, коли найвищі невідомі параметри (більшість карт ще не розігруються).