Dr. Rod Goodman

Information Processing Systems

Overview

This research was more algorithmically based, building on neural networks, machine learning, and information theory and coding.

Applications

System applications developed included:

Rule-Based Neural Networks

Rule-Based Neural Networks – The ITRULE algorithm featured automated information-theoretic induction of rules from data, and their implementation as a parallel probabilistic neural network architecture. Advantages of this approach included true Bayesian probability outputs for classifiers, and an explicit, and therefore understandable, architecture where links are probabilistic rules.

P. Smyth and R.M. Goodman, “An Information Theoretic Approach to Rule Induction from Databases,” IEEE Transactions on Knowledge and Data Engineering, Vol. 4, No. 4, pp. 301-316, August 1992.

R.M. Goodman, P. Smyth, C.M. Higgins & J. Miller, “Rule-Based Neural Networks for Classification and Probability Estimation,” Neural Computation, Vol. 4, No. 6, pp. 781-804, November 1992.

Diagram

Probabilistic Rule Based Network derived automatically by ITRULE from a mutual fund database

ADMIRE - Advanced Music via Information Theoretic Rule evaluation
Bach

The ADMIRE system can automatically learn rules representing a particular style of music (for example, the harmony of J.S. Bach), then use those rules to generate new music in the same style. The ADMIRE algorithms are capable of generating accompaniment for a performing musician in real-time.

ADMIRE is entirely written in software and runs on a PC. It has minimal hardware requirements and needs no custom-built hardware. ADMIRE accepts user input through the computer keyboard and, through any synthesizer or musical keyboard connected to the computer via a standard MIDI interface. ADMIRE's output is sent back across the MIDI interface to a synthesizer for playback.

The ADMIRE system is covered by US Patents:
Rodney M. Goodman, Randall R. Spangler, “Music Composition,” U.S. Patent 5,883,326, March 16, 1999.
Rodney M. Goodman, Randall R. Spangler, “Music Composition,” U.S. Patent 5,736,666, April 7, 1998.

Generated Rules

Here are some of the rules generated by ADMIRE using Bach chorales as input. These rules are some of the most commonly used in classical Bach harmony and appear in any first-year music theory textbook. It is important to note that ADMIRE was not told these rules but learned them on its own.

  1. IF Melody0=E AND Function1=V THEN Function0=I. This is the strongest cadence (ending) in classical Bach harmony (G Major → C Major).
  2. IF Melody0=F AND Function1=V THEN Function0=IV. Another common transition (G Major → F Major).
  3. IF Function1=V AND Function0=IV THEN Inversion0=II. Combined with rule 2 above, always places the V → IV transition in first inversion.
  4. IF Function1=V AND Function0=I THEN Inversion0=I0. Combined with rule 1 above, always places the V → I cadence in root position (the strongest position for an ending chord).
  5. IF Function0=vii07 THEN Inversion0=II. Always places diminished 7th chords in first inversion (in classical Bach harmony, diminished 7th chords are always placed in inversion).
ADMIRE Music Composition Examples

In the following examples, ADMIRE was given common melodies to harmonize. In each case, ADMIRE was capable of generating suitable harmonies. While the harmonies do not match the traditional Western harmonies for the pieces, they are still consonant. Had Bach written a harmony for "Happy Birthday," he might very well have written these notes.

Caltech Electronic Nose

ADMIRE’s Bach-like harmony for "Happy Birthday"

Click the links to hear ADMIRE's music

"The Liberty Bell", harmonized by ADMIRE
J.S. Bach Chorale #2, harmonized by ADMIRE (and by J.S. Bach, for comparison)

Happy Birthday

Liberty Bell

Chorale#2 by Bach

Chorale#2 by ADMIRE

Scroll