**Schedule: **W 7:20-10:00 pm,
Exploratory Hall 4106

**Instructor: **Igor Griva, igriva@gmu.edu , (703) 993-4511

**Office hours: **W 10:00 - 11:00 pm, Exploratory Hall, Rm 4114

**Prerequisite: **Permission of instrustor

**Webpage: **math.gmu.edu/~igriva/CSI747.html

**Text: **Robert Fourer, David M. Gay, and Brian W. Kernighan, *
AMPL: A Modeling Language for Mathematical Programming. *Duxbury Press / Brooks/Cole Publishing Company, 2002

**Exams: **There is one midterm exam:
November 16 (points 0 - 100)

**Final Exam **: December 14 (points 0 - 100)

**Final score: **F = 0.3*(Midterm) + 0.4*(Homework / Projects) + 0.3*(Final Exam)

General description:

The course focuses on practical aspects of nonlinear optimization. The main goal of this class is to show students how to use modern optimization tools in order to solve important problems arising in many areas of science and engineering. We consider problems in the following areas: data analysis, computational learning, mechanics, optical design, trajectory optimization, shape optimization, optimal control and finance.

The course demonstrates that many real world problems can be modeled as optimization problems and solved by widely available optimization tools. Throughout the course we present various optimization models and demonstrate how to solve them using optimization software. These models are expressed in the AMPL modeling language. This language is used as a common mechanism for conveying optimization problems. The course emphasizes the importance of proper modeling. One of the main point this course illustrates is that often a real world problem can have multiple equivalent mathematical formulations some of which are numerically tractable while others are not. Basics of nonlinear optimization theory will be also discussed.

**Additional text on optimization methods:** Igor Griva, Stephen G. Nash, Ariela Sofer, *Linear and Nonlinear Optimization*, Second Edition, SIAM, Philadelphia, 2009

Instructions how to install and run AMPL with solvers

For Windows systems:

**To install:** Create a folder where you will put all your AMPL-related files.
Copy the distribution zipfile, ampl_mswin32.zip or ampl_mswin64.zip, to your
folder. Then "unzip" this file to place all of the individual AMPL program
files into your folder; usually the unzip process can be started by
double-clicking on the zipfile.

**To run immediately:** Double-click "sw.exe" and type "ampl" at the prompt in
the window that appears. Then you will see an "ampl:" prompt and can
proceed to type AMPL commands. By default the MINOS solver will be invoked
by AMPL's "solve;" command; to switch to another solver, use a command of
the form "option solver xxx;" where xxx is a solver that you have been
instructed to use.

**To run in an integrated application:** Follow the Windows instructions
to install the AMPL IDE.

For Linux systems:

**To install:** Create a directory where you will put all your AMPL-related
files. Copy the distribution zipfile, ampl_linux-intel32.zip or
ampl_linux-intel64.zip, to your directory. Then "unzip" this file to place
all of the individual AMPL program files into your directory; most Linux
systems provide an unzip command for this purpose, or you can use the
decompression option of the zip command.

**To run immediately:** Open a command window, use "cd" to go to your AMPL
directory, and type "ampl" at the system prompt. Then you will see an
"ampl:" prompt and can proceed to type AMPL commands. By default the MINOS
solver will be invoked by AMPL's "solve;" command; to switch to another
solver, use a command of the form "option solver xxx;" where xxx is a solver
that you have been instructed to use.

**To run in an integrated application:** Follow the Linux instructions
to install the AMPL IDE.

For MacOS systems:

**To install:** Create a folder where you will put all your AMPL-related files.
Copy the distribution zipfile, ampl_macosx32.zip or ampl_macosx64.zip, to
your folder. Then "unzip" this file to place all of the individual AMPL
program files into your folder; usually the unzip process can be started by
double-clicking on the zipfile.

**To run immediately:** Open a Mac terminal window, use "cd" to go to your AMPL
folder, and type "./ampl" at the system prompt. Then you will see an
"ampl:" prompt and can proceed to type AMPL commands. By default the MINOS
solver will be invoked by AMPL's "solve;" command; to switch to another
solver, use a command of the form "option solver './xxx';" where xxx is a
solver that you have been instructed to use.

**To run in an integrated application:** Follow the MacOS instructions
to install the AMPL IDE.