Decide which Xpress products to evaluate
In order to make this decision you must consider the type of problem that you wish to solve, the tools that you wish to use for model development, the tools that you wish to use for model deployment, and the platform you intend to use.
Type of problem
Xpress has solver engines for different types of problems:
Type of problem | Solving engine |
---|---|
Linear Programming (LP) | Xpress Optimizer |
Mixed Integer Programming (MIP) | |
Quadratic Programming (QP) | |
Mixed Integer Quadratic Programming (MIQP) | |
Quadratically Constrained Quadratic Programming (QCQP) | |
Non-Linear Programming (NLP)![]() |
Xpress NonLinear![]() |
Mixed Integer Non-Linear Programming (MINLP) | |
Constraint Programming (CP) | Xpress Kalis |
Further information
See Xpress documentation (in the docs subdirectory of your Xpress installation or at http://www.fico.com/fico-xpress-optimization/docs/latest):
- Classification of mathematical programming problems: ``Getting Started with Xpress'', 1.1. `Mathematical Programming'.
- Modeling with Mosel, in particular LP/MIP: ``Xpress Mosel User Guide''.
- Formulation of mathematical programming problems: see the book: ``Applications of Optimization with Xpress-MP'', Part I: `Developing Linear and Integer Programming models'.
- Non-linear Programming: ``Xpress NonLinear Manual''.
- Constraint Programming: ``Xpress Kalis User Guide''.
Tools for model development and specification
Xpress provides the following tools for model development and specification:
- Xpress Mosel/Xpress Workbench: Mosel is an advanced modeling and programming language. Xpress Workbench is the visual environment to develop Mosel models and Insight apps.
- Xpress BCL: Object-oriented library callable from supported programming languages.
- Xpress Optimizer libraries: Optimizer functions and procedures provided for low-level integration with applications developed in supported programming languages.
Also, a model may be specified by a matrix in MPS or LP format.
Tools for model deployment
Model deployment strongly depends on the tool used to specify the model. Deployment is achieved through the use of Xpress libraries. Alternative deployment options for Mosel models are distributed or Cloud computing applications controled via XPRD (see the Advanced Evaluators Guide for further detail) and the embedding into distributed, multi-user applications using Xpress Insight.
Model specified in | Deployed using |
---|---|
Mosel | Xpress Insight |
Mosel libraries (C++/C, Java, VBA, .NET) | |
XPRD (C++/C, Java) | |
BCL | BCL libraries (C, C++, Java, .NET) |
Optimizer libraries | Optimizer libraries (C++/C, Java, .NET, Python) |
Note that for Constraint Programming (Xpress Kalis), the model must be specified using Xpress Mosel.
Further information
See Xpress documentation (in the docs subdirectory of your Xpress installation or at http://www.fico.com/fico-xpress-optimization/docs/latest):
- Introductory examples (Mosel/BCL/Optimizer): ``Getting Started with Xpress''.
- Mosel libraries examples: ``Xpress Mosel User Guide'', Part III: `Working with the Mosel Libraries'.
- Mosel libraries documentation: ``Mosel Library Reference Manual''.
- BCL: ``BCL Reference Manual''.
- Optimizer: ``Optimizer Reference Manual''.
Platform
Xpress Workbench is available on Microsoft Windows platforms and on the FICO Analytic Cloud. Xpress Kalis is available on Microsoft Windows and Linux. All other products are available on every supported platform.