Analytica Optimizer Guide
This Guide explains how to use the Analytica Optimizer. It provides a Quick Start Tutorial and an introduction to the basic concepts of optimization, including linear, quadratic, and nonlinear programming (NLP), as well as special topics in NLP. However, it is not a complete textbook on optimization. For more challenging applications, you might find it useful to consult one of the many good textbooks on optimization.
Sections
- Introduction
- Quick Start
- Optimization Characteristics
- Optimizing with Arrays
- Key Concepts: The Airline NLP Example
- Optimizer Attribute Reference
- Optimizer Function Reference
- Control Settings
Using this Guide
If you're new to Analytica
You will find it easier if you first learn the essentials of Analytica before learning the Analytica Optimizer described here. Start with the Analytica Tutorial to learn the basics of interacting with Analytica and its modeling language, especially Working with Arrays. It's important to have a good understanding of Intelligent Arrays to make good use of the Optimizer.
If you're new to the Analytica Optimizer
We suggest you start with the Quick Start, an introductory tutorial that takes you through the key steps to create a simple optimization. The section on Optimization Characteristics explains the general principles of optimization and the types of optimization, including Linear Programming (LP), Quadratic Programming (QP), and Non-Linear Programming (NLP). We also recommend reading Optimizing with Arrays to master optimization with parametric analysis. Key Concepts: The Airline NLP Example explains how to use optimization in models having dynamic influences and Monte Carlo-based uncertainties.
If you've used Analytica Optimizer 4.2 or earlier
The 4.3 release of Analytica introduced Structured Optimization, a new set of features that eliminates many difficult steps previously required for structuring optimizations in Analytica. For example, it can use a set of decision variables of varying dimensions, instead of requiring you to combine and flatten them manually. It introduces Constraints as a new object class. It can discover automatically whether your objective is linear, quadratic, or nonlinear, and apply the appropriate solver engine --and a whole lot more.
So if you’ve used the Optimizer before, we strongly recommend that you read the Quick Start, which introduces Structured Optimization, and the Optimizing with Arrays section of this guide (at least). Even though Analytica 4.4 still supports functions from releases 4.2 and earlier of Optimizer for backward compatibility, you will likely want to learn and use the new functions instead.
Conventions Used in this Guide
Under the title of each page on this guide, the page's hierarchy and any parent pages are listed.
The pages in this guide can be read in any order. However, if you want to read the guide sequentially, there are links to the previous and next pages at the bottom of each page which will take the reader through all of the guide's pages in order.
Throughout this guide, we use a shorthand notation for displaying the definitions of Analytica objects. An object’s class (e.g., Variable, Decision, Constraint, etc) and identifier is followed by :=, and the definition is displayed on the right.
In the above example, a Constraint object class with the identifier Volume Constraint is defined as Volume >= Required Volume.
Enable comment auto-refresher