-dumb weight based
---game adjusts its strategy based on previous games, storing the data in a text file "WeightsDatabase"
-weight based implementation from https://github.com/Mateo-S/Tic-Tac-Toe-ML.git
-smart weight based
--training with "tic-tac-toe.data.txt" images for patterns
---pattern recognition by classification:
----positive results
-----every possible state is a category
-----images are ranked using weight
-----pattern matching strings starting with..
-----pattern matching strings matching values in played positions
-----randomly picking best available positions
-----un-predictable results
-back propagation:
-same as smart program and game results influence future moves based on win or loss
-simple weight based
--aggregates weights for each position
--game adjusts its strategy based on previous games
-image, convolutional neural network CNN TODO
--generate all possible plays (ideally we need a dataset of expert moves for a given board pattern)
--capture image of board on every move and feed it to CNN
-4 layers of neural networks looking for patterns
--first layer
---if player has a final winning move
--second layer
---if opponent has a final winning move
--third layer
---best possible move
--fourth layer
---classification of board position before move
-same as supervised learning and
-check every possible moves
--predict winner