| |
Abstract:
We describe a system for learning J. S. Bach's rules of
musical harmony. These rules are learned from examples and are
expressed as rule-based neural networks. The rules are then applied
in real-time to generate new accompanying harmony for a live
performer. Real-time functionality imposes constraints on the
learning and harmonizing processes, including limitations on the
types of information the system can use as input and the amount of
processing the system can perform. We demonstrate algorithms for
generating and refining musical rules from examples which meet
these constraints. We describe a method for including a priori
knowledge into the rules which yields significant performance
gains. We then describe techniques for applying these rules to
generate new music in real-time. We conclude the paper with an
analysis of experimental results.
|