SYLLABUS ‑ MATH 4/5794: Optimization Modeling

 

Spring Semester ‑ 2003

Professor: Weldon A. Lodwick

 

Office: CU-Denver Building, Room 622

Telephone: 556‑8462 (office - voice mail), 556‑8442 (secretary), 556-8550 (fax)

E-Mail: weldon.lodwick@cudenver.edu

Web Site: http://www-math.cudenver.edu/~wlodwick

 

Office Hours:            Tu            5:25 –   6:55 PM            CU-Denver Bldg 622

W            9:00 – 10:00 AM            CU-Denver Bldg 622

Th            2:55 –   3:55 PM            CU-Denver Bldg 622

                        Other times by appointment

 

Text: I will suggest several texts and make some of these available to be checked.  Periodically you will also receive several packets of articles and/or notes.  Thus, for the moment, there will be no required text.  I have the following material that can be checked out:

  1. GAMS Manual (GAMS is an excellent professional mathematical programming and modeling software system)
  2. MATLAB Optimization Toolbox User’s Guide (the MATLAB Optimization Toolbox is an excellent prototyping mathematical programming software system)

 

Note: Professor H. Greenberg will be giving a GAMS tutorial every Thursday from 5:30PM to 6:45PM (see http://www.gams.com/docs/document.htm) in room 641 of CU-Denver Building (see http://carbon.cudenver.edu/~hgreenbe/courses/S03/Readings.html). It is free and you are welcome/encouraged to attend.

 

Students with Disabilities: If you have a disability that requires accommodation in this course, please see me as soon as possible.  I am happy to make appropriate accommodations provided timely notice is received.

 

Cell Phones: You are to turn off your cell phones prior to entering class.

 

PROPOSED COURSE OUTLINE

The proposed outline is the initial guess of the topics that will be fruitful to investigate.

 

1.       Introduction

a.      Preliminaries

b.      Introductory Examples

c.       Computer Demonstrations

2.       Examples Part 1

a.      MS Scabs (notes)

b.      Radiation Therapy (notes)

c.       Manufacturing  (page 231 Williams)

d.      Transportation (page 249 Williams)

 

3.       General Mathematic Modeling Issues (notes and chapters 1-2 of Williams)

4.       Software – brief tutorials (in-class)

a.      MATLAB Toolbox

b.      GAMS

c.       GAMS and MATLAB

5.       Optimization Modeling Issues (chapters 3-11 of Williams)

a.      Model Formulation

b.      Validation

c.       Model Understanding

d.      Redundancy and Infeasibility

e.      Algorithms

f.       Modeling Languages

g.      Model Equivalence

6.       Optimization Model Types (we’ll concentrate on LP/NLP)

a.      Static (Williams)

                                                              i.      Linear

                                                            ii.      Nonlinear

                                                          iii.      Integer

                                                           iv.      Mixed Integer

b.      Heuristic (Notes)

                                                              i.      Genetic Algorithms

                                                            ii.      Simulated Annealing

                                                          iii.      Tabu Search

c.       Dynamic (graduates)

                                                              i.      Dynamic Programming

                                                            ii.      Optimal Control

7.       Examples (chapters 12-13 Williams)

 

8.       Advanced Topics – if there is time

a.      Multiple Criterion Optimization Models

b.      Duality

c.       Algorithms

d.      Post-optimization Analysis

 

MY APPROACH TO TEACHING

I believe that teaching is a process that involves an active partnership.  My role is that of a guide to your learning.  Therefore, I am responsible to open the way, to encourage, and to nudge you toward your own learning.  In the context of optimization modeling, I will try to model the process of applying mathematics to problems in optimization. I will help guide you toward this learning by providing mathematics for you to experience.  It is my aim to communicate mathematics in a way that is supportive and nurturing of your efforts. Your role is to find a way to experience and articulate the mathematics that is presented and that you encounter.  I believe that it is your responsibility to let me know when you find yourself not understanding mathematical concepts that are presented in class.  Once you make this known, it is our responsibility to work on trying to attain clarity.  I will try to be as proactive as possible.  I believe that results on assignments, the midterm and the project give us the opportunity to clearly see where the areas of mathematical understanding are and what areas need more attention.

 

OUTCOMES

By the end of the semester you should be able to read, understand and apply appropriate methods associated with aspects of optimization modeling we’ve studied this semester to correctly solve associated problems.  Secondly, given a problem in optimization modeling, you should be able to: (i) translate the description of the problem into an algorithm, (ii) choose and apply the appropriate software method(s), (iii) obtain the correct solution(s), and (iv) (correctly) interpret and display results.  Lastly, by the end of the semester you should be able to judge, for yourself, the veracity of statements made in the areas of our study.

 

  EVALUATION

The following are components that will be evaluated.

  1. Literature Review - annotated bibliography (10%)
  2. Assignments – four problem sets (30%)
  3. Exam – in-class exam (30%)
  4. Project – optimization model (30%)

 

** Graduate students will have extended content and be held to higher standards.

The grade assignments are on the 10 percent scale (A = 90%-100%, B = 80%-89%, C = 70%-79%, D = 60-69%).

 

IMPORTANT DATES:

First problem set – February 18th

Annotated bibliography – February 21st

Project proposal – February 28th

Project division of labor – March 7th

Second problem set  – March 14th

Midterm – March 20th

Third problem set – April 18th

Fourth problem set – May 13th

Project Reports – May 15th

 

 

General advice: Keep all materials that I turn back in case you think I have not credited you with the points you earned.  I can only correct your score if you have what I have turned back to you. It is a good idea to copy anything that you turn in just in case I lose what you turn in.  Please check to make sure that the points you earned are the points I have recorded.  Note: The statistics that I have read about correctness of professors in recording grades state that there is a 6% error rate in our recording of your grades.  Please make sure that I have correctly recorded your points.

 

POLICIES

Adds, drops and incomplete grades: See Schedule of Courses for the relevant dates with respect to adding and dropping this course.  Given the budget cuts facing universities, you must be registered by the dated specified or you will not get credit.  The incomplete policy of the Mathematics Department and the College of Liberal Arts and Sciences is strictly enforced.  Incomplete grades are given only in situations in which a student who has been in good standing all semester, is prevented from completing a course assignment (for example the final exam) due to circumstances beyond her/his control (for example, hospitalization, jury duty, revised job assignments, death in the family).

 

Legitimate Excuses: Legitimate excuses are for reasons that are beyond your control.  You may be required to produce an official, signed excuse.  If you are needed in a wedding, for example, you must talk to me prior to the (blessed) event.  If you are legally arrested, then this is not a legitimate excuse.  For matters that are within your control, the general rule is that it is not excused.  However, talk to me prior to the event.

 

INSTRUCTIONS FOR PROJECTS

A project consists of:

1.       Proposal – A formal written proposal is to be submitted for my approval.  A proposal must contain:

a.      Title

b.      An optimization problem

c.       The description of the problem and the data

d.      The methods (software) you will be using to solve the problem

e.      Tasks and subtasks associated with the problem

2.       Division of labor – Once a project is approved, the tasks and subtasks you have identified in your project are given associated due-date, written up and submitted to me.

3.        Software – Each project will likely have associated software development.  If the project does not have a software component, this section will be modified according to the project proposal.  The components of the software development are:

a.      Code - the actual computer implementation of the project.  Attention must be paid to efficiency, readability and portability.

b.      User interface – the way information is passed to the software must be compelling to the client.

c.       Data and inputs

d.      Execution - the algorithm as run must correctly perform what it was designed to do.

e.      Output - relevant, clear display of solution (tables, graphs, images).

f.       Ease – ease of use.

g.    Documentation – an in-line and hardcopy of the documentation on how to use the software needs to be written.  Moreover, help files must be part of the software.

4.       Testing – each project must have a test data set and the optimization model must run on the test data.  Part of the test data is for debugging and verifying that the algorithm is working correctly.  Other data is gathered to solve the specific project problem.

 

FINAL PROJECT REPORT: Each person will need to submit a final report.  This will be done in MS-Word or Latex.  The final report will (subject to modifications we uncover) consist of:

1.       Introduction

2.       Project

a.       Theoretical foundations – theory, application, algorithms

b.      Software – description

c.       Results – solutions, limitations and improvements

3.       Opportunities for further research

4.       Conclusions

5.       Bibliography

6.       Appendices

a.      Source code

b.      Test problems and data

c.       Documentation