788 Some Computational Aspects of Optimization
xmaxi ) ,i= 1 , 2 ,... , n. The values of these bounds are not critical and there will not
be any harm even if they span partially the infeasible domain. Another aspect of
scaling is encountered with constraint functions. This becomes necessary whenever the
values of the constraint functions differ by large magnitudes. This aspect of scaling
(normalization) of constraints was discussed in Section 7.13.
B.6 Computer Programs for Modern Methods of Optimization
Fuzzy Logic Toolbox. Matlab has a fuzzy logic toolbox for designing systems based
on fuggy logic. Graphical user interfaces (GUI) are available to guide the user through
the steps of fuzzy interface system design. The toolbox can be used to model complex
system behaviors using simple logic rules and then implement the rules in a fuzzy
interface system. Fuzzy optimization can be implemented using fuzzy logic toolbox in
conjunction with an optimization program such as fmincon.
Genetic Algorithm and Direct Search Toolbox. The genetic algorithm and direct
search toolbox, which can be used to solve problems that are difficult to solve with
traditional optimization techniques, is available with Matlab. The genetic algorithm of
the toolbox can be used when the function, such as the objective or constraint function,
is discontinuous, highly nonlinear, stochastic, or has unreliable or undefined derivatives.
In this toolbox also, graphical user interfaces (GUI) are available for quick setting up of
problems, selecting algorithmic options, and monitoring progress. Naturally, the options
of creating initial population, fitness scaling, parent selection, crossover and mutation
are available in the toolbox. The Matlab optimization programs (using direct search
methods) can be integrated with the genetic algorithm.
Neural Network Toolbox. The neural network toolbox is available with Matlab for
designing, implementing, visualizing and simulating neural networks. The GUI avail-
able with the toolbox helps in creating, training and simulating neural networks. It
permits modular network representation to have any number of input-setting layers and
network interconnection and a graphical view of the network architecture. Optimization
programs can be used in conjunction with the functions of the neural network toolbox
to accomplish neural network-based optimization. The neural network toolbox can also
be used to apply neural networks for the identification and control of nonlinear systems.
Simulated Annealing Algorithm. An m-file to implement the simulated annealing
algorithm to solve function minimization problems in the Matlab environment was
created by Joachim Vandekerckhove. The link is given below:
http://www.mathworks.com/matlabcentral/fileexchange/10548
Particle Swarm Optimization. An m-file to implement the particle swarm optimiza-
tion method in the Matlab environment was created by Wael Korani. The link is given
below:
http://www.mathworks.com/matlabcentral/fileexchange/20205