TOMLAB: Difference between revisions

From TomWiki
Jump to navigationJump to search
No edit summary
No edit summary
 
(12 intermediate revisions by 2 users not shown)
Line 1: Line 1:
=The Organization of This Guide=
[[Category:Manuals]]
TOMLAB is a general purpose development, modeling and optimal control environment in Matlab for research, teaching and practical solution of optimization problems.


[[Users Guide Section 2|Overall Design]] presents the general design of TOMLAB.
TOMLAB  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.


[[Users Guide Section 3|Problem Types and Solver Routines]] contains strict mathematical definitions of the optimization problem types. All solver routines available in TOMLAB are described.
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 make some new interface routine to make everything work. Therefore the first obvious and basic design principle in TOMLAB is: ''Define your problem once, run all available solvers''. The system takes care of all interface problems, whether between languages or due to different demands on the problem specification.


[[Users Guide Section 4|Defining Problems in TOMLAB]] describes the input format and modeling environmentThe functionality of the modeling engine TomSym is discussed in 4.3 and also in appendix C.
In the process of optimization one sometimes wants to graphically view the problem and the solution process, especially for ill-conditioned nonlinear problems. Sometimes it is not clear what solver is best for the particular type of problem and tests on different  solvers can be of use. In teaching one wants to view the details of the algorithms and look more carefully at the different algorithmic steps. When developing new algorithms tests on thousands of problems are necessary to fully access the pros and cons of the new algorithm.  One might  want to solve a practical problem very many times, with slightly different conditions for the run.  Or solve a control problem looping in real-time and solving the optimization problem each time slot.


[[Users Guide Section 5|Section 5]], [[Users Guide Section 6|Section 6]], [[Users Guide Section 7|Section 7]] and [[Users Guide Section 8|Section 8]] contain examples on the process of defining problems and solving them. All test examples are available as part of the TOMLAB  distribution.
All these issues and many more are addressed with the TOMLAB  optimization environment. TOMLAB  gives easy access to a large set of standard test problems, optimization solvers and utilities.


[[Users Guide Section 9| Section 9]] shows how to setup and define multi layer optimization problems in TOMLAB.
==Overall Design==
Overall Design presents the general design of TOMLAB.
*[[TOMLAB  Overall Design|Overall Design]]


[[Users Guide Section 10|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.
==Problem Types and Solver Routines==
Contains strict mathematical definitions of the optimization problem types.  All solver routines available in TOMLAB  are described.
*[[TOMLAB  Problem Types and Solver Routines|Problem Types and Solver Routines]]


[[Users Guide Section 12|Section 12]] describes the utility functions that can be used, for example ''tomRun ''and ''SolverList''.
==Defining Problems in TOMLAB==
*[[TOMLAB  Defining Problems in TOMLAB|Defining Problems in TOMLAB]]


[[Users Guide Section 13|Section 13]] introduces the different options for derivatives, automatic differentiation.
==Solving Linear, Quadratic and Integer Programming Problems==
Contains examples on the process of defining problems and solving them. All test examples are available as part of the TOMLAB distribution.
*[[TOMLAB  Solving Linear Quadratic and Integer Programming Problems|Solving Linear, Quadratic and Integer Programming Problems]]


[[Users Guide Section 14|Section 14]] discusses a number of special system features such as partially separable functions and user supplied parameter information for the function computations.
==Solving Unconstrained and Constrained Optimization Problems==
Contains examples on the process of defining problems and solving them. All test examples are available as part of the TOMLAB distribution.
*[[TOMLAB  Solving Unconstrained and Constrained Optimization Problems|Solving Unconstrained and Constrained Optimization Problems]]


[[Users Guide Appendix A|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.
==Solving Global Optimization Problems==
Contains examples on the process of defining problems and solving them. All test examples are available as part of the TOMLAB distribution.  
*[[TOMLAB Solving Global Optimization Problems|Solving Global Optimization Problems]]


[[Users Guide Appendix B|Appendix  B]] contains tables describing all elements defined in the output result structure returned from all solvers and driver routines.
==Solving Least Squares and Parameter Estimation Problems==
Contains examples on the process of defining problems and solving them. All test examples are available as part of the TOMLAB distribution.
*[[TOMLAB Solving Least Squares and Parameter Estimation Problems|Solving Least Squares and Parameter Estimation Problems]]


[[Users Guide Appendix D|Appendix  D]] is concerned with the global variables used in TOMLAB  and routines for handling important global variables enabling recursive calls of any depth.
==Multi Layer Optimization==
Shows how to setup and define multi layer optimization problems in TOMLAB.
*[[TOMLAB Multi Layer Optimization|Multi Layer Optimization]]


[[Users Guide Appendix E|Appendix  E]] describes the available set of interfaces to other optimization software, such as CUTE, AMPL, and The Mathworks' Optimization Toolbox.
==Tomhelp - The Help Program==
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.  
*[[TOMLAB TomHelp|Tomhelp - The Help Program]]


[[Users Guide Appendix F|Appendix  F]] gives some motivation for the development of TOMLAB.
==TOMLAB Solver Reference==


==Section 1==
*[[TOMLAB Solver Reference]]
Go to [[Users Guide Section 1]]


==Section 2==
==TOMLAB Utility Functions==
Go to [[Users Guide Section 2]]
Describes the utility functions that can be used, for example tomRun and SolverList.


==Section 3==
*[[TOMLAB Utility Functions]]
Go to [[Users Guide Section 3]]


==Section 4==
==Approximation of Derivatives==
Go to [[Users Guide Section 4]]
Introduces the different options for derivatives, automatic differentiation.


==Section 5==
*[[TOMLAB Approximation of Derivatives|Approximation of Derivatives]]
Go to [[Users Guide Section 5]]


==Section 6==
==Special Notes and Features==
Go to [[Users Guide Section 6]]
Discusses a number of special system features such as partially separable functions and user supplied parameter information for the function computations.
*[[TOMLAB Special Notes and Features|Special Notes and Features]]


==Section 7==
==Appendix A: Prob - the Input Problem Structure==
Go to [[Users Guide Section 7]]
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.


==Section 8==
*[[TOMLAB Appendix A|Appendix A: Prob - the Input Problem Structure]]
Go to [[Users Guide Section 8]]


==Section 9==
==Appendix B: Result - the Output Result Structure==
Go to [[Users Guide Section 9]]
Contains tables describing all elements defined in the output result structure returned from all solvers and driver routines.
*[[TOMLAB Appendix B|Appendix B: Result - the Output Result Structure]]


==Section 10==
==Appendix C: TomSym - the Modeling Engine==
Go to [[Users Guide Section 10]]
*[[TOMLAB Appendix C|Appendix C: TomSym - the Modeling Engine]]


==Section 11==
==Appendix D: Global Variables and Recursive Calls==
Go to [[Users Guide Section 11]]
This section is concerned with the global variables used in TOMLAB and routines for handling important global variables enabling recursive calls of any depth.
*[[TOMLAB Appendix D|Appendix D: Global Variables and Recursive Calls]]


==Section 12==
==Appendix E: External Interfaces==
Go to [[Users Guide Section 12]]
Describes the available set of interfaces to other optimization software, such as CUTE, AMPL, and The Mathworks' Optimization Toolbox.
*[[TOMLAB Appendix E|Appendix E: External Interfaces]]


==Section 13==
==Appendix F: Motivation and Background to TOMLAB==
Go to [[Users Guide Section 13]]
Gives some motivation for the development of TOMLAB.
*[[TOMLAB Appendix F|Appendix F: Motivation and Background to TOMLAB]]


==Section 14==
==Appendix G: Performance Tests on Linear Programming Solvers==
Go to [[Users Guide Section 14]]
*[[TOMLAB Appendix G|Appendix G: Performance Tests on Linear Programming Solvers]]


==Appendix A==
==Further  Reading==
Go to [[Users Guide Appendix A]]


==Appendix B==
TOMLAB  has been discussed in several papers and at several conferences. The main paper on TOMLAB  v1.0 is
Go to [[Users Guide Appendix B]]
<ref>
K. Holmström.
The TOMLAB Optimization Environment in Matlab.
''Advanced Modeling and Optimization'',
1(1):47-69, 1999.
</ref>
.
The use of TOMLAB  for nonlinear programming and parameter estimation is presented in
<ref>
K. Holmström and M. Björkman.
The TOMLAB NLPLIB Toolbox for Nonlinear Programming.
''Advanced Modeling and Optimization'',
1(1):70-86, 1999.
</ref>
, and the use of linear and discrete optimization is discussed in
<ref>
K. Holmström, M. Björkman, and E. Dotzauer.
The TOMLAB OPERA Toolbox for Linear and Discrete Optimization.
''Advanced Modeling and Optimization'',
1(2):1-8, 1999.
</ref>
. Global optimization routines are also implemented,  one is described in
<ref>
M. Björkman and K. Holmström.
Global Optimization Using the DIRECT Algorithm in Matlab.
''Advanced Modeling and Optimization'',
1(2):17-37, 1999.
</ref>.


==Appendix C==
In all these papers TOMLAB  was divided into two toolboxes, the NLPLIB TB and the OPERA TB. TOMLAB  v2.0 was discussed in
Go to [[Users Guide Appendix C]]
<ref>
K. Holmström.
The TOMLAB v2.0 Optimization Environment.
In E. Dotzauer, M. Björkman, and K. Holmstöm, editors, ''Sixth Meeting of the Nordic Section of the Mathematical Programming Society''.
''Proceedings'', Opuscula 49, ISSN 1400-5468, Västerås, 1999. Mälardalen University, Sweden.</ref>
<ref>K. Holmström.
New Optimization Algorithms and Software.
''Theory of Stochastic Processes'',
5(21)(1-2):55-63, 1999.
</ref>
.  and
<ref>
K. Holmström.
Solving applied optimization problems using TOMLAB.
In G. Osipenko, editor, ''Proceedings from MATHTOOLS  <nowiki>'</nowiki>99, the 2nd International Conference on Tools for Mathematical Modelling'',
pages 90-98, St.Petersburg,  Russia, 1999. St.Petersburg State Technical University.
</ref>
.  TOMLAB  v4.0 and how to solve practical optimization  problems  with TOMLAB  is discussed in
<ref>
K. Holmström. 
Practical Optimization  with the Tomlab Environment. 
In T. A. Hauge, B. Lie, R. Ergon, M. D. Diez, G.-O. Kaasa, A. Dale, B. Glemmestad, and A Mjaavatten, editors,
''Proceedings of the 42nd SIMS Conference'', 
pages 89-108, Porsgrunn, Norway, 2001. Telemark University College, Faculty of Technology.</ref>
.


==Appendix D==
The use of TOMLAB  for costly global optimization with industrial applications is discussed in
Go to [[Users Guide Appendix D]]
<ref>
M. Björkman and K. Holmström. 
Global Optimization  of Costly Nonconvex Functions Using Radial Basis Functions. ''Optimization and Engineering'',
1(4):373-397, 2000.
</ref>; costly global optimization with financial applications in
<ref>
T. Hellström  and K. Holmström.
Parameter Tuning in Trading Algorithms using ASTA.
In Y. S. Abu-Mostafa, B. LeBaron, A. W. Lo, and A. S. Weigend, editors, ''Computational Finance (CF99) - Abstracts of the Sixth International Conference, Leonard N. Stern School of Business, January 1999'', Leonard N. Stern School of Business, New York University, 1999. Department of Statistics and Operations Research.
</ref>
<ref>
T. Hellström  and K. Holmström.
Parameter Tuning in Trading Algorithms using ASTA.
In Y. S. Abu-Mostafa, B. LeBaron, A. W. Lo, and A. S. Weigend, editors, ''Computational Finance 1999'', Cambridge, MA, 1999. MIT  Press.
</ref>
<ref>
T. Hellström and K. Holmström.
Global Optimization of Costly Nonconvex Functions, with Financial Applications.
''Theory of Stochastic Processes'',
7(23)(1-2):121-141,  2001.
</ref>. Applications of global optimization for robust control is presented in
<ref>
C. M. Fransson, B. Lennartson, T. Wik, and K. Holmström.
Multi Criteria Controller Optimization for Uncertain MIMO Systems Using Nonconvex Global Optimization.
In ''Proceedings of the 40th Conference on Decision and Control'', Orlando, FL, USA, December 2001.
</ref>
<ref>
C. M. Fransson, B. Lennartson, T. Wik, K. Holmström, M. Saunders, and P.-O. Gutmann.
Global Controller Optimization Using Horowitz Bounds.
In ''Proceedings of the 15th IFAC Conference'', Barcelona, Spain, 21th-26th July, 2002.
</ref>
. The use of TOMLAB  for exponential fitting and nonlinear parameter estimation are discussed in e.g.
<ref>
K. Holmström and J. Petersson.
A Review of the Parameter Estimation Problem of Fitting  Positive Exponential Sums to Empirical Data.
''Applied Mathematics and Computations'',
126(1):31-61, 2002.
</ref>
<ref>
Jordan M. Berg and K. Holmström.  On Parameter Estimation Using Level Sets. ''SIAM Journal on Control and Optimization'', 37(5):1372-1393, 1999.
</ref>
<ref>
V. N. Fomin, K. Holmström,  and T. Fomina. 
Least squares and Minimax methods for inorganic chemical equilibrium analysis.
Research Report 2000-2, ISSN-1404-4978, 
Department  of Mathematics and Physics, Mälardalen University, Sweden, 2000.
</ref>
<ref>
T. Fomina, K. Holmström, and V. B. Melas.
Nonlinear parameter estimation for inorganic chemical equilib- rium analysis.
Research Report 2000-3, ISSN-1404-4978,
Department of Mathematics and Physics, Mälardalen University, Sweden, 2000.
</ref>
<ref>
K. Holmström and T. Fomina.
Computer Simulation for Inorganic Chemical Equilibrium Analysis.  In S.M. Ermakov, Yu. N. Kashtanov, and V.B.  Melas, editors, ''Proceedings  of the 4th St.Petersburg Workshop on''
''Simulation'', pages 261-266, St.Petersburg,  Russia, 2001.
NII Chemistry St. Peterburg University Publishers.
</ref>
<ref>
K. Holmström, T. Fomina, and Michael Saunders.
Parameter Estimation for Inorganic Chemical Equilibria by Least Squares and Minimax Models.
''Optimization and Engineering'', 4, 2003. Submitted.
</ref>
.


==Appendix E==
The manuals for the add-on solver packages are also recommended reading material.
Go to [[Users Guide Appendix E]]
 
==Appendix F==
Go to [[Users Guide Appendix F]]


==References==
==References==
Go to [[Users Guide References]]


==Appendix F==
<references />
Go to [[Users Guide Appendix F]]

Latest revision as of 08:59, 13 August 2011

TOMLAB is a general purpose development, modeling and optimal control environment in Matlab for research, teaching and practical solution of optimization problems.

TOMLAB 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 make some new interface routine to make everything work. Therefore the first obvious and basic design principle in TOMLAB is: Define your problem once, run all available solvers. The system takes care of all interface problems, whether between languages or due to different demands on the problem specification.

In the process of optimization one sometimes wants to graphically view the problem and the solution process, especially for ill-conditioned nonlinear problems. Sometimes it is not clear what solver is best for the particular type of problem and tests on different solvers can be of use. In teaching one wants to view the details of the algorithms and look more carefully at the different algorithmic steps. When developing new algorithms tests on thousands of problems are necessary to fully access the pros and cons of the new algorithm. One might want to solve a practical problem very many times, with slightly different conditions for the run. Or solve a control problem looping in real-time and solving the optimization problem each time slot.

All these issues and many more are addressed with the TOMLAB optimization environment. TOMLAB gives easy access to a large set of standard test problems, optimization solvers and utilities.

Overall Design

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

Solving Linear, Quadratic and Integer Programming Problems

Contains examples on the process of defining problems and solving them. All test examples are available as part of the TOMLAB distribution.

Solving Unconstrained and Constrained Optimization Problems

Contains examples on the process of defining problems and solving them. All test examples are available as part of the TOMLAB distribution.

Solving Global Optimization Problems

Contains examples on the process of defining problems and solving them. All test examples are available as part of the TOMLAB distribution.

Solving Least Squares and Parameter Estimation Problems

Contains examples on the process of defining problems and solving them. All test examples are available as part of the TOMLAB distribution.

Multi Layer Optimization

Shows how to setup and define multi layer optimization problems in TOMLAB.

Tomhelp - The Help Program

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.

TOMLAB Solver Reference

TOMLAB Utility Functions

Describes the utility functions that can be used, for example tomRun and SolverList.

Approximation of Derivatives

Introduces the different options for derivatives, automatic differentiation.

Special Notes and Features

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

Appendix A: Prob - the Input Problem Structure

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: Result - the Output Result Structure

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

Appendix C: TomSym - the Modeling Engine

Appendix D: Global Variables and Recursive Calls

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

Appendix E: External Interfaces

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

Appendix F: Motivation and Background to TOMLAB

Gives some motivation for the development of TOMLAB.

Appendix G: Performance Tests on Linear Programming Solvers

Further Reading

TOMLAB has been discussed in several papers and at several conferences. The main paper on TOMLAB v1.0 is [1] . The use of TOMLAB for nonlinear programming and parameter estimation is presented in [2] , and the use of linear and discrete optimization is discussed in [3] . Global optimization routines are also implemented, one is described in [4].

In all these papers TOMLAB was divided into two toolboxes, the NLPLIB TB and the OPERA TB. TOMLAB v2.0 was discussed in [5] [6] . and [7] . TOMLAB v4.0 and how to solve practical optimization problems with TOMLAB is discussed in [8] .

The use of TOMLAB for costly global optimization with industrial applications is discussed in [9]; costly global optimization with financial applications in [10] [11] [12]. Applications of global optimization for robust control is presented in [13] [14] . The use of TOMLAB for exponential fitting and nonlinear parameter estimation are discussed in e.g. [15] [16] [17] [18] [19] [20] .

The manuals for the add-on solver packages are also recommended reading material.

References

  1. K. Holmström. The TOMLAB Optimization Environment in Matlab. Advanced Modeling and Optimization, 1(1):47-69, 1999.
  2. K. Holmström and M. Björkman. The TOMLAB NLPLIB Toolbox for Nonlinear Programming. Advanced Modeling and Optimization, 1(1):70-86, 1999.
  3. K. Holmström, M. Björkman, and E. Dotzauer. The TOMLAB OPERA Toolbox for Linear and Discrete Optimization. Advanced Modeling and Optimization, 1(2):1-8, 1999.
  4. M. Björkman and K. Holmström. Global Optimization Using the DIRECT Algorithm in Matlab. Advanced Modeling and Optimization, 1(2):17-37, 1999.
  5. K. Holmström. The TOMLAB v2.0 Optimization Environment. In E. Dotzauer, M. Björkman, and K. Holmstöm, editors, Sixth Meeting of the Nordic Section of the Mathematical Programming Society. Proceedings, Opuscula 49, ISSN 1400-5468, Västerås, 1999. Mälardalen University, Sweden.
  6. K. Holmström. New Optimization Algorithms and Software. Theory of Stochastic Processes, 5(21)(1-2):55-63, 1999.
  7. K. Holmström. Solving applied optimization problems using TOMLAB. In G. Osipenko, editor, Proceedings from MATHTOOLS '99, the 2nd International Conference on Tools for Mathematical Modelling, pages 90-98, St.Petersburg, Russia, 1999. St.Petersburg State Technical University.
  8. K. Holmström. Practical Optimization with the Tomlab Environment. In T. A. Hauge, B. Lie, R. Ergon, M. D. Diez, G.-O. Kaasa, A. Dale, B. Glemmestad, and A Mjaavatten, editors, Proceedings of the 42nd SIMS Conference, pages 89-108, Porsgrunn, Norway, 2001. Telemark University College, Faculty of Technology.
  9. M. Björkman and K. Holmström. Global Optimization of Costly Nonconvex Functions Using Radial Basis Functions. Optimization and Engineering, 1(4):373-397, 2000.
  10. T. Hellström and K. Holmström. Parameter Tuning in Trading Algorithms using ASTA. In Y. S. Abu-Mostafa, B. LeBaron, A. W. Lo, and A. S. Weigend, editors, Computational Finance (CF99) - Abstracts of the Sixth International Conference, Leonard N. Stern School of Business, January 1999, Leonard N. Stern School of Business, New York University, 1999. Department of Statistics and Operations Research.
  11. T. Hellström and K. Holmström. Parameter Tuning in Trading Algorithms using ASTA. In Y. S. Abu-Mostafa, B. LeBaron, A. W. Lo, and A. S. Weigend, editors, Computational Finance 1999, Cambridge, MA, 1999. MIT Press.
  12. T. Hellström and K. Holmström. Global Optimization of Costly Nonconvex Functions, with Financial Applications. Theory of Stochastic Processes, 7(23)(1-2):121-141, 2001.
  13. C. M. Fransson, B. Lennartson, T. Wik, and K. Holmström. Multi Criteria Controller Optimization for Uncertain MIMO Systems Using Nonconvex Global Optimization. In Proceedings of the 40th Conference on Decision and Control, Orlando, FL, USA, December 2001.
  14. C. M. Fransson, B. Lennartson, T. Wik, K. Holmström, M. Saunders, and P.-O. Gutmann. Global Controller Optimization Using Horowitz Bounds. In Proceedings of the 15th IFAC Conference, Barcelona, Spain, 21th-26th July, 2002.
  15. K. Holmström and J. Petersson. A Review of the Parameter Estimation Problem of Fitting Positive Exponential Sums to Empirical Data. Applied Mathematics and Computations, 126(1):31-61, 2002.
  16. Jordan M. Berg and K. Holmström. On Parameter Estimation Using Level Sets. SIAM Journal on Control and Optimization, 37(5):1372-1393, 1999.
  17. V. N. Fomin, K. Holmström, and T. Fomina. Least squares and Minimax methods for inorganic chemical equilibrium analysis. Research Report 2000-2, ISSN-1404-4978, Department of Mathematics and Physics, Mälardalen University, Sweden, 2000.
  18. T. Fomina, K. Holmström, and V. B. Melas. Nonlinear parameter estimation for inorganic chemical equilib- rium analysis. Research Report 2000-3, ISSN-1404-4978, Department of Mathematics and Physics, Mälardalen University, Sweden, 2000.
  19. K. Holmström and T. Fomina. Computer Simulation for Inorganic Chemical Equilibrium Analysis. In S.M. Ermakov, Yu. N. Kashtanov, and V.B. Melas, editors, Proceedings of the 4th St.Petersburg Workshop on Simulation, pages 261-266, St.Petersburg, Russia, 2001. NII Chemistry St. Peterburg University Publishers.
  20. K. Holmström, T. Fomina, and Michael Saunders. Parameter Estimation for Inorganic Chemical Equilibria by Least Squares and Minimax Models. Optimization and Engineering, 4, 2003. Submitted.