Tcl Library Source Code

Bounty program for improvements to Tcl and certain Tcl packages.

[ Main Table Of Contents | Table Of Contents | Keyword Index | Categories | Modules | Applications ]


math::probopt - Probabilistic optimisation methods

Table Of Contents


package require Tcl 8.6
package require TclOO
package require math::probopt 1

::math::probopt::pso function bounds args
::math::probopt::sce function bounds args
::math::probopt::diffev function bounds args
::math::probopt::lipoMax function bounds args
::math::probopt::adaLipoMax function bounds args


The purpose of the math::probopt package is to provide various optimisation algorithms that are based on probabilistic techniques. The results of these algorithms may therefore vary from one run to the next. The algorithms are all well-known and well described and proponents generally claim they are efficient and reliable.

As most of these algorithms have one or more tunable parameters or even variations, the interface to each accepts options to set these parameters or the select the variation. These take the form of key-value pairs, for instance, -iterations 100.

This manual does not offer any recommendations with regards to these algorithms, nor does it provide much in the way of guidelines for the parameters. For this we refer to online articles on the algorithms in question.

A few notes, however:

The collection consists of the following algorithms:

The various procedures have a uniform interface:

set result [::math::probopt::algorithm function bounds args]

The arguments have the following meaning:

The result of the various optimisation procedures is a dictionary containing at least the following elements:


The algorithms in the package are the following:


The various algorithms have been described in on-line publications. Here are a few:


mathematics, optimisation, probabilistic calculations