# TOMVIEW  
# REGISTER (TOMVIEW)
# LOGIN  
# myTOMVIEW
TOMLAB LOGO

« Previous « Start » Next »

1  Introduction

TOMVIEW is a general purpose development environment for practical solution of optimization problems using LabVIEW.

TOMVIEW has grown out of the need for advanced, robust and reliable tools to be used in the development of algorithms and software for the solution of many different types of applied optimization problems.

There are many good tools available in the area of numerical analysis, operations research and optimization, but because of the different languages and systems, as well as a lack of standardization, it is a time consuming and complicated task to use these tools. Often one has to rewrite the problem formulation, rewrite the function specifications, or build some new interface routine to make everything work. Therefore the first obvious and basic design principle in TOMVIEW is: Define your problem once, run all available solvers. The system takes care of all interface problems, whether related to the solver or due to different demands on the problem specification.

Sometimes it is not clear what solver is best for the particular type of problem and tests on different solvers can be quite useful. When developing new solutions tests on thousands of problems are necessary to fully assess the pros and cons of the setup. One might want to solve a practical problem very many times, with slightly different conditions for the run.

All these issues and many more are addressed with the TOMVIEW optimization environment. TOMVIEW gives easy access to a large set of standard test problems, optimization solvers and utilities. Furthermore, it is easy to define new problems with the assign routines, and solve them using any suitable solver.

1.1  Overview

Welcome to the TOMVIEW User's Guide. The Base Module includes a set of solvers for use in LabVIEW and interface routines needed for all other packages.

TOMVIEW includes the following solvers:
  • glbDirect - an unconstrained global solver suitable for problems with up to 100 variables. Only simple bounds on the decision variables are supported.
  • glcDirect - a constrained global solver for problems with up to 100 variables. The solver accepts linear and nonlinear constraints.
  • milpsolve - a solver for linear, binary and mixed-integer programming subject to bounds and linear constraints.
  • qld - a solver for linear and quadratic programming subject to bounds and linear constraints.
TOMVIEW also includes a number of solvers that reformulate the problems and solve them with a suitable sub-solver.
  • goalsolve - solves multi-objective goal attainment optimization problem, with linear and nonlinear constraints.
  • inflinsolve - solves linearly constrained minimax (infinity norm) problems with linear objectives (requires an LP/QP/NLP solver).
  • infsolve - solves nonlinear minimax (infinity norm) problems with linear and nonlinear constraints (requires an NLP solver).
  • L1linsolve - solves linearly constrained L1 problems (L1 norm) with linear (abs) objectives (requires an LP/QP/NLP solver).
  • L1solve - solves constrained L1 problems (L1 norm) (requires an LP/QP/NLP solver).
The interface routines enables mapping of problem types among other things. The following list shows some other components included with the Base Module.
  • Routine for mapping a linear least squares problem to a quadratic solver.
  • Interfacing of a nonlinear least squares problem to a nonlinear solver.
  • A standardized problem and result structure.
  • Routines for checking that problems are correctly setup before starting the optimization process.
  • Extensive test sets for several problem areas.
  • Sparse matrix handling.

1.2  Contents of this manual

  • Section 1 provides a basic overview of the TOMVIEW Base Module package.
  • Section 2 details the system design.
  • Section 3 defines the problem types and format for optimization as well as the solver suites available.
  • Section 4 shows how to setup and define the problems properly.
  • Section 4.2 provides information regarding LabVIEW test cases for use with the solvers.
  • Section 5 provides an overview of accessing the solvers.
  • Section 5.1 describes how to set solver options from LabVIEW.
  • Section 6 gives detailed solver references for the Base Module.
  • Section 7 introduces the driver routines.
  • Section 8 specifies how derivatives are obtained.
  • Section 9 gives some additional notes.
  • Section 10 contains all reference material for sparse matrix handling.

1.3  More information

Please visit the following links for more information and see the illustrative references at the end of this manual.

1.4  Prerequisites

In this manual we assume that the user is familiar with some basics about optimization and nonlinear programming, and with the LabVIEWprogramming environment in general.

« Previous « Start » Next »