Initializing help system before first use

How to read this book

Topics covered in this section:

For a complete overview and introduction to modeling and solving with the FICO Xpress Optimization product suite, we recommend reading the entire document. However, readers who are only interested in certain topics, may well skip certain parts or chapters as shown in the following diagram.

Chapi123/flowchart

Figure 1.1: Suggested flow through the book

Using the Mosel language with Xpress Workbench

The approach presented in the first part of this book is recommended for first time users, novices to Mathematical Programming, and users who wish to develop and deploy new models quickly, supported by graphical displays for problem and solution analysis.

For example, if you wish to develop a Linear Programming (LP) model and embed it into some existing application, you should read the first four chapters, followed by Chapter 9 on embedding Mosel models.

To find out how to model and solve Quadratic Programming (QP) problems with Xpress, you should read at least Chapters 1-3, the beginning of Chapter 4 and then Chapter 7; for Mixed Integer Quadratic Programming (MIQP) also include Chapter 6 on Mixed Integer Programming (MIP).

To see how you may implement your own solution algorithms and heuristics in the Mosel language, we suggest reading Chapters 1-3, the beginning of Chapter 4, followed by Chapter 6 on MIP and then Chapter 8 on Heuristics.

Working in a programming language environment

Users who wish to develop their entire application in a programming language environment have two options, using one of the object-oriented APIs of Xpress Optimizer or inputting their problem into Xpress Optimizer via its low-level matrix-based API.

Users who are looking for modeling support whilst model execution speed is a decisive factor in their choice of the tool should look at the object-oriented APIs of Xpress Optimizer. We exemplify the use of these APIs with Java in this book. Due to the modeling objects defined by the Java interface, the resulting code remains relatively close to the algebraic model and is easy to maintain. The Java interface supports all problem types supported by the Optimizer, with this book containing modeling examples of LP, MIP, and QP problems (Chapters 10-12).

The possibility to directly access very specific features of the Optimizer is also appreciated by advanced users, mostly in the domain of research, who implement their own algorithms involving the solution of LP, MIP, or QP problems (Chapters 14-17).


© 2001-2025 Fair Isaac Corporation. All rights reserved. This documentation is the property of Fair Isaac Corporation (“FICO”). Receipt or possession of this documentation does not convey rights to disclose, reproduce, make derivative works, use, or allow others to use it except solely for internal evaluation purposes to determine whether to purchase a license to the software described in this documentation, or as otherwise set forth in a written software license agreement between you and FICO (or a FICO affiliate). Use of this documentation and the software described in it must conform strictly to the foregoing permitted uses, and no other use is permitted.