70 likes | 103 Views
Using Artificial Markets To Teach Computer and Information Science*. * Based on Discussion with GMO: Nehal Patel and Mark Mueller. by Karl Lieberherr Northeastern University, CCIS/PRL Joint work with Ahmed Abdelmeged and Feng Zhou. Artificial markets / my teaching.
E N D
Using Artificial MarketsTo Teach Computer and Information Science* * Based on Discussion with GMO: Nehal Patel and Mark Mueller. by Karl Lieberherr Northeastern University, CCIS/PRL Joint work with Ahmed Abdelmeged and Feng Zhou GMO
Artificial markets / my teaching • Trading Robots that need to survive in a virtual world of an artificial market of financial derivatives. • Trading Robots that don’t follow the world rules don’t survive. • Trading Robots are ranked based on their bank account. • Teaches students about software development and analyzing and approximating optimization problems. GMO
Survive in an artificial market • This past year all my students in my software development classes developed trading robots for the game SDG(Max). Each robot contains a: • Derivative buying agent • Derivative offering agent • Raw material production agent • Finished product agent (solves Max) • Winning in robot competitions strongly influences the final grade. • Game is interesting even if players are far from perfect. GMO
SDG(Max) • Choose an maximization problem. • Partition instances using predicates. • Derivative = (Predicate, Price in [0,1], Player). • Players offer and buy derivatives. • Buying a derivative gives you the rights: • to receive raw material R satisfying the predicate. • upon finishing the raw material R at quality q (trying to find the maximum solution), you receive q in [0,1]. GMO
To play well: solve min max maximum solutions instances selected by predicate (a huge set) 0.91 0.62 0.8 0.618 0.619 minimum Analysis for one Derivative GMO
SDG(MAXSAT) • Choose a maximization problem: Maximum Satisfiability. Instances = weighted clauses. • Predicates = Allowed Clause Types. • Derivative = (Predicate, Price in [0,1], Player) • Example: (((2,0),(1,1)), 0.55, Ahmed) • Players offer and buy derivatives. • Buying a derivative gives you the rights: • to receive raw material R satisfying the predicate. • upon finishing the raw material R at quality q (trying to find the maximum solution), you receive q in [0,1]. GMO
SDG(MAXSAT) • Choose a maximization problem: Maximum Satisfiability. Instances = weighted clauses. • Predicates = Allowed Clause Types. • Derivative = (Predicate, Price in [0,1], Player) • Example: (((2,0),(1,1)), 0.55, Ahmed) • Players offer and buy derivatives. • Buying a derivative gives you the rights: • to receive raw material R satisfying the predicate. • upon finishing the raw material R at quality q (trying to find the maximum solution), you receive q in [0,1]. • Break-even Price: (((2,0),(1,1)), 0.618, Player) = (((2,0),(1,1)), GoldenRatio, Player) • Phase Transition Point separating P from NP. GMO