
MPL Modeling System v4.2.11.82 | 10.14 Mb
MPL (Mathematical Programming Language) is an advanced modeling system that allows the model developer to formulate complicated optimization models in a clear, concise, and efficient way. Models developed in MPL can then be solved with any of the multiple commercial optimizers available on the market today.
MPL offers a feature-rich model development environment that takes full advantage of the graphical user interface in Microsoft Windows, making MPL a valuable tool for developing optimization models. MPL can import data directly from databases or spreadsheets. Once the model has been solved, MPL also has the ability to export the solution back into the database. MPL models can be embedded into other Windows applications, such as databases or spreadsheets, which makes MPL ideal for creating end-user applications.
MPL Integrated Model Development Environment
The MPL Modeling System is a state-of-the-art optimization modeling software. MPL, through the use of advanced graphical user interface features, creates a flexible working environment that enables the model developer to be more efficient and productive. MPL provides in a single system all the essential components needed to formulate the model, gather and maintain the data, optimize the model, and then analyze the results.
The model developer uses the built-in model editor to formulate the MPL model statements and then selects the optimizer directly from the menus to solve the model. The solution results are automatically retrieved from the solver and displayed, providing the user with instant feedback. Each item defined in the model is also displayed in a tree window allowing the model developer to browse through them easily.
When using MPL to work on multiple models, the user can manage them effectively by utilizing project files. Project files store information about items such as, open model files and windows, the default working directory, and current option settings for both the modeling system and the solver.
The MPL Modeling System links to solvers dynamically through memory at run-time. This gives MPL the capability to integrate the solver completely into the modeling environment, resulting in the matrix being transferred between the modeling system and the solver directly through memory. As no files are involved, this seamless connection is both considerably faster and more robust than the traditional use of files in other modeling systems. In the event it is necessary to change any algorithmic options, MPL provides easy-to-use option dialog boxes for each solver. MPL fully supports context-sensitive help for option dialog boxes. A complete, printable on-line version of the manual, covering both the modeling environment and the language, is also available in the on-line help system for easy access.
MPL was designed to be portable and to be run on multiple platforms. MPL for Windows is the most popular platform but an OSF Motif version is also available for various UNIX flavors including: HP 9000, IBM RS-6000, Sun SPARC, and Silicon Graphics. MPL models are portable so a model created for one platform can always be read on any other supported platform.
MPL Modeling Language
The MPL Modeling Language offers a natural algebraic notation that enables the model developer to formulate complex optimization models in a concise, easy-to-read manner. Among modeling languages, MPL is unrivaled in its expressive power, readability, and user-friendliness. The MPL Modeling Language was designed to be very easy to use with a clear syntax making the process of formulating models in MPL efficient and productive. MPL is a very flexible language and can be used to formulate models in many different areas of optimization ranging from production planning, scheduling, finance, and distribution, to full-scale supply-chain optimization.
MPL is a very robust and stable software whose core modules have been through extensive use and testing over more than a decade. This assures that the MPL software is both reliable and dependable and can be used in mission-critical projects. Some of the more notable features of the MPL language include:
- Separation of the data from the model formulation
- Import data from different data sources
- Independence from specific solvers
- Use of macros for repetitive parts of the model
- Exclusion of parts of the model using conditional directives
- Special Ordered Sets and Semi-continuous variables
- WHERE/IF conditions to handle special cases
- Readable and helpful error messages
Sparse Index and Data Handling
One of the most important features of any modeling language is how it handles large amounts of data. What makes MPL so powerful is its ability to effectively handle very large sparse index and data sets. In addition, MPL has extensive flexibility when working with subsets of indexes, functions of indexes, and compound or multi-dimensional index sets. This allows the model formulator, for example, to index only over products that are made by each machine in a specific plant instead of having to go through all the products for all the machines and all the plants, which would be considerable slower.
Scalability and Speed
MPL can easily handle very large matrices with millions of variables and constraints. This is especially important when dealing with large supply-chain optimization models over multiple time periods that can grow very quickly. MPL has its own memory manager that can dynamically store models of any size, giving it a full scalability. The only limitation the model developer faces is how much memory is available on his or her machine. Typically, MPL uses only 1-2MB of memory per 10,000 variables, which puts a minimal additional burden on the machine capacity needed to generate and solve the matrix.
The matrix generation in MPL is extremely fast and efficient which is important since it contributes to the overall time needed to obtain the solution of the model. Maximal has over the years invested significant R&D efforts on continuing to improve the speed of the matrix generation. As a result, we can now run models with millions of variables and generate a matrix for them in less than one minute. This is very important, because if the matrix generation takes too long it can seriously add to the time needed to reach the solution even if the fastest optimization solvers are used. MPL provides the fastest and most scalable matrix generation capabilities available in a modeling system on the market today.
Database Connection
Importing data from a variety of corporate database systems into optimization models is frequently an essential requirement for optimization projects. One of the advanced features of MPL is the database connection option that directly links MPL with relational databases and other data sources. This option enables the model developer to gather both indexes and data values from various data sources and import them directly into the model. After the model has been optimized, the solution output can be exported back into the database. This, along with the run-time features of MPL, allows the model developer to easily create customized end-user applications for optimization using the built-in data entry and reporting capabilities of the database.
The database connection in MPL has the ability to access data from many different sources, such as databases, Excel spreadsheets, external data files, and the Internet. This gives the model developer the flexibility to choose the most efficient and convenient way to incorporate the data into the model. Among the data formats that are supported by MPL are: Microsoft Access and Excel, ODBC, Paradox, FoxPro, Dbase, SQL Server, and Oracle.
This new version of MPL provides, in a single system, all the essential components needed to formulate the model, gather and maintain the data, optimize the model, and then analyze the results. With MPL, you can now achieve a quantum leap in your productivity as a model developer.
The Key Features of MPL:
Graphical User Interface.
MPL is an integrated model development system that offers full support for all standard Windows features, including dialog boxes, mouse support, pull-down menus, graphics, toolbar, and on-line help. Furthermore, the 32-bit version of MPL, supports advanced Windows features such as tree windows, long filenames for models, illustrative icons for each type of window, and context sensitive help.
Direct link to Windows DLL solvers.
MPL can set up the matrix and then send it to the solver directly through memory. Solvers that are supported in MPL as Windows DLL include, CPLEX, XPress, OSL, XA, CONOPT, LSGRG2 and FortMP. MPL can also handle legacy DOS solvers through a DOS window.
Database Connection.
MPL can import both indexes and data directly from a database. After the model has been solved MPL can also export the solution back to the database. Furthermore, MPL can easily be called directly from other Windows applications, including databases. Supported databases include Access, ODBC, Paradox, FoxPro, and Dbase for the Windows version and Oracle for the Motif version.
Manage models through projects
.
If you are using MPL to work on multiple models, that use different files and option settings, you can use projects to manage the models. Projects are used to store information about items such as, open model files and windows, the default working directory, and current option settings.
Model Definitions Window.
MPL allows you to view defined items from the model formulation in an easy to browse tree window. You can expand and collapse each branch to show only the elements you are interested in. You can display the contents for each item, such as elements for an index or solution values for a variable, simply by selecting it in the tree.
Message window.
While MPL is running it can send various progress information to a message window. What is displayed is selected by the user and can include status window messages, MPL input lines, performance statistics, warning messages, SQL statements, and iteration log information from the solver.
Context sensitive help.
MPL supports Windows context sensitive help for dialog boxes. To display the help, simply select the question mark button in the upper right corner of the dialog box and then click on the item you want help for. A small window will popup with a short explanation of the item you selected.
Multiple input formats.
In addition to the MPL Modeling Language, MPL can read multiple other input formats, including MPS files and native input formats for solvers such as CPLEX. MPL will automatically detect the format, when reading the input file, and switch to the correct language. MPL can also be used to generate several different solver input formats. This ensures that models created in MPL can be solved with nearly all industrial strength optimization packages available on the market today.
Helpful error messages.
MPL makes it easy to correct mistakes in your formulation. An error window pops up containing the erroneous line in the model file with the error is described in plain English. After you have read the message, the program automatically locates the line in the model file and moves the cursor to it.
Meaningful names.
You can use meaningful names of any length for variables and constraints, so the formulation is easy to read and understand. You can also, for additional clarity, use explanations and general comments throughout the model file.
Free format constraints.
With MPL you can write variables and constants on both sides of the equation constraint. This means that you do not have to convert the constraints to a standard format before entering them.
Arithmetic in the input.
You can use fractions, products, percentages, and mathematical functions in the model file. This flexibility not only allows clearer formulation, but also automatically results in the highest possible accuracy. Full use of parentheses is also allowed.
Separation of data from the model.
With MPL you can read in data from external data files in both sparse and dense data formats. The data files can be created either using the text editor in MPL or be exported from other programs such as spreadsheets and databases. For example, to read in a data file containing a price list you would simple enter:
price[product] := datafile(price.dat)
Data entered at run-time.
Named data constants can be given a value interactively at run-time. You are prompted for the value when the model file is read. This feature can be very useful when you want to run the same model several times with different data values.
Summation over vector variables.
In MPL you can work with vector variables of up to eight dimensions concisely and effectively. For example, to add the production cost for all months and products, you simply type:
SUM(month,product: ProdCost * Production)
Expansion of structured constraints.
Models generally have many similarly structured constraints. In MPL you can enter these constraints in a single line that is then expanded to a list of constraints. For example, to enter 12 constraints, one for each month, you would type:
InventoryBalance[month=Jan..Dec] :
Inventory = Inventory[month-1] + Production - Sales ;
Macro definitions.
Macro definitions in MPL allow you to define a part of a constraint or formula that is frequently used as a macro. You can then refer to it in the model by entering just the macro name. In some cases, macros can be used to eliminate unnecessary equality constraints and thereby reduce the size of the problem for the solver.
Include files.
MPL allows you to include external files to the model formulation, using a simple include command. This can make the model formulation more modular and easier to read. Include files can also be a great advantage when you want to solve a number of closely related models containing common data or model statements.
Home Page - http://www.maximal-usa.com/mpl/#
-

HOTFILE.COM - Free one-click file hosting!
http://rapidshare.com/files/309565829/MPL.Modeling.Sys.v4.2.11.82.rarPassword: www.ebook113.com
0 Comments
Post a Comment