Skip to content

Commit

Permalink
Project Definition README
Browse files Browse the repository at this point in the history
  • Loading branch information
SebastianVeuskens authored Nov 27, 2023
1 parent a23327b commit a773570
Showing 1 changed file with 32 additions and 2 deletions.
34 changes: 32 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,32 @@
# Battleship-AI
A platform that models an AI strategy in the game "Battleship," visually presenting its move-by-move decisions from a specified starting point.
# Project Definition

*Author: Sebastian Veuskens*

*Project definition approach was inspired by [cowinkiedink](https://www.reddit.com/r/learnprogramming/comments/mumrgn/how_to_plan_and_build_a_programming_project_a/)*

*A guideline for project workflow using github projects is available [here](https://docs.github.com/en/issues/planning-and-tracking-with-projects/learning-about-projects/quickstart-for-projects) along [best practices](https://docs.github.com/en/issues/planning-and-tracking-with-projects/learning-about-projects/best-practices-for-projects) on how to leverage them.*

## 1. What is the project?

A platform that demonstrates at least one AI approach to try to find a successful strategy in the popular game [Battleship](https://en.wikipedia.org/wiki/Battleship_(game)) for a given starting position. A visual display of the game board will display the starting position as well as the move decisions of the AI in a step-by-step manner. Different board sizes and number of boats can be selected to account for complexity.

## 2. What is the MVP?

The minimal viable product is a simple AI that is able to play a game in accordance with the rules and performs better than random guessing. A (non-interactive) local visual display of the game and its steps has to be implemented.

## 3. What are the nice2haves?

- Compare more than one AI approach to each other. Especially a reinforcement learning algorithm in comparison with a bayes/naive approach would be interesting.

- Having a visual platform on a website instead of a local machine.

- Render the display of the board to make it look more appealing.

- An interactive platform that lets people chose the size of the board, number of boats, the algorithm and when to go to the next step.

- A fully-responsive platform that lets users play games against the AI.
- For this feature, more definitions for the AI have to be made about the choice of starting position as well as the opponents gameplay as an additional input.

## 4. When will the project be complete?

When a visually appealing platform for the game is available that allows the demonstrations of the algorithms.

0 comments on commit a773570

Please sign in to comment.