GEATbx: Main page  Tutorial  Algorithms  M-functions  Parameter/Options  Example functions 
Previous: Contents: Next:
1.10 Langermann's function 11 Contents1.12 Branins's rcos function

1 Parametric Optimization


1.11 Michalewicz's function 12

The Michalewicz function [Mic92] is a multimodal test function (n! local optima). The parameter m defines the "steepness" of the valleys or edges. Larger m leads to more difficult search. For very large m the function behaves like a needle in the haystack (the function values for points in the space outside the narrow peaks give very little information on the location of the global optimum).

function definition
f12(x)=-sum(sin(x(i))·(sin(i·x(i)^2/pi))^(2·m)), i=1:n, m=10;
0<=x(i)<=pi
.

global minimum
f(x)=-4.687 (n=5); x(i)=???, i=1:n.
f(x)=-9.66 (n=10); x(i)=???, i=1:n.

This function is implemented in objfun12.

The first two graphics below represent a global and a local view to Michalewicz's function, both for the first two variables. The third graphic on the right side displays the function using the third and fourth variable, the first two variables were set top 0. By comparing the left and the right graphic the increasing difficulty of the function can be seen. As higher the dimension as more values are introduced into the function.
Michalewicz's function 12, global Michalewicz's function 12, local Michalewicz's function 12, variable 3 and 4


GEATbx: Main page  Tutorial  Algorithms  M-functions  Parameter/Options  Example functions 

This document is part of version 3.3 of the GEATbx: Genetic and Evolutionary Algorithm Toolbox for use with Matlab - www.geatbx.com.
The Genetic and Evolutionary Algorithm Toolbox is not public domain.
© 1994-2000 Hartmut Pohlheim, All Rights Reserved, (support@geatbx.com).