Я пытаюсь разработать ИИ для карточной игры, и я немного застрял в технике / алгоритме, который я должен использовать. Вот несколько предположений об игре:
- После раздачи карт игрокам нет случайности. Я имею в виду, что каждый игрок может выбрать, какие карты он играет, но случайный процесс не происходит, как при раздаче карт в начале игры.
- Существует ограничение на карты, которые можно разыграть, когда карта уже разыграна.
- Игрок, выигравший трюк, играет первым. Например, игрок 1 разыгрывает карту, игрок 2 разыгрывает карту и выигрывает. Затем игрок 2 играет карту, а затем игрок 1 играет.
Я знаю много подсказок / правил (например, если я знаю, что у игрока есть карты A, B, C, я должен играть в D), что помогает мне выиграть в игре. Поэтому я сначала хотел использовать байесовскую сеть для описания этих правил. Проблема в том, что я не знаю вероятностей для назначения, но я мог бы вычислить эвристику, используя историю сыгранных игр (против человека). Во-вторых, очень вероятно, что я не знаю всех правил и что есть некоторые неявные правила, которые нужны ИИ, чтобы найти оптимальную игру.
Я не уверен, что это был бы хороший способ разработать ИИ для такой карточной игры?
Мне также интересно, есть ли другие методы, которые лучше всего подходят для этой проблемы. Например, я взглянул на минимакс (возможно, с алгоритмом сокращения), но будет ли хорошим вариантом для этой проблемы? Я совершенно не уверен, так как самые важные игры находятся в начале игры, когда есть самые высокие неизвестные параметры (большинство карт еще не разыграно).