Skip to content

qbit86/okiya-solver

Repository files navigation

Okiya Solver

Overview

This repository contains a C# implementation of a solver for the two-player abstract strategy game Okiya. The solver is based on the Negamax algorithm, a variant of the Minimax search commonly used for game playing.

Explanation

Observations

In this project, I have stochastically analyzed numerous play-outs of the game Okiya, starting from random permutations.

Position example

When both players make perfect moves, the outcomes are as follows:

  • Approximately 30% of all games end in a draw.
  • About 70% of the games result in a victory for the first player.

If the first legal move (outside the central block) for the starting player is chosen randomly, the game dynamics take a different turn:

  • Approximately 18% of the games end in a win for the second player.
  • About 11% end in a win for the first player.
  • The remaining games result in draws.

If the starting player's first move is chosen as the weakest, the results are as follows:

  • 72% of the games end in a win for the second player.
  • The remaining 28% end in a draw.

When the first move is inside the central block (illegal according to the original rules), then almost all games end in a win for the first player, and very rarely in a draw.

These findings provide insights into the impact of initial moves and the strategic landscape of Okiya gameplay.

Acknowledgments

Special thanks to the creator of Okiya, Bruno Cathala, for providing an engaging game for strategic minds.

License

This project is licensed under the MIT License — see the LICENSE file for details.

About

A solver for the game of Okiya

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages