Giter VIP home page Giter VIP logo

project-two's Introduction

AI Checkers Engine

A two player game for CS5346 Artificial Intelligence

This program implements the mini-max-a-b search and alpha-beta-prune search algorithms.

How to Build and Run the Application

This application is primarily designed to run on Linux. It may be ran on the Texas State (TXST) Linux servers. Eros: EROS.CS.TXSTATE.EDU (147.26.231.153) Zeus: ZEUS.CS.TXSTATE.EDU (147.26.231.156)

  1. Build with this command:
    g++ -o Project2 Project2-A04626934.cpp -std=c++11
  2. Run with this command:
    ./CheckersAI
  3. To see help menu (optional):
    ./CheckersAI -h
  4. To run with no color:
    ./CheckersAI -nc
  5. To run with no debug output:
    ./CheckersAI -no
  6. To run with no debug output and no color:
    ./CheckersAI -ncno
  7. To put std output in a log file:
    ./CheckersAI -nc | tee myFile.log

Project Report

A very detailed project report is available under:
docs/Project2-Report.pdf

This report covers everything about the program exhaustively - how to build and run it, analysis of results, a complete breakdown of each class and method implementations, and much more.

Program Demo

Program Demo

Class Diagram

UML Class Diagram

Alpha-Beta Search Algorithm

AB Search Alg

Notes

It is recommended to have the the PuTTY terminal maximized to fill the screen. Use option 2 from the main menu to run a game with one configuration at a time. If outputting to a log file using #8 above, color should be disabled using -nc to prevent ANSII characters from printing. The project report along with all results and output are provided in the same ZIP containing this README file.

References

  1. Why use enum class and not plain enum?
    https://stackoverflow.com/questions/18335861/why-is-enum-class-preferred-over-plain-enum

project-two's People

Contributors

bss8 avatar rrhenderson avatar torrente avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Forkers

bss8

project-two's Issues

Game

Implement Class Game.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.