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.
Log in or sign up for Devpost to join the conversation.