As I noted in my last update a number of non-STEMpunk obligations have cut into the time I set aside to write about my study of gears, electrodes, and circuits, but you’ll be happy to know that the actual learning continues.
Also noted in my last update was the fact that I switched the focus of the last module of this project to artificial intelligence instead of robotics. I therefore brushed up on my programming skills by working through the excellent Learn Python the Hard Way, along with a similar text for the command-line written by the same author. As of now I’m seven chapters into the seminal Artificial Intelligence: A Modern Approach.
I’ve written elsewhere about the ways in which this project has opened my eyes to the astounding complexity of the modern world. Much of the first few chapters of AIMA is devoted to a tool most of us use every single day: search. Like washers, retaining walls, and electric signs, I simply hadn’t paused to think about everything that goes into building a search algorithm. There are innumerable tradeoffs related to searching depth-first or bread-first, keeping track of previously explored states or not bothering, using different metrics for estimating the value of the current node and the cost of the current path to the goal node, and so forth, which face the would-be designer of a new search process.
At this point I shouldn’t be surprised any more when it turns out that something which looked monolithic and straightforward from the outside turns out to be so nuanced that it has spawned an entire field of academic research.
From my current point of view it looks like I’ll be working on this textbook for another month or two, and at some point I’d like to take the Udacity Artificial Intelligence course. A friend of mine who works at Google vouches for its quality. The only issue is that I don’t want to stall writing the STEMpunk book, so I’ll have to decide how far into next year I want to continue before I end up getting sidetracked.
Thanks for reading!