Simon bored at a university lecture 🙂
Simon proving his peg solitaire solution:
Nice little trick for divisibility by 3
The end of 2019 was packed with logic. Simon even started programming an AI that would solve logical puzzles, here is the beginning of this unfinished project (he switched to programming a chess AI instead). In the two vids below, he explains the puzzle he used as an example and outlines his plan to build the AI (the puzzles come from Brilliant.org):
And here are some impressions of Simon working on the puzzles and showing them to his sis:
This has been one of Simon’s most ambitious (successful) projects so far and a beautiful grand finale of 2019, also marking his channel reaching 1K subscribers. The project – approximating Euler’s number (e) in a very weird way – is based upon a Putnam exam puzzle that Simon managed to prove:
The main part of the project was inspired by 3Blue1Brown Grant Sanderson’s guest appearance on Numberphile called Darts in Higher Dimensions, showing how one’s probable score would end up being e to the power of pi/4. Simon automated the game and used the visualization to approximate e. Below is the main video Approximating pi and e with Randomness. You can run the project online at: https://editor.p5js.org/simontiger/present/fNl0aoDtW
The history and the math behind the project:
Simon’s proof od the math behind the project:
Simon has visualized this problem and proof at: https://editor.p5js.org/simontiger/present/2uMPZ8THW
Simon’s visualization of the notorious thee-body problem (two stars and a particle) in 1D: https://editor.p5js.org/simontiger/sketches/WTUoBaxgo and in 2D: https://editor.p5js.org/simontiger/sketches/B0pQl94pd
Simon saw a prototype of this Galton Board in a video about maths toys (it works similarly to a sand timer in a see-through container). He created his digital simulation using p5.js online editor, free for everyone to enjoy:
I’ve been terrible at keeping this blog up to date. One of Simon’s best project in December 2019 was creating a chess robot and I haven’t even shared it here.
We were joking how this is Simon’s baby and her name is Chessy. Simon also made an improved version with a drop-down menu allowing to choose 1 to 5 steps ahead difficulty level (warning: levels 4 and 5 may run quite slowly): https://chess-ai-user-friendly–simontiger.repl.co/
While researching how to apply the Minimax algorithm, Simon has relied on Sebastian Lague’s Algorithms Explained – minimax and alpha-beta pruning; Keith Galli’s How does a Board Game AI Work? (Connect 4, Othello, Chess, Checkers) – Minimax Algorithm Explained; a Medium article on Programming a Chess AI: A step-by-step guide to building a simple chess AI by Lauri Hartikka; of course, The Coding Train’s challenge Tic Tac Toe AI with Minimax; and What is the Minimax Algorithm? – Artificial Intelligence by Gaurav Sen.
Simon contributed his chess robot to the MINIMAX coding challenge page on the Coding Train website:
And naturally we’ve had a lot of fun simply playing with Chessy as a family:
Link to the interactive project and the code: https://editor.p5js.org/simontiger/sketches/n6-WZhMC3
Simon built a simple cellular automaton (rule 22) model for fracture. He read about this model a couple nights before in Stephen Wolfram’s “A New Kind of Science” and recreated it from memory.
Stephen Wolfram: “Even though no randomness is inserted from outside, the paths of the cracks that emerge from this model appear to a large extent random. There is some evidence from physical experiments that dislocations around cracks can form patterns that look similar to the grey and white backgrounds above” (p.375).