CS 635: Tools and Environments for Optimization
Spring 2015 (also ISyE)
Michael C. Ferris
- Office: 4381 CS&S
- Telephone: 262-4281
- E-mail: I will not respond to questions about class material via
email. We will use Piazza for this.
- Office Hours: 12 - 1 Mondays, 11:00 - 12:00 Wednesdays
- 9:55 - 10:45 MWF, 107 Psychology
|Mailing list ||firstname.lastname@example.org
|Piazza: questions and answers
|| Getting Started
Piazza is an online tool for asking and answering questions. Piazza is available to you anywhere you have access to the internet. It is delivered and supported by a company called Piazza. Their home page is:
Logging In to Piazza
Once you're logged in, you can stay logged in on that computer. You will need to relogin if you check Piazza from another computer.
|Course URL ||http://www.cs.wisc.edu/~cs635-1
- Wentao Wu
- Office: 1309 CS
- E-mail: email@example.com
- Office Hours: 2:30-4:30 Thursdays
General Course Information (http://www.cs.wisc.edu/~ferris/cs635.html)
Many companies and research programs are integrating optimization
technology into their day to day operations. Manipulating models and
optimization software and applying general operations research
methodology in various contexts is becoming an increasingly sought
This course is designed to teach students about "optimization in
The course involves learning about, using, and analysing
the results of state of the art optimization software.
The student will learn how to design good models for realistic
applications in engineering and the sciences.
Each student will work with others to develop a "commercial strength"
application of optimization technology.
- Course Outline
- Introduction: the development cycle, interacting with clients,
- Fundamentals: basic model classes, linking them together and
tricks to help solve them.
- Modeling Language Concepts: using GAMS to build
- Data Management: obtaining and manipulating data, maintaining integrity.
- Validation: analysis and visualizion of results.
- Tools: Matlab, Spreadsheets, IDE, Embedded optimization
- Other Environments: callable libraries, automatic
differentiation, WEB based optimization and other software.
- Recommended Texts:
The first three of these should be on
2 hour reserve at the Wendt Library.
- Model Building in Mathematical Programming, H.P. Williams,
Wiley, (5th Edition) 2013.
- Introduction to Mathematical Programming, W. Winston and M. Ventataraman,
Duxbury, (4th Edition) 2003.
- Optimization in Operations Research, R. Rardin,
Prentice Hall, 1998.
GAMS - A User's Guide is electronically available.
- Practical Management Science, Winston and Albright, Duxbury
- Handouts from Class
- We will use the resources page on piazza for all handout posting.
Examples directory. Most of the examples carried out in lectures
are stored in this directory. Specific examples are outlined below.
- Assignments and examinations
- Homework assignments: 65% of grade
- Project assignment: 25% of grade
- Final exam: 10% of grade
- No midterm examination in this course. Project is due
at noon on Sunday May 17, 2015.
- Prereq: CS 302, Math 340 or equivalent, CS/ISyE 525 will be quite useful.
- Grading: We will only mark a randomly selected subset of the questions handed in and the mark on this subset will be your mark for the assignment.
At most twice during the semester, and within 24 hours of getting the graded homework assigment back, you can resubmit (under my office door) the complete homework and have it graded in its entirety.
However, if the overall mark is within 10% of the original mark assigned, you will receive the lower of these two marks as your assignment score. If the overall mark is more than 10% different then you will get the higher of the two marks.
- Other Useful Texts:
- Useful sources of information can be found
Programming Assignments and Homeworks
- You may discuss the assignments with your classmates. However, you may not
share any code, copy solution from another person, or carry out an assignment
together. Discussion should only involve verbal communication.
All assignments need to be written up entirely separately.
- Handing in homeworks:
All homeworks will be handed in using the dropbox facility of
You will need to log-on to Learn@UW,
move to the course page,
and use the "Dropbox" tab at the top-left of the page.
Homework is due by 11am on the due date; no late homework will be
accepted (the drop box will be closed automatically).
No homework or project accepted in mailbox of instructor or TA.
Further details will be provided when the assignments are passed out.
- Write a one page outline of project and get it approved by
Michael Ferris (deadline: April 15, 2015).
Answer any questions posed on outline (deadline: April 22, 2015).
- Implement an optimization model, describe/output results in a
form reasonable for the application. Describe, modify, and
implement improvements to the original format if necessary.
Turn in completed project (deadline: Sunday, May 17, 12:00).
For each project I need a hard copy of a (short - less than 4 page) project report. The report should make clear what you have done, and detail your contribution to the "question at hand". If you ran into significant problems with certain aspects of the project, you should detail what the changes you made were, and why they were necessary/time consuming.
Many projects will result in models or extra (electronic) information
that may be useful when I mark the work. If so, all the relevant
files should be assembled into a single "zip" file and submitted using
the stanard drop box procedure (use a file "project.zip"). You can refer to these files within your project report.
- Potential oral defense of project.
- GAMS for your laptop:
A student version of the
GAMS Integrated Development Environment can be downloaded.
Online documentation is more up to date than the above.
It is acceptable to use this version of GAMS to develop your
models for any homework assignment or project but they must be
handed in as detailed above.
Some support for installation, etc will be given by the TA or the
instructor for students who use this software.
This page was updated January 21, 2015.