Composition of music with reinforcement learning.
As of now, this is a proof-of-concept for music composition with reinforcement learning solely. Here, creation of fifth species counterpoint is considered and environment is based on a special data structure that represents musical piece with pre-defined cantus firmus. An action is adding a new note to a counterpoint line, an episode is finished when counterpoint duration becomes equal to that of cantus firmus, and reward is determined by applying evaluational rules to the resulting piece.
To install a stable version, run:
pip install rl-musician
To create a reward-maximizing musical piece and some its variations, run:
python -m rlmusician [-c path_to_your_config]
Default config is used if
-c argument is not passed. Search of optimal piece with these default settings takes about 5 minutes on a CPU of a regular laptop. Before creating a new config, it might be useful to look at an example with explanations.
If you are on Mac OS, please check that parallelism is enabled.
Generated pieces are stored in a directory specified in the config. For each piece, there is a nested directory that contains:
- MIDI file;
- WAV file;
- Events file in sinethesizer TSV format;
- PDF file with sheet music and its Lilypond source.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size rl-musician-0.4.5.tar.gz (34.2 kB)||File type Source||Python version None||Upload date||Hashes View|