Elixir Wizards is an interview-format podcast, focused on engineers who use the Elixir programming language. Initially launched in early 2019, each season focuses on a specific topic or topics, with each interview focusing on the guest's experience and opinions on the topic. Elixir Wizards is hosted by Eric Oestrich and Sundi Myint of SmartLogic, a dev shop that’s been building custom software since 2005 and running Elixir applications in production since 2015. Learn more about how SmartLogic uses Phoenix and Elixir. (https://smartlogic.io/phoenix-and-elixir?utm_source=podcast)
Eric Steen on Neuroevolution in AI
Building a sophisticated AI that can evolve to fit our vast and diverse needs is a Herculean challenge. Today we speak with senior engineer Eric Steen about Automata, his experimental Elixir project that uses neuroevolution and cutting edge theory to create a multi-agent behavior tree — or really good AI in the common tongue. But before we tap into that rich topic, we talk with Eric about tech burnout, his background, and why Elixir is an excellent language for writing modern software. He then unpacks AI concepts like the need to develop backpropagation in your system, and the value of “neural diversity,” and Markov decision processes.
After Eric gives his take on architecture versus design and the place of domain-driven design, we discuss Automata. A key breakthrough, Eric shares his enthusiasm for ‘novelty search,’ where machines learn from a variety of new behaviors and searches, as opposed to completing one task at a time. We touch on Automata’s progress, Eric’s long-term approach, and what his project might be used for. Near the end of our interview, we chat about CryptoWise, a collaborative analysis platform for cryptocurrency.
Todd Resudek then opens with another edition of Pattern Matching, where he interviews Whatsapp engineer Michał Muskała. They talk about Michał’s career, the movies and music that he enjoys, and the projects that excite him. Tune in to hear more about both Michał and neuroevolution in AI.
Key Points From This Episode:
- Experiencing tech burnout and challenges around algorithms rendering you redundant.
- Hear about Eric’s programming background and shifts in the industry.
- Backpropagation and using Elixir to build a neural evolutionary system.
- How Markov decision processes help systems choose between possible actions.
- Eric’s take on architecture versus design and the place of domain-driven design.
- Exploring Automata — Eric’s ambitious multi-agent behavior tree.
- The importance of neurodiversity when building AIs; they need to adapt to many needs.
- Novelty search; why learn through one task when you can learn through a variety of tasks at the same time?
- Automata’s practical applications and why Eric sees it as a long-term project.
- Eric shares a progress report on his work and using design processes like Sprint.
- What Eric would like people to use Automata for.
- A sense that Elixir is gaining in popularity within Silicon Valley.
- Eric gives an elevator-pitch for CryptoWise, a collaborative analysis platform for cryptocurrency.
- Todd Resudek interviews Michał Muskała on another edition of Pattern Matching.
- Michał shares his background and his move from Poland to London.
- Movies and music that Michał enjoys, and details on projects that excite him.
- Differences between Erlang and Elixir and why both communities would benefit from working together.
Links Mentioned in Today’s Episode:
SmartLogic — https://smartlogic.io/
Eric Steen on LinkedIn — https://www.linkedin.com/in/ericsteen1/
Eric Steen — https://twitter.com/the_steener
Webflow — https://webflow.com/
Automata GitHub — https://github.com/upstarter/automata
Automata on Slack — https://join.slack.com/t/automata-project/shared_invite/zt-e4fqrmo4-7ujuZwzXHNCGVrZb1aVmA
CryptoWise — https://www.cryptowise.ai/
Hippo Insurance — https://www.hippo.com/
Carl Hewitt — https://en.wikipedia.org/wiki/Carl_Hewitt
Stanford University — https://www.stanford.edu/
MIT — https://web.mit.edu/
Actor Model — https://en.wikipedia.org/wiki/Actor_model
Marvin Minsky — http://web.media.mit.edu/~minsky/
Tensorflex on GitHub— https://github.com/anshuman23/tensorflex
Matrex on GitHub — https://github.com/versilov/matrex
Handbook of Neuroevolution Through Erlang —
https://www.springer.com/gp/book/9781461444626
Markov Decision Process — https://en.wikipedia.org/wiki/Markov_decision_process
Amazon Web Services — https://aws.amazon.com/
The Little Elixir & OTP Guidebook — https://www.amazon.com/Little-Elixir-OTP-Guidebook/dp/1633430111
Elon Musk — https://www.forbes.com/profile/elon-musk/
Welcome to the Era of Deep Neuroevolution — https://eng.uber.com/deep-neuroevolution/
Kenneth O. Stanley — https://www.cs.ucf.edu/~kstanley/
Why Greatness Cannot Be Planned: The Myth of the Objective — https://www.amazon.com/Why-Greatness-Cannot-Planned-Objective/dp/3319155237/
University of Florida — https://www.ufl.edu/
Uber Air — https://www.uber.com/us/es/elevate/
Jeff Bezos — https://www.forbes.com/profile/jeff-bezos/
Sprint — https://www.thesprintbook.com/
Adobe — https://www.adobe.com/
Horde — https://www.horde.org/development/
Libcluster on GitHub — https://github.com/dsteinberg/libcluster
Swift for Tensorflow — https://www.tensorflow.org/swift
Triplebyte Blog — https://triplebyte.com/blog
EquiTrader — https://coinmarketcap.com/currencies/equitrader/
BloXroute Labs — https://bloxroute.com/
Holochain — https://holochain.org/
Michał Muskała on GitHub — https://github.com/michalmuskala
Jason on GitHub — https://github.com/michalmuskala/jason
Todd Resudek on LinkedIn — https://www.linkedin.com/in/toddresudek/
Whatsapp — https://www.whatsapp.com/
CERN — https://home.cern/
Ralph Kaminski — https://ralphkaminski.com/
Jayme Edwards — https://jaymeedwards.com/
Special Guest: Eric Steen.