Proceedings of the 6th WSEAS International Conference on Simulation, Modelling and Optimization, Lisbon, Portugal, September 22-24, 2006
IND-NIMBUS Software for Multiobjective Optimization
VESA OJALEHTO Department of Mathematical Information Technology University of Jyväskylä P.O. Box 35 (Agora), FI-40014 University of Jyväskylä FINLAND KAISA MIETTINEN∗ and MARKO M. MÄKELĆ
[email protected]., makela@utu., kaisa.miettinen@hse.
Abstract:
We describe the main features and principles of the IND-NIMBUSdmst system. This system is
an implementation of the interactive NIMBUS method for multiobjective optimization. The system can be connected with dierent types of software describing the mathematical model of the multiobjective optimization problem to be solved.
Keywords:
Multiple objective programming, interactive methods, NIMBUS, nonlinear programming,
decision support, optimization tool
1
Introduction
Practical
optimization
IND-NIMBUS is a portable desktop application tarapplications
typically
geted for commercial industrial application in addi-
in-
tion to academic use.
volve several conicting criteria to be optimized simultaneously.
This has been a fruitful starting
point for the development of various optimization
2
methods for multiple objectives (see, e.g. [11] and
Multiobjective optimization
In classical optimization we have only one objective
references therein). Despite of that the lack of soft-
function to be optimized. However, in real life ap-
ware for multiobjective optimization is, however,
plications it is typical to have several conicting ob-
evident. In order to ll this gap WWW-NIMBUS
jectives, that should be optimized simultaneously.
was developed at the University of Jyväskylä in
For this reason the classical single objective opti-
1995 [14]. The WWW-NIMBUS system is an im-
mization methods are not applicable as such, but
plementation of the interactive NIMBUS method
we need special multiobjective optimization meth-
[11, 12, 13, 14, 16] and it is operating on the Inter-
ods. For further information see [11].
net being freely available for academic use.
In
Another feature of practical optimization ap-
multiobjective
plications is that the functions characterizing the minimize
problem are not necessarily available in an explicit
subject to
form but they can be evaluated, for example, as a system of partial dierential equations.
This is
involving
a challenge for the optimization software, since it
Rn → R
should be able to connect with dierent simulation
The
codes in a exible way.
xn )T
consider
{f1 (x), f2 (x), . . . , fk (x)} x∈S
k (≥ 2) conicting objective
(1)
functions fi :
decision (variable) vectors x = (x1 , x2 , . . . , are supposed to belong to the nonempty com-
feasible region S ⊂ Rn . Objective vectors f (x) = (f1 (x), f2 (x), . . . , fk (x))T consist of objective (function) values and the image of the feasible
NIMBUS, a new implementation of the NIMBUS method for industrial optimization applications.
†
we
that we want to minimize simultaneously.
pact
The aim of this research was to develop IND-
∗
optimization
problems of the form
Helsinki School of Economics, P.O Box 1210, FI-00101 Helsinki, FINLAND University of Turku, Department of Mathematics, FI-20014 Turku, FINLAND
1
654
Proceedings of the 6th WSEAS International Conference on Simulation, Modelling and Optimization, Lisbon, Portugal, September 22-24, 2006
feasible objective region .
region is called a
655
and upper bounds. These subproblems are solved
In multiobjective optimization, objective vec-
to get one to four new Pareto optimal solutions.
tors are regarded as optimal if their components
(In the earlier versions of the NIMBUS method
cannot be improved without deterioration to at
[11, 12, 13, 14], only one subproblem was formed
least one of the other components. More precisely,
and solved.) However the same preference informa-
a decision vector
x0 ∈ S
is called
Pareto optimal
tion can be the basis of several dierent subprob-
if there does not exist another x ∈ S such that fi (x) ≤ fi (x0 ) for all i = 1, . . . , k and fj (x) < fj (x0 ) for at least one index j . Furthermore, an objective
lems (see [15].)
3.1
vector is Pareto optimal if the corresponding decision vector is Pareto optimal.
Next we describe shortly the current synchronous
The set of Pareto
NIMBUS method.
optimal objective vectors is called the Pareto opti-
set
Because all the Pareto optimal solutions are
maker
For more details, see [16].
A.
denote the set of saved solutions by
mal set. mathematically
Synchronous NIMBUS algorithm
equivalent,
we
need
a
decision
A = ∅.
We
At rst, we
The starting point of the solution pro-
cess can come from the decision maker or it can be some neutral compromise between the objectives.
(DM) to identify the most preferred one
among them. The decision maker is a person who 1. Get a Pareto optimal starting point.
can express preference information related to the conicting objectives and we assume that less is pre-
2. Ask the decision maker to classify the objec-
ferred to more in each objective for her/him.
tive functions at the current solution and to
3
specify the possible aspiration levels and up-
NIMBUS method
per bounds.
NIMBUS is an interactive multiobjective optimizaNIMBUS
3. Ask the decision maker to select the maxi-
has been used in solving several real-life problems.
mum number of dierent solutions to be gen-
Among others, it has been applied in a structural
erated (between one and four) and solve as
design problem [17], in the optimal control problem
many subproblems.
tion method (see [11, 12, 13, 14, 16]).
of the continuous casting of steel [18] and in the 4. Present the dierent new solutions obtained
paper machine headbox design [7].
to the decision maker.
The idea of NIMBUS is that the DM examines the values of the objective functions calculated at
5. If the decision maker wants to save one or
a current Pareto optimal decision vector and classies the objective functions into up to ve classes.
more
of
the
This means that the DM is asked to indicate (by
it/them to
new
solutions
to
A,
include
A.
the means of the classication) what kind of a so6. If the decision maker does not want to see
lution would be more satisfactory than the current
intermediate solutions between any two solu-
one. The classes are for functions whose values
tions, go to step 8.
Otherwise, ask the de-
cision maker to select the two solutions from
should be decreased,
among the new solutions or solutions in should be decreased to some aspiration level,
A.
Ask the number of new intermediate solutions from the decision maker.
are satisfactory at the moment,
7. Generate the desired number of Pareto opti-
are allowed to increase up till some upper bound,
mal intermediate solutions. Go to step 4. are allowed to change freely. 8. Ask the decision maker to choose the most preferred one among the new and/or interme-
In the so-called synchronous NIMBUS method
A.
from one to four dierent single objective sub-
diate solutions or solutions in
problems are formulated based on the classica-
cision maker wants to continue, go to step 2.
tion as well as the corresponding aspiration levels
Otherwise, stop.
2
If the de-
Proceedings of the 6th WSEAS International Conference on Simulation, Modelling and Optimization, Lisbon, Portugal, September 22-24, 2006
cally or graphically by indicating desirable changes
The algorithm is terminated if the DM does not
in a bar chart with a mouse.
want to decrease any objective value or is not willing to let any objective value increase. Otherwise,
In the WWW-NIMBUS system the user can
the search continues iteratively by moving around
save,
the Pareto optimal set.
load and modify problems.
The exible
In this way, the DM can
database management enables saving selected solu-
learn about the problem, adjust ones hopes and -
tions whenever required. In this way, the user can
nally identify the most desirable solution.
comfortably return to previous solutions if they turn out to be interesting, after all.
3.2
NIMBUS method implementation
The feasible region
S
The user can also
graphically illustrate a (sub)set of saved solutions and not only the latest ones, and generate interme-
may consist of nonlinear and
diate solutions between any two solutions. Because
linear equality and inequality constraints as well as
of the structure of the algorithm, all the solutions
lower and upper bounds for the variables. The ob-
handled are Pareto optimal.
jective functions can be either minimized or maximized. The
single
objective
subproblems
that
are
4
formed based on the classication information, can be solved with dierent underlying solvers.
IND-NIMBUS is a multi-platform desktop applica-
If the
tion implementing the NIMBUS algorithm. Unlike
DM wishes to use a local algorithm, it is possible to
WWW-NIMBUS, it does not contain any tools to
use the proximal bundle method [10]. This method
formulate the optimization problem. Instead, it is
can solve even nondierentiable problems and it as-
assumed that the problem is formulated in another
sumes the objective and the constraint functions to
program, which provides the necessary information
be locally Lipschitz continuous. Note that it needs
for the IND-NIMBUS software.
(sub)gradient information.
In IND-NIMBUS, the DM has access to all so-
Alternatively, if the DM wishes to use a global optimization
solver,
he
can
solve
with an genetic algorithm [3].
the
lutions generated during the process. Any solution
problem
can be selected as a starting solution for a new clas-
NIMBUS contains
sication, or as an end point for generating interme-
two variants of genetic algorithms with dierent
diate solutions. In this way, the DM can generate a
constraint-handling techniques, based on adaptive
representation of the Pareto optimal set according
penalties [4] and method of parameter free penal-
to her/his preferences for further study
ties [2]. See also [19]
In order to organize these solutions, the DM can
It is also possible to use other global solvesr
create dierent lters, for example to show only
like Controlled Random Search (CRS) [20] or Dif-
those solutions where the rst objective function
ferential Evolution [22] global solvers, but at this time
these
are
available
only
for
internal
IND-NIMBUS
has values above zero.
use.
There is also a possibility
to view only those solutions obtained from the last
These solvers have two dierent variants, due their
classication or alternative generation.
constraint-handling techniques.
The DM
can also store the best solution candidates to the Best Candidates panel at any point during the
3.3
WWW-NIMBUS
solution process. The undesirable solutions can be
WWW-NIMBUS is an freely available implemen-
deleted from the solution list.
tation of the NIMBUS algorithm operating on the
The graphics used in IND-NIMBUS are gener-
Internet [14]. WWW-NIMBUS has been developed
ated using a standalone package, which can also be
for solving nonlinear and mathematically challeng-
used to generate graphics for other NIMBUS imple-
ing multiobjective optimization problems. WWW-
mentations. One of the main duties of the graph-
NIMBUS can be accessed at
http://nimbus.mit.
ics package is to generate the visualization graph-
jyu.fi/ and can be used, for example, for teaching
ics for comparing dierent Pareto optimal solutions.
purposes.
These visualization graphics include two-dimension
The problem to be solved in WWW-NIMBUS
and three-dimension bar-chart, spider web chart,
can be specied for the system either by lling a
value paths, whisker plot, petal diagram and multi-
web form or as a subroutine. The classication of
way dot plot. The same ltering tools are available
the objective functions can be carried out symboli-
for visualizations as for other action windows.
3
656
Proceedings of the 6th WSEAS International Conference on Simulation, Modelling and Optimization, Lisbon, Portugal, September 22-24, 2006
Figure 1: IND-NIMBUS classication window
r
BALAS
Numerical variable and objective function val-
[1, 5, 6] is a process simulator de-
ues of each solution can also be viewed, and ex-
veloped at the VTT Technical Research Center
ported, from the IND-NIMBUS software.
of Finland.
There
It operates on the Windows operat-
also exists views for changing the default parameter
ing system, consisting of a separate program Flow-
values of optimization solvers used, and for viewing
sheet for the creation of the process owsheet and
possible warning messages these solvers have pro-
the BALAS software, which formulates the process
duced during the optimization process.
simulation problem to be optimized.
The IND-NIMBUS classication window can be
Numerrin 2.0 is a Linux based software for phe-
seen in Figure 1. Here the classication information
nomenon based physical modeling of real-world sys-
is given by clicking the objective function bars on
tems.
the left. The DM can give the preferred aspiration
tran 95 programming language, using the nite el-
level or the upper bound to the edit box next to each
ement analysis library included [8].
function bar. Alternatives between any two Pareto
Numerrin models are created by the For-
The virtual paper making simulation and opti-
optimal solutions can be generated in a secondary
mization system (MOP) is designed to provide sup-
window, not shown here.
port for solving complex paper making problems in
It should be noted that the IND-NIMBUS user
a paper machine.
interface is concurrent. In other words, the user can
It contains several unit process
models that are combined as one large multidisci-
move between dierent windows, even if some op-
plinary simulation model [9].
eration is still running. Nevertheless, at this time
The MOP software
operates on the Windows platform.
there can be only one concurrent computational op-
MATLAB
eration running at a time.
r
is a interactive environment that
can be used to solve a wide range of problems. MATLAB is used with IND-NIMBUS system to de-
4.1
Using
IND-NIMBUS
with
third
velop a multicriteria model for intensity modulated
party applications
radiotherapy [21].
As stated previously, the IND-NIMBUS software
In practice, there exist two dierent ways of
does not include tools to formulate optimization
connecting the optimization problem to the IND-
problem to be solved.
NIMBUS system. In a simpler approach, the prob-
Therefore, IND-NIMBUS
software must be used in conjunction with a exter-
lem can be given as an executable le.
nal simulation software. The problem dimensions,
cutable contains or dynamically links to the IND-
objective functions, variable names, and other in-
NIMBUS software for the actual optimization. Fur-
formation dening the problem in question must be
thermore, the executable must be able to access all
specied in a external software. For this purpose,
tools needed to formulate and solve the problem
the following applications have been used as IND-
in question.
NIMBUS test cases.
executable is run for each of the NIMBUS opera-
4
This exe-
During the optimization process this
657
Proceedings of the 6th WSEAS International Conference on Simulation, Modelling and Optimization, Lisbon, Portugal, September 22-24, 2006
tions as a separate process, and the communication
In addition, several parts of the NIMBUS algo-
between the executable and the IND-NIMBUS soft-
rithm could be run in parallel. Using suitable tools,
ware is done by services provided by the underlying
simple parallelization of the initial step and classi-
operating system.
cation operations should not be an overwhelming
However, it is likely that the simulation pro-
task. As the current CPU development trends are
cesses generated by a simulation software cannot be
heading towards multiprocessor systems, the paral-
separated to a single executable. In this case, the
lelization could in the future oer clear advantages
simulation process and the IND-NIMBUS software
regarding the time used for the optimization pro-
are controlled with a separate application, which
cess, even in standard desktop environments. Fur-
contains the NIMBUS implementation.
thermore, the industrial applications are often computationally very demanding, so with suitable par-
In both approaches the communication between
allelization implementation the optimization pro-
IND-NIMBUS and the problem entity is done via
cess could be distributed to several dierent com-
standard les. There exist some basic facilities for
puters.
socket based communication, but these have not yet
It could also be of some interest to store the
been used in any of the test cases used in the IND-
dierent objective function values obtained during
NIMBUS development.
the optimization process.
As mentioned earlier, the IND-NIMBUS soft-
This information could
be used to examine the simulation model after the
ware has some data visualization tools but it is also
optimization, and with these values it would be pos-
possible to use problem domain specic tools re-
sible to eliminate duplicate objective function cal-
lated to each industrial application to examine dif-
culations for the same, or similar, decision variable
ferent solutions generated during the optimization
values.
process. For this purpose, the problem designer can
The Pareto optimal solution set obtained during
specify a set of les that the problem generates dur-
the optimization process could be better examined
ing the objective function calculations. These les
with more advanced ltering tools.
are stored with the objective function values, and
Furthermore,
as the solutions are generated in a treelike struc-
they can be exported to the industrial application
ture, this structure could be shown to the DM to
for further referencing.
give him/her a better view of the whole solution process.
5
Conclusions and Future Plans
The IND-NIMBUS software is a desktop application
Acknowledgments
that has been successfully connected with several
The IND-NIMBUS development has been a part of
dierent applications to solve multiobjective opti-
the NIMBUS and MASIT01 projects supported by
mization problems. During this process, user feed-
TEKES Finnish Funding Agency for Techonoly
back from dierent test cases has given new ideas
and Innovation.
how to improve the IND-NIMBUS software. Some
MSc.
Paavo Nieminen, Ph.Lic.
Jussi Hakanen and Ph.Lic.
of these features and ideas are discussed here.
Elina Madetoja have
given valuable help in connecting IND-NIMBUS
During the IND-NIMBUS development it was
with dierent industrial applications. MSc. Tommi
apparent that the NIMBUS Fortran77 implementa-
Ronkainen has been the principal developer of IND-
tion cannot be easily extended to meet with chang-
NIMBUS software.
ing requirements. One of the most problematic aspect of the current implementation is the lack of
References
control and communication during the optimization process. Possibilities to aect the running optimiza-
[1] Balas,
Process Simulation Software.
tion process in a controlled way are rather limited,
Processes,
or non existent. Furthermore, during the optimiza-
2006.
tion the Fortran77 implementation provides little
VTT
http://www.vtt.fi/pro/balas/,
DM is forced to either wait for the nal result or to
An Eecient Constraint Handling Method for Genetic Algorithms. Computer
kill the process when it has taken too long time in
Methods in Applied Mechanics and Engineer-
his/her opinion.
ing, Vol. 186, pp. 11 338, 2000.
[2] K. Deb.
information about the course of the process, so the
5
658
Proceedings of the 6th WSEAS International Conference on Simulation, Modelling and Optimization, Lisbon, Portugal, September 22-24, 2006
Genetic Algorithms in Search, Optimization and Machine Learning. Addison-
Point-based Methods for Multi-Objective Optimisation. Journal of the Operational Research
Wesley Publishing Company, Inc., 1989.
Society, Vol. 50, pp. 949959, 1999.
[3] G.E. Goldberg.
Interactive Multiobjective Optimization System WWWNIMBUS on the Internet. Computers & Oper-
A Genetic Algorithm for the Multiple-Choice Integer Program. Operations Rearch, Vol. 45, No. 1, pp.
[14] K. Miettinen and M.M. Mäkelä.
[4] A.B. Hadj-Alouane and J.C. Bean.
ations Research, Vol. 27, pp. 709723, 2000.
92101, 1997.
On Scalarizing Functions in Multiobjective Optimization. OR
An integrated multiobjective design tool for process design. Applied Thermal Engineering, Vol. 26,
[15] K. Miettinen and M.M. Mäkelä.
No. 13, pp. 19931399, 2006.
[16] K. Miettinen and M.M. Mäkelä.
[5] J. Hakanen, J. Hakala, and J. Manninen.
Spectrum, Vol. 24, No. 2, pp. 193213, 2002.
Synchronous approach in interactive multiobjective optimization. European Journal of Operational Re-
[6] J. Hakanen, Y. Kawajiri, K. Miettinen, and
Interactive multi-objective optimization of Simulated Moving Bed processes using IND-NIMBUS and IPOPT. Working
L.T. Biegler.
search, Vol. 170, No. 3, pp. 909922, 2006. [17] K. Miettinen, M.M. Mäkelä, and R.A.E. Mäki-
Interactive Multiobjective Optimization System NIMBUS Applied to Nonsmooth Structural Design Problems. System Modelling and
Papers W-404, Helsinki School of Economics,
nen.
2006. [7] J.H. Hämäläinen, K. Miettinen, P. Tarvainen,
Optimization, Proceedings of the 17th IFIP
Interactive Solution Approach to a Multiobjective Optimization Problem in Paper Machine Headbox Design. Journal of and J. Toivanen.
Conference on System Modelling and Optimization, pp. 379385. Chapman & Hall, London, 1996.
Optimization Theory and Applications, Vol.
[18] K. Miettinen,
116, pp. 265281, 2003.
M.M. Mäkelä,
and T. Män-
Optimal Control of Continuous Casting by Nondierentiable Multiobjective Optimization. Computational Optimization and Applinikkö.
[8] E. Heikkola, K. Miettinen, and P. Nieminen.
Multiobjective Optimization of an Ultrasonic Transducer using NIMBUS. Ultrasonics (to ap-
cations, Vol. 11, pp. 177194, 1998.
pear). [19] K. Miettinen, M.M. Mäkelä, and J. Toivanen.
On Interactive Multiobjective Optimization Related to Paper Quality. Licen-
Numerical Comparison of Some Penalty-Based Constraint Handling Techniques in Genetic Algorithms. Journal of Global Optimization, Vol.
[9] E. Madetoja.
tiate thesis, Department of Mathematical Information Technology, University of Jyväskylä,
27, No. 4, pp. 427446, 2003.
2003.
Global optimization by Controlled Random Search. Journal of Optimization The-
[20] W.L. Price.
Nonsmooth Optimization Analysis and Algorithms with Applications to Optimal Control. World
[10] M.M. Mäkelä and P. Neittaanmäki.
ory and Applications, Vol. 40, No. 3, pp. 333 348, 1983.
Scientic, Singapore, 1992. [11] K. Miettinen.
timization.
[21] H. Ruotsalainen,
Academic
E. Boman,
J. Hämäläinen. Multicriteria Optmization for Intensity Modulated Radiotherapy Based on Decision Maker's Knowledge.
Nonlinear Multiobjective OpKluwer
K. Miettinen,
and
Publishers,
Boston, 1999.
manuscript available via private communica-
Interactive Bundle-Based Method for Nondierentiable Multiobjective Optimization: NIMBUS.
[12] K. Miettinen and M.M. Mäkelä.
tion: Henri.Ruotsalainen@uku..
Dierential Evolution A Simple and Ecient Heuristic for global Optimization over Continuous Spaces. Journal of
[22] R. Storn and K. Price.
Optimization, Vol. 34, pp. 231246, 1995.
Comparative Evaluation of Some Interactive Reference
Global Optimization, Vol. 11, No. 4, pp. 341
[13] K. Miettinen and M.M. Mäkelä.
359, 1997.
6
659