Formulating First Species Counterpoint With Integer Programming
Description
Counterpoint is a theory for composing western polyphonic music. It consists of many rules that regulate melodic and harmonic relationships within each voice or between voices. Because satisfying all of the rules is a difficult, how to search for solutions computationally has been an interesting problem. This paper proposes the first integer-programming-based formulation to the automatic composition for first species counterpoint, the simplest form of counterpoint, as a discrete optimization problem with constraints. Its difference from existing approaches such as constraint programming, stochastic method, and genetic algorithm is that it aims at efficiently accomplishing strict constraint satisfaction and optimality of the solution at the same time.