CSCI 576 class project at University of Southern California