Chorale harmonization: A view from a search control perspective

Abstract Chorale harmonization is one of the most popular problem domains for AI-music researchers. The problem has been approached with various techniques ranging from a knowledge intensive approach on one end to a data intensive approach on the other end. Various approaches offer different strengths and pose different weaknesses. In this report, we explain our knowledge intensive approach. Here, we view chorale harmonization from a search control perspective. In this perspective, the harmonization activities are discretely captured as states. These states form a state space, which cannot be exhaustively examined since it is intractable by nature. To overcome the intractability problem, we propose a careful knowledge engineering approach. The approach offers a useful language specialized for the chorale harmonization task. This language controls the search at the meta-level through its three primitives, namely: rules, tests and measures. The harmonization outputs obtained from this method are very promising. The approach also offers a very promising application in the AI-education area.

[1]  Franz Baader,et al.  Logic-Based Knowledge Representation , 1999, Artificial Intelligence Today.

[2]  Chris Mellish,et al.  Statistical Learning of Harmonic Movement , 1999 .

[3]  William Shottstaedt,et al.  Automatic counterpoint , 1989 .

[4]  James Kippen,et al.  Bol processor grammars , 1992 .

[5]  Ryan A. McIntyre,et al.  Bach in a box: the evolution of four part Baroque harmony using the genetic algorithm , 1994, Proceedings of the First IEEE Conference on Evolutionary Computation. IEEE World Congress on Computational Intelligence.

[6]  Kemal Ebcioglu,et al.  An Expert System for Harmonizing Chorales in the Style of J. S. Bach , 1990, J. Log. Program..

[7]  Somnuk Phon-Amnuaisuk,et al.  Evolutionary methods for musical composition , 1998 .

[8]  Christopher K. I. Williams,et al.  Harmonising Chorales by Probabilistic Inference , 2004, NIPS.

[9]  Alan Smaill,et al.  Representing music for analysis and composition , 1990 .

[10]  Wolfram Menzel,et al.  HARMONET: A Neural Net for Harmonizing Chorales in the Style of J. S. Bach , 1991, NIPS.

[11]  Francis Courtot Logical representation and induction for computer assisted composition , 1992 .

[12]  Mark Steedman,et al.  A Generative Grammar for Jazz Chord Sequences , 1984 .

[13]  David Cope,et al.  Computers and Musical Style , 1993 .

[14]  Martin Henz,et al.  COMPOzE-intention-based music composition through constraint programming , 1996, Proceedings Eighth IEEE International Conference on Tools with Artificial Intelligence.

[15]  Ian H. Witten,et al.  Multiple viewpoint systems for music prediction , 1995 .

[16]  Bernard Bel Symbolic and sonic representations of sound-object structures , 1992 .

[17]  Somnuk Phon-Amnuaisuk An explicitly structured control model for exploring search space : chorale harmonisation in the style of J.S. Bach , 2002 .

[18]  Geraint A. Wiggins,et al.  The Four-Part Harmonisation Problem : A comparison between Genetic Algorithms and a Rule-Based System , 1999 .

[19]  Leonard Isaacson,et al.  Musical composition with a high-speed digital computer , 1957 .

[20]  Peter M. Todd,et al.  A Connectionist Approach To Algorithmic Composition , 1989 .

[21]  D. Cope Virtual Music: Computer Synthesis of Musical Style , 2001 .

[22]  Camilo Rueda,et al.  Objects, Time and Constraints in OpenMusic , 1998, ICMC.

[23]  Somnuk Phon-Amnuaisuk Logical Representation of Musical Concepts (for Analysis and Composition Tasks Using Computers) , 2004 .

[24]  Somnuk Phon-Amnuaisuk Control Language for Harmonisation Process , 2002, ICMAI.

[25]  Daniel Taupin,et al.  MusicT~X: Using TEX to Write Polyphonic or Instrumental Music , 1993 .

[26]  Leon Sterling,et al.  The Art of Prolog , 1987, IEEE Expert.