[ Photos ] [ Portfolio ] [ Cooking ] [ Contact ] [ Resume ]
 
 

Benjamin W. Herila

 

Artificial Intelligence

MySong

This is a program which takes in a .wav file containing a melody and generates a .mid file that harmonizes the .wav file appropriately. This program is based on a paper published by Microsoft Research which is the basis of the Microsoft Songsmith product. 

Simon I, Morris D, and Basu S. MySong: Automatic Accompaniment Generation for Vocal Melodies. Proceedings of ACM CHI 2008 (the 26th SIGCHI Conference on Human Factors in Computing Systems), p725-724.

Developed in cs141: Introduction to Artificial Intelligence at Brown University in Spring, 2009.

Features

  • Pitch detection from input (*.wav) files via external library.
  • Automatic harmonization using Hidden Markov Models and Viterbi algorithm.
  • Key detection based on Viterbi algorithm.
  • Support for multiple musical models, such as classical major keys, minor keys, and "rock."

Demonstration

  • Available upon request (Java/C++, Linux platform only).

Lemonade

This is a software program to model demand states for an imaginary business using Bayesian networks and Monte Carlo methods.

Developed in cs141: Introduction to Artificial Intelligence at Brown University in Spring, 2009.

Features

  • Java Swing graphical display (using JFreeChart)
  • Mean and percentile demand state estimations
  • Bayes and Monte Carlo methods

Demonstration

  • Available upon request (Java)