This course introduces students to a wide variety of models and techniques used by consultants and decision-support software. It covers applications of linear and integer programming, fuzzy logic and fuzzy control, neural networks, constraint programming, Bayesian networks, influence diagrams, analytical hierarchy process, and data envelopment analysis. Such heuristic methods as tabu search, simulated annealing, genetic algorithms, learning based methods, asynchronous teams, and ant colonies are briefly discussed.