Javascript Menu by Deluxe-Menu.com
[Home]
[Client Area]
English Japanese

Xpress-Mosel


Xpress-Mosel allows you to formulate your problem, solve it with a suitable solver engine, and analyze the solution, using a fully-functional programming language specifically designed for the purpose. Mosel programs are compiled, which makes them fast and hides the intellectual property within them from end-users. They can be run interactively or embedded within an application.


model Chess
 uses "mmxprs"                 ! Use Xpress-Optimizer

 declarations
  xs, xl: mpvar                ! Decision variables
 end-declarations

 Profit:=  5*xs + 20*xl          ! Objective function
 Boxwood:= 1*xs + 3*xl <= 200    ! kg of boxwood
 Lathe:=   3*xs + 2*xl <= 160    ! Lathehours
 maximize(Profit)                    

 writeln("Solution: ", getobjval)  ! Solution printing
 writeln("Make ", getsol(xs), " small sets")
 writeln("Make ", getsol(xl), " large sets")
end-model

 Click here to download an overview article on Mosel


Mosel language

The Mosel language is easy to learn and use, reducing the cost of developing optimization models from scratch, understanding and auditing models that other people have written, and modifying and maintaining models over time. The visual development environment Xpress-IVE makes the process even easier.

Full support for arbitrary ranges, index sets, and sparse objects means even the largest and most sophisticated problem can be expressed clearly and concisely, and completely independently of a particular data instance.

Model development in the Mosel language is aided by the Mosel debugger that supports all typical debug functionality for tracing and analyzing the execution of a model.

Solver modules and data handling

Mosel is completely open and user extensible. The Mosel distribution includes extension libraries (so-called modules), one of which provides direct control of the Xpress-Optimizer, through optimization statements in the Mosel program. Other solver modules give access to Xpress-SLP for formulating and solving non-linear problems, the Stochastic Programming tool Xpress-SP, and the Constraint Programming software Xpress-Kalis.

Another module provides an ODBC data driver which enables you to interface directly to all common databases and spreadsheets. Besides using the ODBC interface data can also be imported/exported directly from/to text files, memory, or I/O streams.

 Click here to download the paper Generalized file handling

Libraries for embedding

For its deployment a model usually needs to be embedded into the company information system. A model developed using the Mosel language may be executed and accessed from a programming language environment (e.g. C, Java, or C#) through the Mosel libraries. This flexible interface provides means, for instance, to exchange data and solution values between a model and a larger application.

In addition to Mosel's own functionality, certain modules also provide direct access to their functions from a programming language environment.

 Click here to download the paper Embedding optimization algorithms

User-written libraries for Mosel

By implementing their own libraries for Mosel users can add new functionality to the Mosel language and make it evolve according to their needs. User-written libraries may take the form of packages or modules.

Packages are libraries written directly in the Mosel language with a similar structure as Mosel models. They are ideally suited to give access to model parts (e.g., reformulations) or algorithms written in Mosel that you wish to distribute without disclosing their contents, for the development of your personal Mosel 'tool box', or even to implement add-ons to Mosel modules.

Via Mosel's Native Interface users may define their own modules that are treated just like the software components of the Mosel distribution. Typical uses for modules include the implementation of problem-specific data handling, or connections to external solvers or solution algorithms.

 

Related Topics
Product Overview
Database Connectivity
Evaluate Xpress-MP
Ordering Xpress-MP
White papers
Mosel examples
Module Repository
[Home] [Contact] [Client Area] [Search] [Sitemap] [Links] [Printer Friendly]
  © 2008 Fair Isaac Corporation. All rights reserved.