COMPLEXITY AND HEURISTICS IN RULE-BASED ALGORITHMIC MUSIC COMPOSITION