### Classroom Tools for Game Theory

Sérgio O. Parreiras

Published March 20, 2014

The Karush-Kuhn-Tucker equations (under suitable conditions) provide necessary and sufficient conditions for the solution of the problem of maximizing (minimizing) a concave (convex) function. This article corrects the program in [1], which computes the solution of Karush-Kuhn-Tucker equations. Our main goal, however, is to provide a program to compute the set of all Nash equilibria of a bimatrix game. The program works well for “small” games (i.e. 4×4 or smaller games); thus, in particular, it is suitable for constructing classroom examples and as an additional tool to empower students in classes using game theory. Read More »

### Exploring Fractal Curves

José L. Ramírez, Gustavo N. Rubiano

Published February 19, 2014

This article implements some combinatorial properties of the Fibonacci word and generalizations that can be generated from the iteration of a morphism between languages. Some graphic properties of the fractal curve are associated with these words; the curves can be generated from drawing rules similar to those used in L-systems. Simple changes to the programs generate other interesting curves. Read More »

### Implementing Nonparametric Bayesian Inference

John Cassel

Published January 9, 2014

Probabilistic programming is a programming language paradigm receiving both government support [1] and the attention of the popular technology press [2]. Probabilistic programming concerns writing programs with segments that can be interpreted as parameter and conditional distributions, yielding statistical findings through nonstandard execution. *Mathematica* not only has great support for statistics, but has another language feature particular to probabilistic language elements, namely memoization, which is the ability for functions to retain their value for particular function calls across parameters, creating random trials that retain their value. Recent research has found that reasoning about processes instead of given parameters has allowed Bayesian inference to undertake more flexible models that require computational support. This article explains this nonparametric Bayesian inference, shows how *Mathematica*’s capacity for memoization supports probabilistic programming features, and demonstrates this capability through two examples, learning systems of relations and learning arithmetic functions based on output. Read More »