New Features:
Ability to read
GAMS models
Ability to read
AMPL models directly
.NET implementation
What is
MProbe?
Summary of Tools in MProbe
What's New in the Latest Release
Take
a Web Tour of MProbe 3.0
Obtaining MProbe (student/demo and Professional
editions)
Change Log
Contact: Feedback and Email List
Other MPROBEs on the Web
Papers and Presentations
Author's Homepage
MProbe is the missing link in the development environment for mathematical programs. While conventional programming systems (C++, Java, Fortran, etc.) have a host of supporting tools to ease the process of writing code (e.g. debuggers, code profilers), there are no analogous tools to support the development of mathematical programs in modelling languages such as AMPL, GAMS, etc. MProbe (Mathematical Program Probe) provides a suite of analysis tools for mathematical programs of all types (linear, nonlinear, integer, logic) with the goal of providing insights into the model. For example, it can estimate the effectiveness of the constraints, the shape of nonlinear functions, and the convexity or nonconvexity of the constrained region; it can shrink the variable bounds; it can provide profile plots of nonlinear functions; it allows model navigation, etc. See the next section for an overview of all of the tools.
MProbe is especially strong in the analysis of nonlinear functions to discern their shapes in a region of interest (i.e. whether the function is linear or almost linear, convex or almost convex, concave or almost concave, or concave and convex). Knowledge of function shape is crucial when developing nonlinear optimization models, or when selecting the nonlinear solver for a nonlinear optimization problem. Determining function shape is difficult for nonlinear functions having more than two variables, but MProbe is specifically designed to operate on nonlinear functions having many variables. MProbe also estimates the shape of a nonlinearly constrained region (convex? nonconvex?), and the objective function effect (global optimum? local optimum only?). Tightening of variable bounds is also extremely useful, especially when no bounds are provided initially.
MProbe works with both AMPL and GAMS, languages for expressing and manipulating optimization models, and can read and write MPS files. Student/demo editions of both modeling systems are available for free via the web, so you can begin using MProbe immediately. More information on these modeling systems is available via the links above.
MProbe comprises a set of tools for viewing and analyzing the components of a mathematical model. The tools are grouped into a number of "Workshops": Variables Workshop, Constraints Workshop, Objectives Workshop, and Constrained Region Workshop. The tools are summarized below, grouped by the type of mathematical program to which they apply.
The most important new features are:
· MProbe now reads models in GAMS format. GAMS must be installed on your system for this feature to operate correctly. The GAMS system generates intermediate files that are used by MProbe.
· MProbe can now read AMPL models directly, though the older method of first starting AMPL to write or retrieve the model is still available. Note that the AMPL system must be installed on your system.
· MProbe has been converted to run under the Microsoft .NET framework.
· Numerous minor bug fixes.
· MProbe 5.0 re-released on December 19, 2003. No changes in MProbe functionality, but a newer version of the GAMS reader is included, and the Microsoft DLLs for enhanced compatibility are now included.
A student/demo edition of MProbe is available for free, and can be downloaded as described below. An unlimited professional edition is available for purchase (see below).
A freely distributable student/demo edition of MProbe is available for download as described below. Limits are as follows: maximum of 100 variables in the model, maximum of 100 constraints in the model, maximum of 6 variables in any function. The student/demo edition is fully functional aside from these limits.
The student/demo edition runs under the Microsoft Windows 32-bit operating systems. It is packaged as single WinZip file.
Download MProbe 5.0 student/demo edition (1.4 Mbytes).
Installation:
A Professional Edition of MProbe is available by contacting the author. The maximum number of variables, constraints, and objectives in the Professional Edition is limited only by available memory on your system. You will need to obtain a professional edition of the AMPL or GAMS modeling languages to work with full-scale models.
Prototypes of MProbe date to 1994. The first publicly-available, web-distributed version, (MProbe 1.01) dates to October 1996. See the change log for a list of changes introduced by each version since 1.01.
MProbe development is ongoing. What do you like/dislike? What would you like to see in the next version? Have you found a bug? Please email me with your thoughts and suggestions.
Email also if you would like to receive occasional email updates on new releases, bug fixes, etc. The volume of email will be low (a few messages per year at most).
There are several other MPROBEs on the web. Here are some of the more popular:
MProbe is also used as a short version of "market probe", "molecular probe", "medical probe", "memory probe" etc. on some web pages or web page names.
If you need to reference MProbe in
your publications, you can use the following:
John W. Chinneck (2004), "Discovering the Characteristics of Mathematical Programs", seminar for Northwestern University and Argonne National Laboratory, February 3-4. PDF (864 kbytes).
John W. Chinneck (2004), “The Constraint Consensus Method for Finding Approximately Feasible Points in Nonlinear Programs, INFORMS Journal on Computing, Vol. 16, No. 3, Summer 2004, pp. 255–265. PDF (136 kbytes). Describes the Constraint Consensus method used in several places in MProbe 4.0.
John W. Chinneck (2002), “Discovering the Characteristics of
Mathematical Programs via Sampling”, Optimization Methods and Software,
vol. 17, no.2, pp. 319-352. PDF
of draft version. Describes the sampling algorithms used in MProbe version 3.2, and the
kinds of information that can be extracted via sampling.
John W. Chinneck (2001), “Analyzing Mathematical Programs using MProbe”, Annals
of Operations Research, vol. 104, pp. 33-48. PDF
of draft version. Describes
an older version of MProbe, but does provide an overview of capabilities.
MProbe user’s guide in French:
Nathalie Perrier (2002), “Analyse de
fonctions non linéaires avec MProbe”, École Polytechnique de Montréal. MS-Word
(188 kbytes), PDF
(1.6 Mbytes).
For those interested in
participating in MProbe-related research:
John W. Chinneck (2001), MProbe Research Plans 2001. This brief article describes some possible directions for future MProbe-related research, and invites participation by other researchers. PDF source (21k).
last modified: September 2, 2004.