Inspiration

  • After one of our members took a music theory class, he realized that composing music was like solving a puzzle with a given set of rules, which is in essence what an AI system is designed to do.
  • We decided to base our project off of this concept.

What it does

  • The Melody Maker does exactly what the title suggests: it produces a melody using chord progressions which are defined through recursive prolog.

How we built it

  • We defined 7 chords as facts
  • Produced a list of notes based on the list of predefined chords

Challenges we ran into

  • Installing WSL
  • The process of installing s(CASP)
  • Figuring out how to use recursion in s(CASP) prolog

Accomplishments that we're proud of

  • Learning how to query prolog files through s(CASP)
  • Successfully debugging recursion related issues

What we learned

  • We learned how to utilize the s(CASP) system in addition to the prolog language that it is based on
  • We also learned the importance of using each of our unique skills to function efficiently as a team

What's next for Melody Maker

  • At the moment, Melody Maker only produces numbers to represent notes. We will add functionality to convert these numbers into MIDI files which can be played on Digital Audio Workstations to produce actual sounds.
  • We can add rhythm to the melodies to create more complexity
  • We can also layer on the predefined chords to the melody that's being produced
  • By utilizing rhythm, complex beats can be produced using a variety of percussion such as snares, hi-hats, kicks, and bass.

Built With

  • prolog
Share this project:

Updates