Nikolay-Lysenko/rl-musician

View on GitHub
rlmusician/configs/default_config.yml

Summary

Maintainability
Test Coverage
piece:
  tonic: C
  scale_type: major
  cantus_firmus:
    - C4
    - D4
    - E4
    - C4
    - A3
    - B3
    - C4
    - G4
    - E4
    - C4
    - D4
    - C4
  counterpoint_specifications:
    start_note: G4
    end_note: C5
    lowest_note: C4
    highest_note: B5
    start_pause_in_eighths: 4
    max_skip_in_degrees: 7
  rules:
    names:
      - rhythmic_pattern_validity
      - rearticulation_stability
      - absence_of_stalled_pitches
      - absence_of_long_motion
      - absence_of_skip_series
      - turn_after_skip
      - VI_VII_resolution
      - step_motion_to_end
      - consonance_on_strong_beat
      - step_motion_to_dissonance
      - step_motion_from_dissonance
      - resolution_of_suspended_dissonance
      - absence_of_large_intervals
      - absence_of_lines_crossing
      - absence_of_overlapping_motion
    params:
      absence_of_stalled_pitches:
        max_n_repetitions: 2
      absence_of_long_motion:
        max_distance_in_semitones: 9
      absence_of_skip_series:
        max_n_skips: 2
      turn_after_skip:
        min_n_scale_degrees: 3
      step_motion_to_end:
        prohibit_rearticulation: true
      absence_of_large_intervals:
        max_n_semitones: 16
      absence_of_lines_crossing:
        prohibit_unisons: true
  rendering_params:
    dir: outputs
    measure_in_seconds: 1.0
    midi:
      cantus_firmus_instrument: 0
      counterpoint_instrument: 0
      velocity: 100
    sinethesizer:
      cantus_firmus_instrument: brass
      counterpoint_instrument: bowed_string
      velocity: 0.8
environment:
  scoring_coefs:
    climax_explicity: 1
    entropy: 1
    looped_fragments: 1
    narrow_ranges: 1
    number_of_skips: 1
  scoring_fn_params:
    climax_explicity:
      shortage_penalty: 0.3
      duplication_penalty: 0.5
    looped_fragments:
      min_size: 4
      max_size:
    narrow_ranges:
      min_size: 9
      penalties:
        2: 1
        3: 0.5
    number_of_skips:
      rewards:
        1: 0.8
        2: 0.9
        3: 1.0
        4: 0.9
        5: 0.5
        6: 0.25
  reward_for_dead_end: -3
agent:
  beam_width: 5
  n_records_to_keep: 10
  n_trials_estimation_depth: 3
  n_trials_estimation_width: 10
  n_trials_factor: 3
  paralleling_params:
    n_processes: