Heuristic Optimization with Mathematica

Experiences from a Teacher's and Students' Perspective.

Namrata Khemka, Ph.D. Candidate

Christian Jacob, Associate Professor

University of Calgary, Canada

Optimization

Optimization Methods

Heuristic Optimization Course

Heuristic approaches work well on different problems in various domains.

Introduced and developed a new fourth year undergraduate course.

The course was conducted for six weeks during the Summer 2007 session.

We met the students for 6 hours each week.

Heuristic Optimization Course Outline

Introduction to Optimization and Course

Introduction to Mathematica

Evolutionary and Swarm Computation in Action

Conventional Methods

Evolution Strategies

Evolutionary Programming

Genetic Algorithms

Genetic Programming

Particle Swarm Optimization

Ant Colony Optimization

Student Project Presentations, Oral Final Exam

Highlighted Student Project 1: GP-Tetris

Osama Al-Eryani

Highlighted Student Project 2: Random Boolean Networks

Afshin Esmaeili and Yingzi Li

Highlighted Student Project 3: Chern-off Faces

Vittorio Cortese and Steven Tse

Highlighted Student Project 4: Music Evolution

Brina Goyette

Other projects

Evolution of strategy rules for games (snakes game)

A Physics-inspired Register Allocation Heuristic

Exam Scheduling

Modeling Swarm Behaviour

Avalanche Predictions

Lawn mower Problem

Conclusion

Students learnt that Mathematica can be used as a: 
	- programming environment
	
	- research tool
	
	- platform for application development.

The built-in symbolic and visualization capabilies made our teaching easier.

Mathematica's interactive computing allowed us to create dynamic interfaces.

Mathematica gave students the power to generate useful visualizations and develop tools for scientific explorations.

Questions