Skip to content

Commit

Permalink
feat(README): talking about my approach
Browse files Browse the repository at this point in the history
  • Loading branch information
Pierrot LeCon committed Apr 2, 2023
1 parent 444db0b commit 62d044f
Showing 1 changed file with 19 additions and 1 deletion.
20 changes: 19 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ RL on this challenge.

## Presentation of the puzzle

The original game is played on a 16x16 board, where each piece
The original game is played on a 16×16 board, where each piece
has 4 specific colours on its sides. The goal is then to place
each tiles on the board so that each tile's sides perfectly match
the colours of its neighbours.
Expand All @@ -18,3 +18,21 @@ partial solution has a total of 467 matches out of the 480
total perfect matches.

More can be found at the [wikipedia page](https://en.wikipedia.org/wiki/Eternity_II_puzzle).

## My Approach

An episode starts by randomly scrambling the pieces
and then the agent have a limited number of steps to
rearrange the pieces as best as possible.

I train a policy agent to swap pieces of the puzzle.
When swapping the pieces, the agent can rotate them
to properly align the sides with their neighbours.

The reward is based on the number of matching sides,
and can be given during the episode or only at the end.

To try my ideas faster, I start by solving easier
versions of the game, the simpler being a 2×2 board.

![A 2×2 board being solved by an agent](./.gifs/trivial_A.gif)

0 comments on commit 62d044f

Please sign in to comment.