Layers of Reflection is the personal blog of Bo Morgan. The following is Bo’s origin story.
I was 10 years old when my younger brother, Leaf, brought home a programming book from school called How to Program a Monster, which included example programs in the language, BASIC, that I used to program our family Atari 800 computer. My older brother, Paul, recommended that I learn a real programming language, and he gave me a copy of Borland C++ for MS-DOS, which he installed on our new IBM-compatible 386 PC.
My love for programming began with writing games, and was inspired by the popular games of the time, such as Lemmings, which included pixel perfect game logic, side scrollers, like Mario Brothers, as well as real time strategy games, like Warcraft, where I wrote my first path planning algorithms.
My dad gave me a book called C++ Neural Networks and Fuzzy Logic, which I read and used my first feedforward backpropagating neural networks in my games as well as what became my full time focus in high school, which was my science project, a global climate simulation trained on one gigabyte of data that I downloaded from the nasa.gov Internet site. My science project won the Greater San Diego Science and Engineering Fair, which sent me to represent the United States at the New Zealand national science fair.
My high school physics teacher recommended that I attend the Massachusetts Institute of Technology (MIT), a school that I had never heard of, but it was 3000 miles away from my parents and was in the snow, which was very exciting to me at the time, having grown up in San Diego, California.
At MIT, I fell in love with neuroscience and biology, and continued my studies of computer science and electrical engineering. MIT has a program, called an Undergraduate Research Opportunity (UROP), so I worked through the summers as a UROP with Push Singh, the last graduate student of the great AI professor Marvin Minsky, whom received his PhD studying neural networks, so I felt that Minsky’s early passions for neural networks may have been similar to mine. For my undergraduate years, I built a multiplatform rigid body physics robot simulation that ran on Windows, MacOS, and Linux, based on OpenGL and Open Dynamic Engine (ODE), which introduced me to the power of open source software for developing cross platform applications.
For my masters degree at the MIT Media Lab, I focused on large scale probabilistic reasoning algorithms. I used a Markov Random Field (MRF) to represent the probabilistic transition matrix of a 100,000 bit first-person commonsense natural language propositional state space combined with mixtures of gaussians for continuous temporal and spatial inference in a tool, which performed inference over distributed sensor network data.
At the end of my Masters degree, I had worked for Push Singh for 7 years when he committed suicide. Sadly, this added to a growing list of close friends that had died due to suicide and other causes at MIT.
For my PhD studies, my dissertation focused on layered reflective learning and planning, a theory of how to plan, execute plans, and respond to plan execution failures with a general form of reflective learning. The technical implementation of my PhD was a novel reflective programming language for building reflective layered AI systems. Gerald Jay Sussman, famous for writing one of the first critically reflective planning AI systems, as well as the Sussman Anomaly, where a problem solver must sometimes go further away from a goal in order to ultimately get closer to it, signed my PhD along with Minsky, Joseph Paradiso, and the computational metacognition expert, Michael Cox. I was 31 years old and had spent 14 years at MIT.
After graduating with my PhD, I decided to take a relaxing break from academia by joining a start-up company in Palo Alto, where I worked on a smartphone robot toy that used Google speech recognition and synthesis to have conversations with children. For this work, I worked with doctors at UCSF to develop a Social and Emotional Learning (SEL) training application to help teenage girls and boys with depression and suicide by focusing on ages 8 to 12, just prior to puberty, when social thinking skills become critically necessary for children in school. We gathered evidence of our software’s effectiveness in exercising social thinking in children by comparing metabolic activity in the dosolateral prefrontal cortex and parietal cortex brain regions as they interact with our software while in fMRI machines at UCSF.
After my time with the Palo Alto start up, I worked at DreamWorks Animation with directors and artists to build automatic planning systems for telling stories and generating artistically designed adaptive interactive social and emotional learning experiences. While at DreamWorks, I met Nina Valeryevna Demenchukova, the love of my life.
In 2016, I started working at Apple. Nina and I were married two years later. I continue to work at Apple today.