Skip to content

StarLight1212/self_play

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Self-Play

🎮 No game no AI(life) -- Ultimate AI solutions for Tic-tac-toe game | 终极人工智能井字棋解决方案

English | 中文

English

Overview

A comprehensive collection of AI algorithms playing Tic-tac-toe, showcasing different approaches to achieve optimal gameplay. All implementations guarantee unbeatable AI performance.

Features

  • 🌳 MCTS (Monte Carlo Tree Search) implementation

    • Pure MCTS strategy
    • High winning rate with optimal decision making
  • 🧠 Q-Learning Implementation

    • Reinforcement learning approach
    • State-action value based decision making
  • 🔍 A Search Implementation*

    • Heuristic search algorithm
    • Optimal path finding strategy
  • 🚀 Hybrid MCTS + Q-Learning

    • Combined strength of both algorithms
    • Optional Beam Search enhancement
    • Better performance in complex situations
  • 🤖 Self-Play Training

    • Most advanced implementation
    • AI learns from playing against itself
    • Demonstrates emergent strategies

Performance

All implementations achieve near-perfect gameplay, with the Self-Play version showing exceptional adaptability and strategic depth.


Chinese

概述

一个完整的井字棋AI算法集合,展示了不同的人工智能方法来实现最优对战策略。所有实现都保证AI具有无法战胜的游戏水平。

特性

  • 🌳 MCTS蒙特卡洛树搜索实现

    • 纯MCTS策略
    • 具有最优决策的高胜率
  • 🧠 Q-Learning强化学习实现

    • 强化学习方法
    • 基于状态-动作值的决策制定
  • 🔍 A*搜索算法实现

    • 启发式搜索算法
    • 最优路径寻找策略
  • 🚀 混合MCTS + Q-Learning实现

    • 结合两种算法的优势
    • 可选择性集成Beam Search
    • 在复杂情况下表现更佳
  • 🤖 自我对弈训练版本

    • 最先进的实现方式
    • AI通过自我对弈学习
    • 展现出新颖的策略

性能表现

所有实现都达到了接近完美的游戏水平,其中自我对弈版本展现出特别出色的适应性和策略深度。


![License: MIT][]![Python Version][]![Build Status][]

Getting Started

git clone https://github.com/StarLight1212/self_play.git
cd self_play
pip install -r requirements.txt
python xxx_script.py

License

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

Releases

No releases published

Packages

No packages published

Languages