Astro Teller, Manuela Veloso

Signal understanding programs are learned through artificial evolution

Researchers at CMU have developed the PADO system that learns to distinguish between multiple classes of signals from a set of labeled example signals. Signals can be arbitrarily complex and can come from domains as diverse as video images, acoustic data, and genetic sequences.

Learning is done through artificial evolution of programs constructed in a novel representation called Neural Programming, which combines a connectionist approach with hierarchical parameterized block programming. Learned programs successfully classify new signals in real time.

Neural Programming is developed within the context of the PADO system specifically for the purpose of evolving programs to do difficult signal understanding problems.  One of the main benefits of the neural programming language is that it supports Internal Reinforcement in the context of the evolution of programs. Internal Reinforcement enables PADO to selectively evolve and appropriately alter good programs towards improved signal understanding performance.