TOMLAB

From TomWiki
Revision as of 06:55, 8 July 2011 by Elias (talk | contribs)
Jump to navigationJump to search

{{#switch: | left =

{{#switch:{{#if: | {{{smallimage}}} | }} | none =

| #default =

}} {{#if:{{#if: | {{{smallimageright}}} | }} | {{#ifeq:{{#if: | {{{smallimageright}}} | }}|none | | }} }}

| #default =

{{#switch: | none =

| #default =

}}

{{#if: | {{#ifeq:|none

 | 
| }} }}

}}

The Organization of This Guide

Overall Design presents the general design of TOMLAB.

Problem Types and Solver Routines contains strict mathematical definitions of the optimization problem types. All solver routines available in TOMLAB are described.

Defining Problems in TOMLAB describes the input format and modeling environment. The functionality of the modeling engine TomSym is discussed in 4.3 and also in appendix C.

Section 5, Section 6, Section 7 and Section 8 contain examples on the process of defining problems and solving them. All test examples are available as part of the TOMLAB distribution.

Section 9 shows how to setup and define multi layer optimization problems in TOMLAB.

Section 10 contains detailed descriptions of many of the functions in TOMLAB. The TOM solvers, originally developed by the Applied Optimization and Modeling (TOM) group, are described together with TOMLAB driver routine and utility functions. Other solvers, like the Stanford Optimization Laboratory (SOL) solvers are not described, but documentation is available for each solver.

Section 12 describes the utility functions that can be used, for example tomRun and SolverList.

Section 13 introduces the different options for derivatives, automatic differentiation.

Section 14 discusses a number of special system features such as partially separable functions and user supplied parameter information for the function computations.

Appendix A contains tables describing all elements defined in the problem structure. Some subfields are either empty, or filled with information if the particular type of optimization problem is defined. To be able to set different parameter options for the optimization solution, and change problem dependent information, the user should consult the tables in this Appendix.

Appendix B contains tables describing all elements defined in the output result structure returned from all solvers and driver routines.

Appendix D is concerned with the global variables used in TOMLAB and routines for handling important global variables enabling recursive calls of any depth.

Appendix E describes the available set of interfaces to other optimization software, such as CUTE, AMPL, and The Mathworks' Optimization Toolbox.

Appendix F gives some motivation for the development of TOMLAB.

Introduction

Go to Users Guide Section 1

Overall Design

Go to Users Guide Section 2

Problem Types and Sovler Routines

Go to Users Guide Section 3

Defining Problems in TOMLAB

Go to Users Guide Section 4

Solving Linear, Quadric and Integer Programming Problems

Go to Users Guide Section 5

Solving Unconstrained and Constrained Optimization Problems

Go to Users Guide Section 6

Solving Global Optimization Problems

Go to Users Guide Section 7

Solving Least Squares and Parameter Estimation Problems

Go to Users Guide Section 8

Multi Layer Optimization

Go to Users Guide Section 9

Tomhelp - The Help Program

Go to Users Guide Section 10

TOMLAB Solver Reference

Go to Users Guide Section 11

TOMLAB Utility Functions

Go to Users Guide Section 12

Approximation of Derivatives

Go to Users Guide Section 13

Special Notes and Features

Go to Users Guide Section 14

Appendix A: Prob - the Input Problem Structure

Go to Users Guide Appendix A

Appendix B: Result - the Output Result Structure

Go to Users Guide Appendix B

Appendix C: TomSym - the Modeling Engine

Go to Users Guide Appendix C

Appendix D: Global Variables and Recursive Calls

Go to Users Guide Appendix D

Appendix E: External Interfaces

Go to Users Guide Appendix E

Appendix F: Motivation and Background to TOMLAB

Go to Users Guide Appendix F

Appendix G: Performance Tests on Linear Programming Solvers

Go to Users Guide Appendix G