MPL On-Line Tutorial
The MPL On-line Tutorial has been specifically designed for teaching optimization modeling the way it is currently being applied in the corporate world. Included is a complete course, featuring MPL, with all of the supporting tools needed for teaching optimization modeling directly from the Internet. This includes a FREE student version (300 constraints and variables) of MPL for Windows with the CPLEX solver and the OptiMax 2000 Component Library, available as a download from the Maximal Software Web-site.
About This Tutorial
This tutorial is comprised of several sessions, each introducing various new concepts in graded levels of difficulty. Each session starts with a general discussion of the topic, followed by an explanation of the new concepts being introduced. A description of the problem to be formulated is then given, followed by a complete formulation of the model. The model is either a new model, or a modification of a model formulated in a previous session. A detailed step-by-step description of the process involved in entering the model is then given, and finally the model is solved and its output analyzed. By the end of this tutorial you will have a good working knowledge of MPL, and how to formulate “real world” optimization models.
We have deliberately not gone extensively into the theory of linear programming, and the mathematics of the underlying solution methods. This area is already covered in many excellent textbooks currently in circulation, and discussing it further would add nothing new. In fact, it would only impede us in reaching our main goal, which is to teach optimization modeling through the formulation of real world LP models.
The concepts that are covered in this tutorial, that are essential to practical optimization modeling, include: using vectors and indexes; separating data from the model; special types of constraints, such as balance constraints; and various data management issues, such as the difference between using sparse and dense data.
The MPL Modeling System has a highly advanced integrated model development environment, which allows the user to quickly formulate and solve models. Within that system is the MPL Modeling Language which has a full-featured algebraic language for formulating optimization models. We strongly believe that MPL has some unique features that make it the ideal choice for teaching optimization modeling, such as an easy-to-use graphical user interface, straightforward easy-to-learn syntax, and powerful data management capabilities.
This tutorial can either be used as a stand-alone course on modeling, or as supplementary material to standard textbooks on Operations Research and Linear Programming.
Structured Modeling Language vs. Traditional Optimization Software
Over the last few years the field of optimization software has advanced by leaps and bounds. Models with tens of thousands of constraints, that were considered very difficult only a few years ago, are now considered to be easy to solve on a personal computer.
Today advanced commercial solvers, such as CPLEX, can be viewed as a black box where the user can send in large-scale models, with hundreds of thousands of variables, and be reasonably certain that the package will yield a solution, without any special interaction from the user.
The size of problems that corporations are dealing with has increased and the speed of commercial optimization packages have risen dramatically to meet this demand. This means that users need more advanced tools to collect and manage the data, formulate the model and deliver it to the solver. This is where an advanced modeling system, such as MPL, can become very valuable.
With the increased importance of optimization modeling in the business world, the software that students need to learn today is simply different from a few years ago. When problem sizes were small, and the optimization software packages were not very advanced, intimate knowledge of solution methods, such as the Simplex algorithm, were necessary to be able to do optimization projects. Today, the experience and understanding of the software involved in the modeling process, is much more important than studying the internal workings of the solution methods. To achieve that objective, this tutorial has been designed to give students an opportunity to learn on software that is being used by large corporations throughout the world.
Teaching Optimization Modeling Today
One of the reasons, that O.R. instructors have not been able to assign larger models, that resemble “real world” models, to their students is because of the limitations of the software available to them. Most textbooks today, on linear programming and optimization, teach students primarily methods and algorithms, and formulation of very small models, typically involving less than ten variables and constraints. The software that is generally available with these textbooks can usually only deal with plain variables and constraints, and therefore, formulating these larger models would require students to enter multiple pages of text. This would not necessarily result in the student learning anything additional and the focus of their study would not be on optimization modeling.
Another reason optimization modeling is not being widely taught is because, until now, there has been no written course material available that effectively covers this subject. A tutorial, such as the MPL On-line Tutorial, will provide O.R. instructors with the necessary course material to effectively teach optimization modeling.
When you have a structured modeling language, such as MPL, that supports features like indexes, vectors and summations, the student can concentrate on formulating the model, in a more efficient manner, and learning the actual modeling concepts, instead of spending their time typing. As a result, when students are doing smaller classroom models in MPL (less than 300 constraints), the resulting formulation is usually less than one or two pages. Whereas, same size models formulated in traditional optimization software, would be at least several pages long. This has caused O.R. instructors to be restricted to using even smaller problems when teaching formulations of LP models. Even though this traditional software could be used to formulate larger models, the inherent limitations of the language makes it highly impractical for educational purposes today.
Most university students today have access to the Internet, which will allow them easy access to the tutorial. This will enable instructors to teach optimization modeling in a more efficient manner, and assist them in replicating the way it is done in the corporate world.