<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://metah.nojhan.net/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
  <title>Dreaming of Metaheuristics</title>
  <link>http://metah.nojhan.net/</link>
  <description>A blog about metaheuristics for hard optimization. Thoughts on design, use and implementation of stochastics algorithms.</description>
  <language>en</language>
  <pubDate>Tue, 15 Jul 2008 11:46:58 +0200</pubDate>
  <copyright></copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>An EDA in a few lines of python</title>
    <link>http://metah.nojhan.net/post/2008/06/15/An-EDA-in-a-few-lines-in-python</link>
    <guid isPermaLink="false">urn:md5:59ae75c362289c7724dd378fabebb2e2</guid>
    <pubDate>Mon, 23 Jun 2008 21:55:00 +0200</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>Programming</category>
        <category>estimation of distribution</category><category>python</category>    
    <description>    &lt;p&gt;About an &lt;a href=&quot;http://geneticargonaut.blogspot.com/2008/02/evolving-grid-computing-optimization.html&quot;&gt;
interesting post&lt;/a&gt; I have &lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/The-problem-with-spreading-new-metaheuristics&quot;&gt;already
commented&lt;/a&gt;, &lt;a href=&quot;http://www.blogger.com/profile/09333191187316058782&quot;&gt;Julian Togelius&lt;/a&gt; said:
&lt;cite&gt;&amp;quot;I know roughly what an EDA does, but I couldn't sit down an implement
one on the spot [...]&amp;quot;&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;I personally think that estimation of distribution algorithms (EDA) are some
of the more elegant an easy to use metaheuristics. Obviously, this highly
depends of the mind configuration :-) Anyway, as a piece of code is more
comprehensive than a long speech, I've made a very simple and small EDA in
python, to illustrate my thought.&lt;/p&gt;
&lt;p&gt;This is a simple continuous EDA using a (also simple) normal probability
density function to optimize a (once more simple) function with two variables.
As you can see, the code is (guess what ?) simple, only a few lines with some
&lt;a href=&quot;http://www.scipy.org&quot;&gt;scipy&lt;/a&gt; functions, and that's it.&lt;/p&gt;
&lt;code&gt;from scipy import *&lt;br /&gt;
&lt;br /&gt;
# The problem to optimize&lt;br /&gt;
&lt;b&gt;def&lt;/b&gt; x2y2( x ):&lt;br /&gt;
        &lt;b&gt;return&lt;/b&gt; x[0]**2 +
x[1]**2&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;class&lt;/b&gt; eda:&lt;br /&gt;
        &lt;b&gt;def&lt;/b&gt; __init__(self,
of):&lt;br /&gt;
                #
Algorithm parameters&lt;br /&gt;
                self.iterations
= 100&lt;br /&gt;
                self.sample_size
= 100&lt;br /&gt;
                self.select_ratio
= 0.5&lt;br /&gt;
                self.epsilon
= 10e-6&lt;br /&gt;
&lt;br /&gt;
                #
class members&lt;br /&gt;
                self.objective_function
= of&lt;br /&gt;
                self.dimensions
= 2&lt;br /&gt;
                self.sample
= []&lt;br /&gt;
                self.means
= []&lt;br /&gt;
                self.stdevs
= []        &lt;br /&gt;
                self.debug
= False&lt;br /&gt;
&lt;br /&gt;
        &lt;b&gt;def&lt;/b&gt; run(self):&lt;br /&gt;

                #
uniform initialization&lt;br /&gt;
                self.sample
= random.rand( self.sample_size, self.dimensions+1 )&lt;br /&gt;
                #
cosmetic&lt;br /&gt;
                self.sample
= self.sample * 200 - 100&lt;br /&gt;
&lt;br /&gt;
                self.evaluate()&lt;br /&gt;

                &lt;br /&gt;

                #
main loop&lt;br /&gt;
                i
= 0&lt;br /&gt;
                &lt;b&gt;while&lt;/b&gt; i
&amp;lt; self.iterations:&lt;br /&gt;
                        i
+= 1&lt;br /&gt;
                        self.dispersion_reduction()&lt;br /&gt;

                        self.estimate_parameters()&lt;br /&gt;

                        self.draw_sample()&lt;br /&gt;

                        self.evaluate()&lt;br /&gt;

&lt;br /&gt;
                #
sort the final sample&lt;br /&gt;
                self.sample_sort()&lt;br /&gt;

                #
output the optimum&lt;br /&gt;
                &lt;b&gt;print&lt;/b&gt; &amp;quot;#[
x y f(x,y) ]&amp;quot;&lt;br /&gt;
                &lt;b&gt;print&lt;/b&gt; self.sample[0]&lt;br /&gt;

&lt;br /&gt;
        &lt;b&gt;def&lt;/b&gt; sample_sort(self):&lt;br /&gt;

                #
sort rows on the last column&lt;br /&gt;
                self.sample
= self.sample[ argsort( self.sample[:,-1], 0 ) ]&lt;br /&gt;
&lt;br /&gt;
        &lt;b&gt;def&lt;/b&gt; dispersion_reduction(self):&lt;br /&gt;

                self.sample_sort()&lt;br /&gt;

&lt;br /&gt;
                #
number of points to select&lt;br /&gt;
                nb
= int( floor( self.sample_size * self.select_ratio ) )&lt;br /&gt;
&lt;br /&gt;
                #
selection&lt;br /&gt;
                self.sample
= self.sample[:nb]&lt;br /&gt;
&lt;br /&gt;
        &lt;b&gt;def&lt;/b&gt; estimate_parameters(
self ):&lt;br /&gt;
                #
points sub array (without values)&lt;br /&gt;
                mat
= self.sample[:,:self.dimensions]&lt;br /&gt;
                &lt;br /&gt;

                #
row means (axis 0 in scipy)&lt;br /&gt;
                self.means
= mean( mat, 0 )&lt;br /&gt;
                &lt;br /&gt;

                #
row standard deviation&lt;br /&gt;
                self.stdevs
= std( mat, 0 )&lt;br /&gt;
&lt;br /&gt;
        &lt;b&gt;def&lt;/b&gt; draw_sample(self):&lt;br /&gt;

                #
for each variable to optimize&lt;br /&gt;
                &lt;b&gt;for&lt;/b&gt; i
&lt;b&gt;in&lt;/b&gt; xrange(self.dimensions):&lt;br /&gt;
                        #
if the dispersion is null&lt;br /&gt;
                        &lt;b&gt;if&lt;/b&gt; self.stdevs[i]
== 0.0:&lt;br /&gt;
                                #
set it to a minimal value&lt;br /&gt;
                                self.stdevs[i]
= self.epsilon&lt;br /&gt;
                &lt;br /&gt;

                #
empty sample&lt;br /&gt;
                self.sample
= zeros( (self.sample_size, self.dimensions+1) )&lt;br /&gt;
                &lt;br /&gt;

                #
for each point&lt;br /&gt;
                &lt;b&gt;for&lt;/b&gt; i
&lt;b&gt;in&lt;/b&gt; xrange( self.sample_size ):&lt;br /&gt;
                        #
draw in random normal&lt;br /&gt;
                        p
= random.normal( self.means, self.stdevs )&lt;br /&gt;
                        #
put it into the sample&lt;br /&gt;
                        self.sample[i][:self.dimensions]
= p&lt;br /&gt;
&lt;br /&gt;
        &lt;b&gt;def&lt;/b&gt; evaluate(self):&lt;br /&gt;

                #
for each point&lt;br /&gt;
                &lt;b&gt;for&lt;/b&gt; i
&lt;b&gt;in&lt;/b&gt; xrange( self.sample_size ):&lt;br /&gt;
                        d
= self.dimensions&lt;br /&gt;
                        #
call the objective function&lt;br /&gt;
                        #  
the third element is the result of the objective function call&lt;br /&gt;
                        #  
taking the first two elements as variables&lt;br /&gt;
                        self.sample[i][-1]  =
self.objective_function( self.sample[i][:d] )&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;if&lt;/b&gt; __name__==&amp;quot;__main__&amp;quot;:&lt;br /&gt;
        a = eda( x2y2 )&lt;br /&gt;
        a.run()&lt;br /&gt;
&lt;br /&gt;&lt;/code&gt; See also &lt;a href=&quot;http://metah.nojhan.net/public/eda_demo.py&quot;&gt;the file alone with a
debug mode&lt;/a&gt;, to see how it works in details.</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2008/06/15/An-EDA-in-a-few-lines-in-python#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2008/06/15/An-EDA-in-a-few-lines-in-python#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/251136</wfw:commentRss>
      </item>
    
  <item>
    <title>Metaheuristic validation in a nutshell</title>
    <link>http://metah.nojhan.net/post/2008/06/15/Metaheuristic-validation-in-a-nutshell</link>
    <guid isPermaLink="false">urn:md5:f35180d5a41a197cb5d674d3d742f796</guid>
    <pubDate>Wed, 18 Jun 2008 20:20:00 +0200</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>General</category>
        <category>design</category><category>metaheuristic</category><category>parameter-setting</category><category>performance-assessment</category><category>statistics</category><category>validation</category>    
    <description>    &lt;p&gt;People using metaheuristics often forget that the price to pay for their
ease of adaptation to a new problem is the &lt;strong&gt;hard validation
work&lt;/strong&gt;. There is several things to keep in mind when using a
metaheuristic, especially when one want to &lt;strong&gt;prove&lt;/strong&gt; that they
work &lt;strong&gt;in practice&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;This (kind of) mind map try to list what you should do, and a short set of
main tools to do it. It is not always mandatory to use all the tools, sometimes
it is just a matter of choice (like for the parameter setting), sometimes the
more you do, the better it is (like for performance assessment).&lt;/p&gt;
&lt;p&gt;The graphic has been drawn in SVG, and I have put some references in a very
small font at the bottom of some boxes. Thus, it would be more confortable to
view it in Firefox or in Inkscape, and to zoom where needed. Try the &lt;a href=&quot;http://metah.nojhan.net/public/metaheuristics_doe_en.svg&quot;&gt;SVG version&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://metah.nojhan.net/public/metaheuristics_doe_en.png&quot;&gt;&lt;img src=&quot;http://metah.nojhan.net/public/./.metaheuristics_doe_en_m.jpg&quot; alt=&quot;Metaheuristic design&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2008/06/15/Metaheuristic-validation-in-a-nutshell#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2008/06/15/Metaheuristic-validation-in-a-nutshell#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/251137</wfw:commentRss>
      </item>
    
  <item>
    <title>A chronology of metaheuristics</title>
    <link>http://metah.nojhan.net/post/2008/03/03/A-chronology-of-metaheuristics</link>
    <guid isPermaLink="false">urn:md5:02d438fdedb4d16ac814aa2e81ab694e</guid>
    <pubDate>Mon, 03 Mar 2008 14:33:00 +0100</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>Bibliography</category>
        <category>metaheuristic</category>    
    <description>    &lt;p&gt;At last, I found some time to translate my chronology of metaheuristics I
have made for the french Wikipedia. I put it here for the records, but you will
find a more up-to-date version on the english Wikipedia article about &lt;a href=&quot;http://en.wikipedia.org/wiki/Metaheuristic&quot;&gt;Metaheuristics&lt;/a&gt;.&lt;/p&gt;
&lt;h1&gt;Timeline&lt;/h1&gt;
&lt;img alt=&quot;&quot; src=&quot;http://upload.wikimedia.org/wikipedia/en/timeline/dbe343b7ce1bd1297d5e334e44f59fa7.png&quot; /&gt;&lt;br /&gt;

&lt;br /&gt;
&lt;h1&gt;Detailled chronology&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;1952 : first works on stochastics optimization methods&lt;sup id=&quot;_ref-0&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-0&quot; title=&quot;&quot;&gt;[1]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1954 : Barricelli carry out the firsts simulations of the &lt;a href=&quot;http://metah.nojhan.net/wiki/Evolution&quot; title=&quot;Evolution&quot;&gt;evolution&lt;/a&gt; process and use them on
general optimization problems&lt;sup id=&quot;_ref-1&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-1&quot; title=&quot;&quot;&gt;[2]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1965 : Rechenberg conceives the first algorithm using &lt;strong&gt;&lt;a href=&quot;http://metah.nojhan.net/wiki/Evolution_strategies&quot; class=&quot;mw-redirect&quot; title=&quot;Evolution strategies&quot;&gt;evolution strategies&lt;/a&gt;&lt;/strong&gt;&lt;sup id=&quot;_ref-2&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-2&quot; title=&quot;&quot;&gt;[3]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1966 : Fogel, Owens et Walsh propose &lt;strong&gt;&lt;a href=&quot;http://metah.nojhan.net/wiki/Evolutionary_programming&quot; title=&quot;Evolutionary programming&quot;&gt;evolutionary
programming&lt;/a&gt;&lt;/strong&gt;&lt;sup id=&quot;_ref-3&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-3&quot; title=&quot;&quot;&gt;[4]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1970 : Hastings conceive the &lt;a href=&quot;http://metah.nojhan.net/wiki/Metropolis-Hastings_algorithm&quot; title=&quot;Metropolis-Hastings algorithm&quot;&gt;Metropolis-Hastings algorithm&lt;/a&gt;, which
can sample any &lt;a href=&quot;http://metah.nojhan.net/wiki/Probability_density_function&quot; title=&quot;Probability density function&quot;&gt;probability density function&lt;/a&gt;&lt;sup id=&quot;_ref-4&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-4&quot; title=&quot;&quot;&gt;[5]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1970 : &lt;a href=&quot;http://metah.nojhan.net/wiki/John_Horton_Conway&quot; title=&quot;John Horton Conway&quot;&gt;John
Horton Conway&lt;/a&gt; works on the &lt;a href=&quot;http://metah.nojhan.net/wiki/Game_of_life&quot; class=&quot;mw-redirect&quot; title=&quot;Game of life&quot;&gt;game of life&lt;/a&gt;, the most known &lt;a href=&quot;http://metah.nojhan.net/wiki/Cellular_automata&quot; class=&quot;mw-redirect&quot; title=&quot;Cellular automata&quot;&gt;cellular automata&lt;/a&gt; nowadays.&lt;/li&gt;
&lt;li&gt;1975 : working on cellular automata, &lt;a href=&quot;http://metah.nojhan.net/wiki/John_Holland&quot; title=&quot;John Holland&quot;&gt;John Holland&lt;/a&gt; propose the firsts &lt;strong&gt;&lt;a href=&quot;http://metah.nojhan.net/wiki/Genetic_algorithm&quot; title=&quot;Genetic algorithm&quot;&gt;genetic
algorithms&lt;/a&gt;&lt;/strong&gt;&lt;sup id=&quot;_ref-5&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-5&quot; title=&quot;&quot;&gt;[6]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1980 : Smith come through &lt;a href=&quot;http://metah.nojhan.net/wiki/Genetic_programming&quot; title=&quot;Genetic programming&quot;&gt;genetic programming&lt;/a&gt;&lt;sup id=&quot;_ref-6&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-6&quot; title=&quot;&quot;&gt;[7]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1983 : refering to the work of Hastings, Kirkpatrick, Gelatt and Vecchi
conceive the &lt;strong&gt;&lt;a href=&quot;http://metah.nojhan.net/wiki/Simulated_annealing&quot; title=&quot;Simulated annealing&quot;&gt;simulated annealing&lt;/a&gt;&lt;/strong&gt;&lt;sup id=&quot;_ref-7&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-7&quot; title=&quot;&quot;&gt;[8]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1985 : independently, Černý propose the same algorithm&lt;sup id=&quot;_ref-8&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-8&quot; title=&quot;&quot;&gt;[9]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1986 : the first mention of the term &lt;strong&gt;meta-heuristic&lt;/strong&gt; is
done by &lt;a href=&quot;http://metah.nojhan.net/wiki/Fred_Glover&quot; title=&quot;Fred Glover&quot;&gt;Fred Glover&lt;/a&gt;, during
the conception of &lt;strong&gt;&lt;a href=&quot;http://metah.nojhan.net/wiki/Tabu_search&quot; title=&quot;Tabu search&quot;&gt;tabu
search&lt;/a&gt;&lt;/strong&gt;&lt;sup id=&quot;_ref-9&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-9&quot; title=&quot;&quot;&gt;[10]&lt;/a&gt;&lt;/sup&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;1986 : Farmer, Packard and Perelson work on &lt;strong&gt;&lt;a href=&quot;http://metah.nojhan.net/wiki/Artificial_immune_system&quot; title=&quot;Artificial immune system&quot;&gt;artificial
immune systems&lt;/a&gt;&lt;/strong&gt;&lt;sup id=&quot;_ref-10&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-10&quot; title=&quot;&quot;&gt;[11]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1988 : the first conference on genetic algorithms is organized at the
&lt;a href=&quot;http://metah.nojhan.net/wiki/University_of_Illinois_at_Urbana-Champaign&quot; title=&quot;University of Illinois at Urbana-Champaign&quot;&gt;University of Illinois at
Urbana-Champaign&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;1988 : works on the collective behaviour of ants finds an application in
&lt;a href=&quot;http://metah.nojhan.net/wiki/Artificial_intelligence&quot; title=&quot;Artificial intelligence&quot;&gt;artificial intelligence&lt;/a&gt;&lt;sup id=&quot;_ref-11&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-11&quot; title=&quot;&quot;&gt;[12]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1988 : Koza register his first patent on genetic programming&lt;sup id=&quot;_ref-12&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-12&quot; title=&quot;&quot;&gt;[13]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1989 : Goldberg publish one of the most known book on genetic
algorithms&lt;sup id=&quot;_ref-13&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-13&quot; title=&quot;&quot;&gt;[14]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1989 : &lt;em&gt;Evolver&lt;/em&gt;, the first optimisation software using genetic
algorithm, is released by the &lt;em&gt;Axcelis&lt;/em&gt; company.&lt;/li&gt;
&lt;li&gt;1989 : the term &lt;em&gt;&lt;a href=&quot;http://metah.nojhan.net/wiki/Memetic_algorithm&quot; title=&quot;Memetic algorithm&quot;&gt;memetic algorithm&lt;/a&gt;&lt;/em&gt; appear&lt;sup id=&quot;_ref-14&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-14&quot; title=&quot;&quot;&gt;[15]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1990 : the &lt;strong&gt;&lt;a href=&quot;http://metah.nojhan.net/wiki/Ant_colony_algorithm&quot; class=&quot;mw-redirect&quot; title=&quot;Ant colony algorithm&quot;&gt;ant colony algorithms&lt;/a&gt;&lt;/strong&gt; are proposed by
&lt;a href=&quot;http://metah.nojhan.net/wiki/Marco_Dorigo&quot; title=&quot;Marco Dorigo&quot;&gt;Marco Dorigo&lt;/a&gt;, in its
Ph.D. thesis&lt;sup id=&quot;_ref-15&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-15&quot; title=&quot;&quot;&gt;[16]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1993 : the term &amp;quot;&lt;a href=&quot;http://metah.nojhan.net/wiki/Evolutionary_computation&quot; title=&quot;Evolutionary computation&quot;&gt;evolutionary computation&lt;/a&gt;&amp;quot; is spreading itself,
with the publication of the eponymous journal, published by the &lt;a href=&quot;http://metah.nojhan.net/wiki/Massachusetts_Institute_of_Technology&quot; title=&quot;Massachusetts Institute of Technology&quot;&gt;Massachusetts Institute of
Technology&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;1995 : Feo and Resende propose the &lt;a href=&quot;http://metah.nojhan.net/wiki/Greedy_randomized_adaptive_search_procedure&quot; title=&quot;Greedy randomized adaptive search procedure&quot;&gt;Greedy randomized adaptive search
procedure&lt;/a&gt; (&lt;em&gt;GRASP&lt;/em&gt;)&lt;sup id=&quot;_ref-16&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-16&quot; title=&quot;&quot;&gt;[17]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1995 : Kennedy and Eberhart conceive the &lt;strong&gt;&lt;a href=&quot;http://metah.nojhan.net/wiki/Particle_swarm_optimization&quot; title=&quot;Particle swarm optimization&quot;&gt;particle swarm optimization&lt;/a&gt;&lt;/strong&gt;&lt;sup id=&quot;_ref-17&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-17&quot; title=&quot;&quot;&gt;[18]&lt;/a&gt;&lt;/sup&gt;&lt;sup id=&quot;_ref-18&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-18&quot; title=&quot;&quot;&gt;[19]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1996 : Mühlenbein and Paaß work on &lt;strong&gt;&lt;a href=&quot;http://metah.nojhan.net/wiki/Estimation_of_distribution_algorithm&quot; title=&quot;Estimation of distribution algorithm&quot;&gt;estimation of distribution
algorithms&lt;/a&gt;&lt;/strong&gt;&lt;sup id=&quot;_ref-19&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-19&quot; title=&quot;&quot;&gt;[20]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1997 : Storn and Price propose a &lt;a href=&quot;http://metah.nojhan.net/wiki/Differential_evolution&quot; title=&quot;Differential evolution&quot;&gt;differential evolution&lt;/a&gt; algorithm&lt;sup id=&quot;_ref-20&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-20&quot; title=&quot;&quot;&gt;[21]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1997 : Rubinstein works on the &lt;a href=&quot;http://metah.nojhan.net/wiki/Cross_entropy_method&quot; class=&quot;mw-redirect&quot; title=&quot;Cross entropy method&quot;&gt;cross entropy method&lt;/a&gt;&lt;sup id=&quot;_ref-21&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-21&quot; title=&quot;&quot;&gt;[22]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;1999 : Boettcher propose the &lt;a href=&quot;http://metah.nojhan.net/wiki/Extremal_optimization&quot; title=&quot;Extremal optimization&quot;&gt;extremal optimization&lt;/a&gt;&lt;sup id=&quot;_ref-22&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-22&quot; title=&quot;&quot;&gt;[23]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;li&gt;2000 : firsts interactive genetic algorithms&lt;sup id=&quot;_ref-23&quot; class=&quot;reference&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_note-23&quot; title=&quot;&quot;&gt;[24]&lt;/a&gt;&lt;/sup&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;References&lt;/h1&gt;
&lt;div class=&quot;references-small&quot; style=&quot;-moz-column-count: 2; font-size: 85%&quot;&gt;
&lt;ol class=&quot;references&quot;&gt;
&lt;li id=&quot;_note-0&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-0&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; V. Angel, &lt;em&gt;La rugosité des paysages : une théorie pour
la difficulté des problèmes d’optimisation combinatoire relativement aux
métaheuristiques&lt;/em&gt;, thèse de doctorat de l’université de Paris-Sud, Orsay,
1998.&lt;/li&gt;
&lt;li id=&quot;_note-1&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-1&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; J. Dreo, J.-P. Aumasson, W. Tfaili, P. Siarry, &lt;em&gt;Adaptive
Learning Search, a new tool to help comprehending metaheuristics&lt;/em&gt;, to
appear in the International Journal on Artificial Intelligence Tools.&lt;/li&gt;
&lt;li id=&quot;_note-2&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-2&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; El-Ghazali Talbi, &lt;em&gt;A taxonomy of hybrid metaheuristics&lt;/em&gt;,
Journal of Heuristics, volume 8, &lt;span style=&quot;cursor: help;&quot; title=&quot;numéro&quot;&gt;n&lt;sup class=&quot;exposant&quot;&gt;o&lt;/sup&gt; &lt;/span&gt;2, pages 541-564, septembre
2002&lt;/li&gt;
&lt;li id=&quot;_note-3&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-3&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; &lt;span style=&quot;cursor: help; font-family: monospace; font-weight: bold; font-size: small;&quot; title=&quot;Langue : anglais&quot;&gt;(en)&lt;/span&gt; &lt;a href=&quot;http://www.ntu.edu.sg/home/epnsugan/index_files/CEC-05/Tech-Report-May-30-05.pdf&quot; class=&quot;external text&quot; title=&quot;http://www.ntu.edu.sg/home/epnsugan/index_files/CEC-05/Tech-Report-May-30-05.pdf&quot; rel=&quot;nofollow&quot;&gt;exemples de fonctions de tests&lt;/a&gt; pour métaheuristiques
d’optimisation de problèmes continus.&lt;/li&gt;
&lt;li id=&quot;_note-4&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-4&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; W. Dullaert, M. Sevaux, K. Sörensen et J. Springael,
&lt;em&gt;Applications of metaheuristics&lt;/em&gt;, numéro spécial du &lt;em&gt;European Journal
of Operational Research&lt;/em&gt;, &lt;span style=&quot;cursor: help;&quot; title=&quot;numéro&quot;&gt;n&lt;sup class=&quot;exposant&quot;&gt;o&lt;/sup&gt; &lt;/span&gt;179, 2007.&lt;/li&gt;
&lt;li id=&quot;_note-5&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-5&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; Robbins, H. and Monro, S., &lt;em&gt;A Stochastic Approximation
Method&lt;/em&gt;, Annals of Mathematical Statistics, vol. 22, pp. 400-407, 1951&lt;/li&gt;
&lt;li id=&quot;_note-6&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-6&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; Barricelli, Nils Aall, &lt;em&gt;Esempi numerici di processi di
evoluzione&lt;/em&gt;, Methodos, pp. 45-68, 1954&lt;/li&gt;
&lt;li id=&quot;_note-7&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-7&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; Rechenberg, I., &lt;em&gt;Cybernetic Solution Path of an Experimental
Problem&lt;/em&gt;, Royal Aircraft Establishment Library Translation, 1965&lt;/li&gt;
&lt;li id=&quot;_note-8&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-8&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; Fogel, L., Owens, A.J., Walsh, M.J., &lt;em&gt;Artificial
Intelligence through Simulated Evolution&lt;/em&gt;, Wiley, 1966&lt;/li&gt;
&lt;li id=&quot;_note-9&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-9&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; W.K. Hastings. &lt;em&gt;Monte Carlo Sampling Methods Using Markov
Chains and Their Applications&lt;/em&gt;, Biometrika, volume 57, &lt;span style=&quot;cursor: help;&quot; title=&quot;numéro&quot;&gt;n&lt;sup class=&quot;exposant&quot;&gt;o&lt;/sup&gt; &lt;/span&gt;1,
pages 97-109, 1970&lt;/li&gt;
&lt;li id=&quot;_note-10&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-10&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; Holland, John H., &lt;em&gt;Adaptation in Natural and Artificial
Systems&lt;/em&gt;, University of Michigan Press, Ann Arbor, 1975&lt;/li&gt;
&lt;li id=&quot;_note-11&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-11&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; Smith, S.F., &lt;em&gt;A Learning System Based on Genetic Adaptive
Algorithms&lt;/em&gt;, PhD dissertation (University of Pittsburgh), 1980&lt;/li&gt;
&lt;li id=&quot;_note-12&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-12&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; S. Kirkpatrick, C. D. Gelatt et M. P. Vecchi, &lt;em&gt;Optimization
by Simulated Annealing&lt;/em&gt;, Science, volume 220, &lt;span style=&quot;cursor: help;&quot; title=&quot;numéro&quot;&gt;n&lt;sup class=&quot;exposant&quot;&gt;o&lt;/sup&gt; &lt;/span&gt; 4598, pages 671-680,
1983&lt;/li&gt;
&lt;li id=&quot;_note-13&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-13&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; V. Cerny, &lt;em&gt;A thermodynamical approach to the travelling
salesman problem : an efficient simulation algorithm&lt;/em&gt; Journal of
Optimization Theory and Applications, volume45, pages 41-51, 1985&lt;/li&gt;
&lt;li id=&quot;_note-14&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-14&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; Fred GLover, Future Paths for Integer Programming and Links to
Artificial Intelligence, Comput. &amp;amp; Ops. Res.Vol. 13, No.5, pp. 533-549,
1986&lt;/li&gt;
&lt;li id=&quot;_note-15&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-15&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; J.D. Farmer, N. Packard and A. Perelson, &lt;em&gt;The immune system,
adaptation and machine learning&lt;/em&gt;, Physica D, vol. 22, pp. 187--204,
1986&lt;/li&gt;
&lt;li id=&quot;_note-16&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-16&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; F. Moyson, B. Manderick, &lt;em&gt;The collective behaviour of
Ants : an Example of Self-Organization in Massive Parallelism&lt;/em&gt;, Actes
de AAAI Spring Symposium on Parallel Models of Intelligence, Stanford,
Californie, 1988&lt;/li&gt;
&lt;li id=&quot;_note-17&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-17&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; Koza, John R. &lt;em&gt;Non-Linear Genetic Algorithms for Solving
Problems&lt;/em&gt;. United States Patent 4,935,877. Filed May 20, 1988. Issued June
19, 1990&lt;/li&gt;
&lt;li id=&quot;_note-18&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-18&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; Goldberg, David E., &lt;em&gt;Genetic Algorithms in Search,
Optimization and Machine Learning&lt;/em&gt;, Kluwer Academic Publishers, Boston,
MA., 1989&lt;/li&gt;
&lt;li id=&quot;_note-19&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-19&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; P. Moscato, &lt;em&gt;On Evolution, Search, Optimization, Genetic
Algorithms and Martial Arts : Towards Memetic Algorithms&lt;/em&gt;, Caltech
Concurrent Computation Program, C3P Report 826, 1989.&lt;/li&gt;
&lt;li id=&quot;_note-20&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-20&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; M. Dorigo, &lt;em&gt;Optimization, Learning and Natural
Algorithms&lt;/em&gt;, Thèse de doctorat, Politecnico di Milano, Italie, 1992.&lt;/li&gt;
&lt;li id=&quot;_note-21&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-21&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; Feo, T., Resende, M., &lt;em&gt;Greedy randomized adaptive search
procedure&lt;/em&gt;, Journal of Global Optimization, tome 42, page 32--37, 1992&lt;/li&gt;
&lt;li id=&quot;_note-22&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-22&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; Eberhart, R. C. et Kennedy, J., &lt;em&gt;A new optimizer using
particle swarm theory&lt;/em&gt;, Proceedings of the Sixth International Symposium on
Micromachine and Human Science, Nagoya, Japan. pp. 39-43, 1995&lt;/li&gt;
&lt;li id=&quot;_note-23&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-23&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; Kennedy, J. et Eberhart, R. C., &lt;em&gt;Particle swarm
optimization&lt;/em&gt;, Proceedings of IEEE International Conference on Neural
Networks, Piscataway, NJ. pp. 1942-1948, 1995&lt;/li&gt;
&lt;li id=&quot;_note-24&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-24&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; Mülhenbein, H., Paaß, G., &lt;em&gt;From recombination of genes to
the estimation of distribution I. Binary parameters&lt;/em&gt;, Lectures Notes in
Computer Science 1411: Parallel Problem Solving from Nature, tome PPSN IV,
pages 178--187, 1996&lt;/li&gt;
&lt;li id=&quot;_note-25&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-25&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; Rainer Storn, Kenneth Price, &lt;em&gt;Differential Evolution – A
Simple and Efficient Heuristic for global Optimization over Continuous
Spaces&lt;/em&gt;, Journal of Global Optimization, volume 11, &lt;span style=&quot;cursor: help;&quot; title=&quot;numéro&quot;&gt;n&lt;sup class=&quot;exposant&quot;&gt;o&lt;/sup&gt; &lt;/span&gt;4,
pages 341-359, 1997&lt;/li&gt;
&lt;li id=&quot;_note-26&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-26&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; Rubinstein, R.Y., &lt;em&gt;Optimization of Computer simulation
Models with Rare Events&lt;/em&gt;, European Journal of Operations Research, 99,
89-112, 1997&lt;/li&gt;
&lt;li id=&quot;_note-27&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-27&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; Stefan Boettcher, Allon G. Percus, &amp;quot;Extremal
Optimization : Methods derived from Co-Evolution&amp;quot;, Proceedings of the
Genetic and Evolutionary Computation Conference (1999)&lt;/li&gt;
&lt;li id=&quot;_note-28&quot;&gt;&lt;span class=&quot;renvois_vers_le_texte&quot;&gt;&lt;a href=&quot;http://metah.nojhan.net/post/2008/03/03/#_ref-28&quot; title=&quot;&quot;&gt;↑&lt;/a&gt;&lt;/span&gt; Takagi, H., &lt;em&gt;Active user intervention in an EC Search&lt;/em&gt;,
Proceesings of the JCIS 2000&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2008/03/03/A-chronology-of-metaheuristics#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2008/03/03/A-chronology-of-metaheuristics#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/216275</wfw:commentRss>
      </item>
    
  <item>
    <title>The problem with spreading new metaheuristics</title>
    <link>http://metah.nojhan.net/post/2008/03/03/The-problem-with-spreading-new-metaheuristics</link>
    <guid isPermaLink="false">urn:md5:94643814f4659ec3b7d16d5f92ff77b7</guid>
    <pubDate>Mon, 03 Mar 2008 11:19:00 +0100</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>General</category>
        <category>evolutionary computation</category><category>metaheuristic</category>    
    <description>    &lt;p&gt;&lt;a href=&quot;http://www.blogger.com/profile/16939449739489587189&quot;&gt;Marcelo De
Brito&lt;/a&gt; had interesting thoughts about what he call &lt;a href=&quot;http://geneticargonaut.blogspot.com/2008/02/evolving-grid-computing-optimization.html&quot;&gt;
New Wave Of Genetic Algorithms&lt;/a&gt;. He is surprised that when &amp;quot;evolutionary
computation&amp;quot; is applied to a new problem, the first algorithm used is the good
old canonic genetic algorithm, despite that there exist active researchs on
Estimation of Distribution Algorithms. &lt;a href=&quot;http://www.blogger.com/profile/09333191187316058782&quot;&gt;Julian Togelius&lt;/a&gt; write
that it may be because people does not understand other algorithms, or even
know that anything else exists.&lt;/p&gt;
&lt;p&gt;I think that is definitely true. This subject is a kind of hobby for me.
Indeed, as I have came from ecology to applied mathematics, I feel like a kind
of generalist researcher, not being able to be the best somewhere, but trying
to be as good as possible on several fields. Concerning the field of what
Marcelo called NWOGA, I would like to emphasize some other things.&lt;/p&gt;
&lt;p&gt;As David E. Goldberg say in &lt;a href=&quot;http://entrepreneurialengineer.blogspot.com/2007/05/genetic-algorithm-course-intro-lecture.html&quot;&gt;
its courses&lt;/a&gt;, genetic algorithm is the term everybody use. For specialist, a
GA is just a kind of &amp;quot;evolutionary algorithm&amp;quot;, with specific rules, that are
more defined by &lt;em&gt;history&lt;/em&gt; than by anything else.&lt;/p&gt;
&lt;p&gt;The litterature on evolutionary computation is quite big, the first
algorithm being designed in 1965 (evolutionary strategies, followed by
evolutionary programming in 1966), making it difficult to spread deep changes
on basic concepts.&lt;/p&gt;
&lt;p&gt;There exist a lot more stochastic algorithms for global optimization than
just evolutionary ones. I prefer to call the stochastic metaheuristics, or
simply metaheuristics, because this lead to far less bias than a metaphoric
naming (cf. the previous post on &lt;a href=&quot;http://metah.nojhan.net/post/2007/10/12/Classification-of-metaheuristics&quot;&gt;classification
of metaheuristics&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;For example, during my PhD thesis, I was convinced that some Ant Colony
Optimization algorithms were just equivalent to Estimation of Distribution
Algorithms, when talking about continuous problems. Moreover, I'm now convinced
that a lot of metaheuristics just shares some common stochastic sampling
processes, that are not specifiquely related to evolution. For example,
mathematically, Simulated Annealing is just a kind of EDA using an
approximation of the objective function as a model (or inversely, of
course).&lt;/p&gt;
&lt;p&gt;As Julian says: &lt;q&gt;I know roughly what an EDA does, but I couldn't sit down
an implement one on the spot&lt;/q&gt;. This is, in my humble opinion, one of the
more important thing to keep in mind. Indeed, there exist more and more papers
claming that a correct parameter setting of a metaheuristic can lead to the
performances of any competing metaheuristic.&lt;/p&gt;
&lt;p&gt;Thus, the true discriminatory criterion is not the fantasised intrinsic
capability, but the ease of implementation and parameter setting &lt;em&gt;on a
specific problem&lt;/em&gt;. In other words, choose the algorithm you like, but be
aware that there exists a lot of other ones.&lt;/p&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2008/03/03/The-problem-with-spreading-new-metaheuristics#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2008/03/03/The-problem-with-spreading-new-metaheuristics#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/216199</wfw:commentRss>
      </item>
    
  <item>
    <title>Classification of metaheuristics</title>
    <link>http://metah.nojhan.net/post/2007/10/12/Classification-of-metaheuristics</link>
    <guid isPermaLink="false">urn:md5:0440e5f3c9c2a285347e1289451a673b</guid>
    <pubDate>Fri, 12 Oct 2007 00:00:00 +0200</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>General</category>
        <category>metaheuristic</category>    
    <description>    &lt;p&gt;I eventually find some time to try a graphical representation of how
metaheuristics could be classified.&lt;/p&gt;
&lt;p&gt;Here is a &lt;em&gt;slidified&lt;/em&gt; version, that shows each classes
independently:&lt;/p&gt;
&lt;object type=&quot;application/x-shockwave-flash&quot; data=&quot;http://s3.amazonaws.com/slideshare/ssplayer.swf?id=118457&amp;amp;doc=metaheuristics-classifications1993&quot; height=&quot;348&quot; width=&quot;425&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://s3.amazonaws.com/slideshare/ssplayer.swf?id=118457&amp;amp;doc=metaheuristics-classifications1993&quot; /&gt;&lt;/object&gt;
&lt;p&gt;And a static image version: &lt;a href=&quot;http://nojhan.free.fr/metah/images/metaheuristics_classification.jpeg&quot;&gt;&lt;img src=&quot;http://metah.nojhan.net/metah/images/metaheuristics_classification.TN__jpeg&quot; alt=&quot;Graphical classification of metaheuristics&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Note that some metaheuristics are not completely contained in certains
classes, this indicate that the method could be considered as part of the class
or not, depending on your point of view.&lt;/p&gt;
&lt;p&gt;I have reported the following metaheuristics:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;genetic programming, genetic algorithms, differential evolution,&lt;/li&gt;
&lt;li&gt;evolution strategies,&lt;/li&gt;
&lt;li&gt;estimation of distribution algorithms,&lt;/li&gt;
&lt;li&gt;particle swarm optimization,&lt;/li&gt;
&lt;li&gt;ant colony optimization,&lt;/li&gt;
&lt;li&gt;simulated annealing,&lt;/li&gt;
&lt;li&gt;tabu search,&lt;/li&gt;
&lt;li&gt;GRASP,&lt;/li&gt;
&lt;li&gt;variable neighborhood search,&lt;/li&gt;
&lt;li&gt;iterated, stochastic and guided local search.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;And the following classes :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;metaheurisitcs &lt;em&gt;vs&lt;/em&gt; local search,&lt;/li&gt;
&lt;li&gt;population metaheuristics &lt;em&gt;vs&lt;/em&gt; trajectory-based ones,&lt;/li&gt;
&lt;li&gt;evolutionary computation or not,&lt;/li&gt;
&lt;li&gt;nature-inspired methods or not,&lt;/li&gt;
&lt;li&gt;dynamic objective function &lt;em&gt;vs&lt;/em&gt; static ones,&lt;/li&gt;
&lt;li&gt;memory-based algorithms &lt;em&gt;vs&lt;/em&gt; memory-less,&lt;/li&gt;
&lt;li&gt;implicit, explicit or direct metaheuristics.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I proposed the last class, so that it may not be well-known. You will find
more informations about it in the following paper: &lt;em&gt;&lt;a href=&quot;http://www.nojhan.net/pro/spip.php?article19&quot; hreflang=&quot;en&quot;&gt;Adaptive Learning
Search, a new tool to help comprehending metaheuristics&lt;/a&gt;, J. Dreo, J.-P.
Aumasson, W. Tfaili, P. Siarry, International Journal on Artificial
Intelligence Tools, Vol. 16, No. 3.. - 1 June 2007&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I didn't placed a &lt;em&gt;stochastic&lt;/em&gt; category, as it seems a bit difficult
to represent graphically. Indeed, a lot of methods could be &amp;quot;stochasticized&amp;quot; or
&amp;quot;derandomized&amp;quot; in several ways.&lt;/p&gt;
&lt;p&gt;There is surely several lacks or errors, feel free to give your point of
view with a trackback, an email or by modifying the SVG source version
(comments are disabled due to spam that I didn't have time to fight
accurately).&lt;/p&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2007/10/12/Classification-of-metaheuristics#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2007/10/12/Classification-of-metaheuristics#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/188141</wfw:commentRss>
      </item>
    
  <item>
    <title>Hybridization : estimation of distribution as a meta-model filter generator for metaheuristics ?</title>
    <link>http://metah.nojhan.net/post/2007/07/27/Hybridization-%3A-estimation-of-distribution-as-a-meta-model-filter-generator-for-metaheuristics</link>
    <guid isPermaLink="false">urn:md5:4137438ac93f0a4807a99223b387a73f</guid>
    <pubDate>Fri, 27 Jul 2007 00:00:00 +0200</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>General</category>
        <category>estimation of distribution</category><category>machine learning</category>    
    <description>    &lt;p&gt;An interesting idea is to use meta-model (a priori representation of the
problem) as a filter to bias the sample produced by metaheuristics. This
approach seems especially promising for engineering problem, where computing
the objective function is very expensive.&lt;/p&gt;
&lt;p&gt;One simple form of meta-model is a probability density function,
approximating the shape of the objective function. This PDF could thus be used
to filter out bad points &lt;em&gt;before&lt;/em&gt; evaluation.&lt;/p&gt;
&lt;p&gt;Why, then, do not directly use EDA to generate the sample ? Because one can
imagine that the problem shape is not well known, and that using a complex PDF
is impossible (too expensive to compute, for example). Then, using a classical
indirect metaheuristic (let say an evolutionary algorithm) should be preferable
(computationnaly inexpensive) for the sample generation. If one know a good
approximation to use for the distribution of the EDA (not too computationnaly
expensive), one can imagine using the best part of the two worlds.&lt;/p&gt;
&lt;p&gt;An example could be a problem with real variable : using an EDA with a
multi-variate normal distribution is computationnaly expensive (due to the
estimation of the co-variance, mainly), and using a mixture of gaussian kernels
makes difficult to have an &lt;em&gt;a priori&lt;/em&gt; on the problem. Thus, why not
using a indirect metaheuristic to handle the sample generation, and use a
meta-model which parameters are estimated from the previous sample, according
to a chosen distribution ?&lt;/p&gt;
&lt;p&gt;One more hybridization to try...&lt;/p&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2007/07/27/Hybridization-%3A-estimation-of-distribution-as-a-meta-model-filter-generator-for-metaheuristics#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2007/07/27/Hybridization-%3A-estimation-of-distribution-as-a-meta-model-filter-generator-for-metaheuristics#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/188131</wfw:commentRss>
      </item>
    
  <item>
    <title>Error metrics</title>
    <link>http://metah.nojhan.net/post/2007/07/05/Error-metrics</link>
    <guid isPermaLink="false">urn:md5:5b605b43941038b046f78b32101b002d</guid>
    <pubDate>Thu, 05 Jul 2007 00:00:00 +0200</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>General</category>
        <category>performance assessment</category>    
    <description>    &lt;p&gt;Many metrics are used to assess the quality of approximation found by
metaheuristics. Two of them are used really often: distance to the true optimum
according to its &lt;em&gt;position&lt;/em&gt; and to its &lt;em&gt;value&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Unfortunately, the objective function's shape can vary a lot in real-world
problem, making these metrics difficult to interpret. For example, if the
optimum is in a very deep valley (in value), a solution close to it in position
may not signifiate that the algorithm have well learn the shape of it.
Inversely, a solution close to an optimum in value may not signifiate that it
is in the same valley.&lt;/p&gt;
&lt;p&gt;One metric that can counter thse drawbacks is a distance taking into account
the parameters of the problem as well as the value dimension.&lt;/p&gt;
&lt;p&gt;Anyway, the question of the type of distance to use is dependent of the
problem.&lt;/p&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2007/07/05/Error-metrics#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2007/07/05/Error-metrics#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/188132</wfw:commentRss>
      </item>
    
  <item>
    <title>Random draw in a sphere</title>
    <link>http://metah.nojhan.net/post/2007/03/28/Random-draw-in-a-sphere</link>
    <guid isPermaLink="false">urn:md5:aba37017bfe4271882efdbe17c0b6617</guid>
    <pubDate>Wed, 28 Mar 2007 00:00:00 +0200</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>General</category>
        <category>statistics</category>    
    <description>    &lt;p&gt;When adapting combinatorial metaheuristics to continuous problems, one
sometimes use a sphere as an approximation of the &amp;quot;neighborhood&amp;quot;. The idea is
thus to draw the neighbours around a solution, for example in order to apply a
simple mutation in a genetic algorithm.&lt;/p&gt;
&lt;p&gt;Sometimes, one choose to use an uniform law, but how to draw random vectors
&lt;em&gt;uniformly&lt;/em&gt; in an hyper-sphere ?&lt;/p&gt;
&lt;p&gt;The first idea that comes to mind is to use a polar coordinate system and
draw the radius &lt;em&gt;r&lt;/em&gt; and the angles
&lt;em&gt;a&lt;sub&gt;1&lt;/sub&gt;...a&lt;sub&gt;2&lt;/sub&gt;...a&lt;sub&gt;i&lt;/sub&gt;...a&lt;sub&gt;N&lt;/sub&gt;&lt;/em&gt; with a
uniform law. Then, one convert the coordinates in the rectangular system,
&lt;em&gt;x&lt;sub&gt;1&lt;/sub&gt;...x&lt;sub&gt;2&lt;/sub&gt;...x&lt;sub&gt;i&lt;/sub&gt;...x&lt;sub&gt;N&lt;/sub&gt;&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;The result is interesting for a metaheuristic design, but is not a uniform
distribution:&lt;/p&gt;
&amp;lt;img src=&amp;quot;/public/randHS_false.png&amp;quot; /&amp;gt;
&lt;p&gt;The correct method is to draw each &lt;em&gt;x&lt;sub&gt;i&lt;/sub&gt;&lt;/em&gt; according to:
&lt;em&gt;x&lt;sub&gt;i&lt;/sub&gt;=(r&lt;sub&gt;i&lt;/sub&gt;&lt;sup&gt;1/N&lt;/sup&gt;a&lt;sub&gt;i&lt;/sub&gt;)/√(∑(a&lt;sub&gt;i&lt;/sub&gt;))&lt;/em&gt;&lt;br /&gt;

(in L&lt;sup&gt;A&lt;/sup&gt;T&lt;sub&gt;E&lt;/sub&gt;X : &lt;code&gt;$x_{i}=\frac{r^{\frac{1}{N}}_i\cdot
a_{i}}{\sqrt{{\displaystyle \sum _{j=1}^{N}a_{i}}}}$&lt;/code&gt;)&lt;/p&gt;
&lt;p&gt;With &lt;em&gt;r&lt;sub&gt;i&lt;/sub&gt;&lt;/em&gt; uniformly drawn in &lt;em&gt;U&lt;sub&gt;0,1&lt;/sub&gt;&lt;/em&gt; and
&lt;em&gt;a&lt;/em&gt; following a normal law &lt;em&gt;N&lt;sub&gt;O,1&lt;/sub&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The result is then a true uniform distribution:&lt;/p&gt;
&lt;img alt=&quot;&quot; src=&quot;http://metah.nojhan.net/public/randHS_ok.png&quot; /&gt;&amp;lt;img src=&amp;quot;/public/randHS_ok.png
/&amp;gt;&lt;br /&gt;
&lt;p&gt;Credits goes to &lt;a href=&quot;http://www.mauriceclerc.net/&quot;&gt;Maurice Clerc&lt;/a&gt; for
detecting and solving the problem.&lt;/p&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2007/03/28/Random-draw-in-a-sphere#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2007/03/28/Random-draw-in-a-sphere#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/188128</wfw:commentRss>
      </item>
    
  <item>
    <title>Evolving Objects 1.0 is out</title>
    <link>http://metah.nojhan.net/post/2007/01/07/Evolving-Objects-10-is-out</link>
    <guid isPermaLink="false">urn:md5:331cfa3a698c46cdb9e4b6418acd76d2</guid>
    <pubDate>Sun, 07 Jan 2007 00:00:00 +0100</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>Programming</category>
        <category>C plus plus</category><category>evolutionary computation</category>    
    <description>    &lt;p&gt;The EO framework has just reached &lt;a href=&quot;http://sourceforge.net/project/showfiles.php?group_id=9775&quot; hreflang=&quot;en&quot;&gt;the
1.0 version&lt;/a&gt;. This is one of the most interesting library for
metaheuristics.&lt;/p&gt;
&lt;p&gt;It is a templatized C++ framework, with a component based architecture. EO
is focused on &amp;quot;evolutionary computing&amp;quot; (a synonym of metaheuristics, imho) and
can be used for any population-base metaheuristics. There exists versions for
local searches, multi-objective optimization or parallel architectures... a
real good piece of software :-)&lt;/p&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2007/01/07/Evolving-Objects-10-is-out#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2007/01/07/Evolving-Objects-10-is-out#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/188127</wfw:commentRss>
      </item>
    
  <item>
    <title>Random and learning</title>
    <link>http://metah.nojhan.net/post/2006/12/21/Random-and-learning</link>
    <guid isPermaLink="false">urn:md5:6925d6670a20503fbc14021221a84028</guid>
    <pubDate>Thu, 21 Dec 2006 00:00:00 +0100</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>General</category>
        <category>machine learning</category>    
    <description>    &lt;p&gt;The &lt;em&gt;&lt;a href=&quot;http://hunch.net/&quot; hreflang=&quot;en&quot;&gt;Machine Learning
(Theory)&lt;/a&gt;&lt;/em&gt; blog, by &lt;a href=&quot;http://hunch.net/~jl/&quot; hreflang=&quot;en&quot;&gt;John
Langford&lt;/a&gt;, has a very intersting post on &amp;quot;&lt;a href=&quot;http://hunch.net/wp-trackback.php?p=239&quot; hreflang=&quot;en&quot;&gt;Explicit Randomization
in Learning algorithms&lt;/a&gt;&amp;quot;.&lt;/p&gt;
&lt;p&gt;The post and its comments are talking about machine-learning, but can
largely be applied to metaheuristics. The page is listing several reason for
using randomization, from which some are of special intersts for
metaheuristics:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;symmetry breaking as a way to make decision, which is of great importance
for metaheuristics, which must learn and choose where are the &amp;quot;promising
regions&amp;quot;;&lt;/li&gt;
&lt;li&gt;overfit avoidance, which is related to the intensification/diversification
balance problem;&lt;/li&gt;
&lt;li&gt;adversary defeating and bias suppression, which can be interpreted as
trying to design a true &lt;em&gt;meta&lt;/em&gt;-heuristic (i.e. that can be applied on
several problems without major changes).&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Of course, it should be possible to design a completely deterministic
algorithm that takes decisions, achieve a correct i/d balance and can tackle
all problems... Even if this force to integrate the problems themselves in the
algorithm, it &lt;em&gt;should&lt;/em&gt; be possible. The drawback is that it is
computationally intractable.&lt;/p&gt;
&lt;p&gt;In fact, metaheuristics (and, as far as I understand, machine-learning
algorithms) are located somewhere between random search algorithms and
deterministic ones. The compromise between these two tendencies is dependent of
the problem and of the offered computational effort.&lt;/p&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2006/12/21/Random-and-learning#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2006/12/21/Random-and-learning#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/188126</wfw:commentRss>
      </item>
    
  <item>
    <title>Metaheuristics and machine-learning</title>
    <link>http://metah.nojhan.net/post/2006/12/19/Metaheuristics-and-machine-learning</link>
    <guid isPermaLink="false">urn:md5:6a9a108df90979ccc7d46e7b1cf8dcd6</guid>
    <pubDate>Tue, 19 Dec 2006 00:00:00 +0100</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>General</category>
        <category>evolutionary computation</category><category>machine learning</category><category>simulated annealing</category>    
    <description>    &lt;p&gt;Metaheuristics and machine-learning algorithms shares a large number of
characteristics, like stochastic processes, manipulaton of probability density
functions, etc.&lt;/p&gt;
&lt;p&gt;One of the interesting evolution of the research on metaheuristics these
years is the increasing bridge-building with machine-learning. I see at least
two interesting pathways: the use of metaheuristics in machine-learning and the
use of machine-learning in metaheuristics.&lt;/p&gt;
&lt;p&gt;The first point is not really new, machine-learning heavily use
optimization, and it was natural to try stochastic algorithms where local
search or exact algorithms failed. Nevertheless, there is now a sufficient
litterature to organize some special sessions in some symposium. For 2007,
there will be a &lt;em&gt;&lt;a href=&quot;http://seal.tst.adfa.edu.au/~alar/gbml2007/&quot; hreflang=&quot;en&quot;&gt;special session on Genetics-Based Machine Learning&lt;/a&gt;&lt;/em&gt; at
CEC, and a &lt;em&gt;&lt;a href=&quot;http://www.sigevo.org/gecco-2007/organizers-tracks.html&quot; hreflang=&quot;en&quot;&gt;track
on Genetics-Based Machine Learning and Learning Classifier Systems&lt;/a&gt;&lt;/em&gt; at
GECCO. These events are centered around &amp;quot;genetic&amp;quot; algortihm (see the posts on
the IlliGAL blog : &lt;a href=&quot;http://www-illigal.ge.uiuc.edu/system/components/com_jd-wp/wp-trackback.php?p=745&quot; hreflang=&quot;en&quot;&gt;1&lt;/a&gt;, &lt;a href=&quot;http://www-illigal.ge.uiuc.edu/system/components/com_jd-wp/wp-trackback.php?p=746&quot; hreflang=&quot;en&quot;&gt;2&lt;/a&gt;), despite the fact that there are several papers using
other metaheuritics, like simulated annealing, but this is a common drawback,
and does not affect the interest of the subject.&lt;/p&gt;
&lt;p&gt;The second point is less exploited, but I find it of great interest. A
simple example of what can be done with machine-learning inside metaheuristic
can be shown with estimation of distribution algorithms. In these
metaheuristics, a probability density function is used to explicitely build a
new sample of the objective function (a &amp;quot;population&amp;quot;, in the evolutionary
computation terminology) at each iteration. It is then crucial to build a
probability density function that is related to the structure of the objective
function (the &amp;quot;fitness landscape&amp;quot;). There, it should be really interesting to
build the model of the pdf itself from a selected sample, using a
machine-learning algorithm. There is some interesting papers talking about
that.&lt;/p&gt;
&lt;p&gt;If you mix these approaches with the problem of estimating a Boltzmann
distribution (the basis of simulated annealing), you should have an awesome
research field...&lt;/p&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2006/12/19/Metaheuristics-and-machine-learning#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2006/12/19/Metaheuristics-and-machine-learning#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/188123</wfw:commentRss>
      </item>
    
  <item>
    <title>Metaheuristics and experimental research</title>
    <link>http://metah.nojhan.net/post/2006/12/10/Metaheuristics-and-experimental-research</link>
    <guid isPermaLink="false">urn:md5:791721d7bcb3baa498d1430e63b6c546</guid>
    <pubDate>Sun, 10 Dec 2006 00:00:00 +0100</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>General</category>
        <category>evolutionary computation</category><category>performance assessment</category>    
    <description>    &lt;p&gt;Springer has just published a book on &amp;quot;&lt;a href=&quot;http://www.springer.com/east/home/computer/foundations?SGWID=5-156-22-142872140-detailsPage=ppmmedia&quot; hreflang=&quot;en&quot;&gt;Experimental Research in Evolutionary Computation&lt;/a&gt;&amp;quot;, written
by &lt;a href=&quot;http://ls11-www.cs.uni-dortmund.de/people/tom/&quot; hreflang=&quot;en&quot;&gt;Thomas Bartz-Beielstein&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Thomas Bartz-Beielstein is working on the statistical analysis of the
behaviour of metaheuristics (see &lt;a href=&quot;http://ls11-www.cs.uni-dortmund.de/people/tom/#Talks_and_Tutorials&quot; hreflang=&quot;en&quot;&gt;its tutorials&lt;/a&gt; at GECCO and CEC), and the publication of its book is a
really great thing. I haven't read it yet, but the table of content seems
really promising. There is a true need for such work in the metaheuristics
community, and in stochastic optimization in general.&lt;/p&gt;
&lt;p&gt;A friend said to me that the lack of experimental culture in the computer
science community was a form of consensus, perhaps because theoretical aspects
of mathematics was the &amp;quot;only way to make true science&amp;quot;. This is a true problem
when you deal with stochastic algorithm, applied to real world problem. Despite
the fact that several papers early call for more rigourous experimental studies
of metaheuristcs (&lt;a href=&quot;http://mistic.heig-vd.ch/taillard/&quot; hreflang=&quot;en&quot;&gt;E.D. Taillard&lt;/a&gt; has written papers on this problem several years ago,
for example), the community does not seems to quickly react.&lt;/p&gt;
&lt;p&gt;Yet, things are changing, after the series of CEC special sessions on
benchmark for metaheuristics, there is more and more papers on how to test
stochastic optimization algorithms and outline the results. I think this book
is coming timely... the next step will be to promote the dissemination of the
results data (and code!), in an open format, along with the papers.&lt;/p&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2006/12/10/Metaheuristics-and-experimental-research#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2006/12/10/Metaheuristics-and-experimental-research#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/188125</wfw:commentRss>
      </item>
    
  <item>
    <title>Frameworks for metaheuristics</title>
    <link>http://metah.nojhan.net/post/2007/12/23/Frameworks-for-metaheuristics</link>
    <guid isPermaLink="false">urn:md5:006d7f5102dcb2319c274bcc3da1dc32</guid>
    <pubDate>Sat, 28 Oct 2006 06:34:00 +0200</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>Programming</category>
        <category>C</category><category>C plus plus</category><category>java</category><category>python</category>    
    <description>    &lt;p&gt;Note that descriptions are picked up from the web sites of the projects.&lt;/p&gt;
&lt;p&gt;As one can see, most of these softwares are designed for evolutionnary
algorithms, but I recommend you to try out some of the generic frameworks,
because &amp;quot;genetic&amp;quot; algorithms are not always the best choice for solving an
optimization problem, despite their wide spread.&lt;/p&gt;
&lt;p&gt;Here are the frameworks I would recommend. These frameworks are free
softwares, you can use, look at the code, modify it and redistribute it
(precious qualities for frameworks).&lt;/p&gt;
&lt;p&gt;I would also recommend C or &lt;code&gt;C++&lt;/code&gt;, which permits to implement
fast programs, while using object oriented programming. C++ compilers are also
available for a large choice of plateforms (with a special distinction for GCC,
which is free software). A fast progam is crucial for testing algorithms on
real problems and using a well-known langage is a good idea.&lt;/p&gt;
&lt;p&gt;The main idea beside the design of the framework is specified as one of the
following keywords:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;em&gt;template&lt;/em&gt;: design a new algorithm concist in extending a base
class, perhaps the simple object model to understand, but it can be difficult
to re-use existing code.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;component&lt;/em&gt;: design a new algorithm concist in select its component
from availables operators, make it easy to implement algorithms, but it can be
quite difficult to understand the underlying model. It can be hard to add new
algorithm paradigm (generaly used for evolutionnary algorithms).&lt;/li&gt;
&lt;li&gt;&lt;em&gt;function&lt;/em&gt;: design a new algorithm concist in use the framework's
primitives. Simple to understand, but one must learn the primitives to use and
code a lot of stuff.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Favorites&lt;/h3&gt;
&lt;p&gt;Here is my list :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://ometah.berlios.de&quot;&gt;Open Metaheuristics&lt;/a&gt;: a library aimed
at the conception of metaheuristics (i.e. genetic/evolutionnary algorithms,
tabu search, simulated annealing, ant colony algorithms, etc.). One of the main
goal of oMetah is to permit rigourous empirical tests of metaheuristics,
through a statistical approach. (&lt;strong&gt;C++, LGPL&lt;/strong&gt;, template)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.lifl.fr/~cahon/paradisEO/&quot;&gt;*EO&lt;/a&gt;: a set of
paradigm-free Evolutionary Computation libraries dedicated to the flexible
design of EAs through evolving objects superseding the most common dialects
(Genetic Algorithms, Evolution Strategies, Evolutionary Programming and Genetic
Programming). (&lt;strong&gt;C++, GPL&lt;/strong&gt;, component)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://sferes.lip6.fr/&quot;&gt;Sferes&lt;/a&gt;: a framework that gathers an
evolution framework with a simulation framework. It is dedicated to experiments
involving the design of artificial agents through artificial evolutionary
algorithms, like Genetic Algorithms or Evolution Strategies. (&lt;strong&gt;C++,
CeCILL&lt;/strong&gt;, component)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://beagle.gel.ulaval.ca/&quot;&gt;openBEAGLE&lt;/a&gt;: Evolutionary
Computation (EC) framework. (&lt;strong&gt;C++, LGPL&lt;/strong&gt;, component).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.tik.ee.ethz.ch/pisa/&quot;&gt;PISA&lt;/a&gt;: Platform and
Programming Language Independent Interface for Search Algorithms. PISA is
mainly dedicated to multi-objective search, where the optimization problem is
characterized by a set of conflicting goals and not just one criterion that
needs to be optimized. (&lt;strong&gt;C, BSD&lt;/strong&gt;, function)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://lancet.mit.edu/ga&quot;&gt;GAlib&lt;/a&gt;: defines classes for using
genetic algorithms to do optimization in any &lt;code&gt;C++&lt;/code&gt; program using any
representation and genetic operators. The distribution includes extensive
documentation and many examples.. (&lt;strong&gt;C++, MIT&lt;/strong&gt;, component)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www-idss.cs.put.poznan.pl/~jaszkiewicz/MOMHLib&quot;&gt;MOMHLib++&lt;/a&gt;: a
library of &lt;code&gt;C++&lt;/code&gt; classes that implements a number of multiple
objective metaheuristics. It has been developed on the basis of former
implementations of Pareto simulated annealing (PSA) and multiple objective
genetic local search (MOGLS). (&lt;strong&gt;C++, GPL&lt;/strong&gt;, template).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://cs.gmu.edu/~eclab/projects/ecj/&quot;&gt;ECJ&lt;/a&gt; Java Evolutionary
Computation Research System. (&lt;strong&gt;Java, AFL&lt;/strong&gt;, component)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Other&lt;/h3&gt;
&lt;p&gt;These frameworks are not those which I would recommend, but they have some
properties that could be intersting :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://pygp.sourceforge.net/&quot;&gt;Python Genetic Programming
Project&lt;/a&gt;: implements a Genetic Programming System in Python.
(&lt;strong&gt;Python, GPL&lt;/strong&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.heuristiclab.com/&quot;&gt;HeuristicLab&lt;/a&gt;: A
Paradigm-Independent and Extensible Environment for Heuristic Optimization.
(&lt;strong&gt;C#/.NET, Proprietary&lt;/strong&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you want to find out more and more frameworks, try searching &lt;a href=&quot;http://sourceforge.net/search/index.php?words=genetic&amp;amp;sort=score&amp;amp;sortdir=desc&amp;amp;offset=20&amp;amp;type_of_search=soft&quot;&gt;
&amp;quot;genetic&amp;quot; on source forge&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Many of these projects are dead, be carefull if you need a maintained
framework. Take a close look to the project activity, generally, the number of
developers and file releases give you a good idea of the framework vitality.
Also check if it is a student's project for a training course or if it is made
by professional researchers.&lt;/p&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2007/12/23/Frameworks-for-metaheuristics#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2007/12/23/Frameworks-for-metaheuristics#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/188121</wfw:commentRss>
      </item>
    
  <item>
    <title>Confirmation of the biological foundations of particle swarm optimization</title>
    <link>http://metah.nojhan.net/post/2006/09/10/Confirmation-of-the-biological-foundations-of-particle-swarm-optimization</link>
    <guid isPermaLink="false">urn:md5:6b48f88f551c952ea90889456ca73b10</guid>
    <pubDate>Sun, 10 Sep 2006 00:00:00 +0200</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>Anecdotal</category>
        <category>particle swarm optimization</category><category>self-organization</category><category>swarm intelligence</category>    
    <description>    &lt;p&gt;&amp;lt;p&amp;gt;Particle swarm optimization (PSO) is based on biological (and
theorical physic) work concerning self-organizaton in animals groups. Up to
now, theory explained that animals must adjust their direction in order to set
up a group. PSO use this concept to build a set of vectors that will exlpore
the search space of an optimization problem, while converging on an
optimum.&amp;lt;/p&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;lt;p&amp;gt;One key prediction of the theory is a transition between the
recruitment of the individuals and the collective motion. This transition &amp;quot;from
disorder to order&amp;quot; has been proved &amp;lt;em&amp;gt;in situ&amp;lt;/em&amp;gt; by biologists,
while studying locusts. They have filmed during 8 hours a group of 5 to 120
desert locusts, in a circular cockpit, and analysed the motions datas. The
study shows that, at low density (under 25
individuals/m&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;), the animals moves independently. When
reaching 25 to 60 locusts/m&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;, they form collective
groups, which direction can vary abruptly. Beyond 75
locusts/m&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;, the coordinated marching is
homogen.&amp;lt;/p&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;lt;p&amp;gt;While this should not change the use of PSO, which is a simplified
model, it is always interesting to consider works talking about this transition
between order and chaos, in self-organized systems. Indeed, this transition can
also occurs in metaheuristics, and is perhaps interesting for further research,
like in dynamical optimization.&amp;lt;/p&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;lt;p&amp;gt;&amp;lt;em&amp;gt;&amp;lt;a
href=&amp;quot;http://www.sciencemag.org/cgi/content/abstract/312/5778/1402&amp;quot;
hreflang=&amp;quot;en&amp;quot;&amp;gt;From Disorder to Order in Marching
Locusts&amp;lt;/a&amp;gt;&amp;lt;/em&amp;gt;, Buhl &amp;lt;em&amp;gt;et al.&amp;lt;/em&amp;gt;, Science, Vol.
312. no. 5778, pp. 1402 - 1406, 2 june 2006.&amp;lt;/p&amp;gt;&lt;/p&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2006/09/10/Confirmation-of-the-biological-foundations-of-particle-swarm-optimization#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2006/09/10/Confirmation-of-the-biological-foundations-of-particle-swarm-optimization#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/188120</wfw:commentRss>
      </item>
    
  <item>
    <title>Finding references about metaheuristics (and computer science)</title>
    <link>http://metah.nojhan.net/post/2006/09/01/Finding-references-about-metaheuristics-and-computer-science</link>
    <guid isPermaLink="false">urn:md5:d53608ba16779b1069bf7736c452c4e7</guid>
    <pubDate>Fri, 01 Sep 2006 00:00:00 +0200</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>Bibliography</category>
            
    <description>    &lt;p&gt;The Internet is rapidly becoming the first place to search for scientific
papers. But the number of places gathering ressources becomes really high. Here
is a list of web sites with &lt;em&gt;free access&lt;/em&gt;. These are places where you
can find some stuff about metaheuristics, I have not include all the available
databases (nor journals web pages), despite the fact that metaheuristics are
often apply to a wide range of fields.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Online collective bibliography managers are really usefull for picking
references when surfing on journal sites, they permits to automatically gather
the reference's informations, tag them, share your list with others and export
it in your local reference manager.
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.citeulike.org&quot;&gt;CiteUlike&lt;/a&gt;: really intersting for
computer science, see &lt;a href=&quot;http://www.citeulike.org/user/nojhan&quot;&gt;my user
page&lt;/a&gt;, the &lt;a href=&quot;http://fr.citeulike.org/group/Metaheuristics&quot;&gt;metaheuristics group&lt;/a&gt;, the
&lt;a href=&quot;http://fr.citeulike.org/group/EvolutionaryComputation&quot;&gt;evolutionary
computation group&lt;/a&gt; and the &lt;a href=&quot;http://fr.citeulike.org/group/Optimization&quot;&gt;optimization group&lt;/a&gt;. With
watchlist and syndication based on RSS.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.connotea.org/&quot;&gt;Connotea&lt;/a&gt;, more aim at clinicians and
biologist.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;digital libraries or paper databases:
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://citeseer.ist.psu.edu/&quot;&gt;CiteSeer&lt;/a&gt;, search for citations
and papers, show citations inside each papers, permits corrections on items,
really interesting for computer science.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.sciencedirect.com/science/search/database/navigator&quot;&gt;ScienceDirect&lt;/a&gt;,
database, require registration, make available a watchlist based on email
alerts.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://arxiv.org/&quot;&gt;arXiv&lt;/a&gt;, an e-print service, well formated
ressources, RSS syndication.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.springerlink.com&quot;&gt;Springer Links&lt;/a&gt;, books &amp;amp;
papers database, RSS syndication, watchlist for registered users.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://portal.acm.org/portal.cfm&quot;&gt;ACM portal&lt;/a&gt;, digital library,
no syndication or free watchlist for registered users.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://ieeexplore.ieee.org&quot;&gt;IEEE Xplore&lt;/a&gt;, database, no
syndication, no watchlist, email alerts at field level only.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://liinwww.ira.uka.de/bibliography/&quot;&gt;The Collection of
Computer Science Bibliographies&lt;/a&gt;, database, RSS syndication.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?db=PubMed&quot;&gt;PubMed&lt;/a&gt;, database,
emails alerts for registered users.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.blackwell-synergy.com/&quot;&gt;Backwell Synergy&lt;/a&gt;, database,
RSS/Atom syndication, email alerts.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.optimization-online.org/&quot;&gt;Optimization Online&lt;/a&gt;,
e-print about optimization, monthly email alerts.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://scitation.aip.org/&quot;&gt;Scitation&lt;/a&gt;, database, no
syndication, no free email alerts.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www3.interscience.wiley.com&quot;&gt;Wiley InterScience&lt;/a&gt;,
database, no syndication, emails alerts for registerd users.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;generalistic search-engines:
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.scirus.com/srsapp/&quot;&gt;Scirus&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://scholar.google.com/&quot;&gt;Google Scholar&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2006/09/01/Finding-references-about-metaheuristics-and-computer-science#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2006/09/01/Finding-references-about-metaheuristics-and-computer-science#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/188119</wfw:commentRss>
      </item>
    
  <item>
    <title>Metaheuristics &amp; benchmarks at CEC</title>
    <link>http://metah.nojhan.net/post/2006/08/30/Metaheuristics-benchmarks-at-CEC</link>
    <guid isPermaLink="false">urn:md5:44c681380254e6b9e91d05c4a9c6f018</guid>
    <pubDate>Wed, 30 Aug 2006 00:00:00 +0200</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>General</category>
        <category>benchmark</category><category>performance assessment</category>    
    <description>    &lt;p&gt;The IEEE Congress on Evolutionary Computation (CEC) is a well-known event
that take place every year.&lt;/p&gt;
&lt;p&gt;Since 2005, there is an interesting group of special sessions, organized by
&lt;a href=&quot;http://www.ntu.edu.sg/home/EPNSugan/&quot;&gt;Ponnuthurai Nagaratnam
Suganthan&lt;/a&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;2005, &lt;a href=&quot;http://www.ntu.edu.sg/home/EPNSugan/index_files/CEC-05/CEC05.htm&quot;&gt;Real-Parameter
Optimization&lt;/a&gt;,&lt;/li&gt;
&lt;li&gt;2006, &lt;a href=&quot;http://www.ntu.edu.sg/home/EPNSugan/index_files/CEC-06/CEC06.htm&quot;&gt;Constrained
Real-Parameter Optimization&lt;/a&gt;,&lt;/li&gt;
&lt;li&gt;2007, &lt;a href=&quot;http://www.ntu.edu.sg/home/EPNSugan/index_files/CEC-07/CEC07.htm&quot;&gt;Performance
Assessment of Multi-Objective Optimization Algorithms&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;What is really interesting in these sessions is the systematic presence of
an &lt;em&gt;implemented&lt;/em&gt; generalistic benchmark, built after discussion between
researchers.&lt;/p&gt;
&lt;p&gt;This is an extremely necessary practice, which is, unfortunately, not
generalized. Indeed, this is the first step toward a rigourous performance
assessment of metaheuristics (the second one being a true statistical approach,
and the third one a considered data presentation).&lt;/p&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2006/08/30/Metaheuristics-benchmarks-at-CEC#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2006/08/30/Metaheuristics-benchmarks-at-CEC#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/188118</wfw:commentRss>
      </item>
    
  <item>
    <title>Some blogs about metaheuristics</title>
    <link>http://metah.nojhan.net/post/2006/08/25/Some-blogs-about-metaheuristics</link>
    <guid isPermaLink="false">urn:md5:4e951bf801c3c8b98aaf436daac50ebc</guid>
    <pubDate>Fri, 25 Aug 2006 00:00:00 +0200</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>Web stuff</category>
            
    <description>    &lt;p&gt;As this blog is just starting, I have searched some peoples talking about
metaheuristics, and found some that are really interesting.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://illigal.blogspot.com/&quot;&gt;IlliGAL Blogging&lt;/a&gt;: the blog of
David E. Goldberg... well, he is a great researcher and everybody knows his
work. His blog is really interesting.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://pensive-pondering.blogspot.com&quot;&gt;Pensive Pondering&lt;/a&gt;: an
awesome blog, Jason Brownlee talks about biologically inspired computation.
Surprisingly, I found an old post on his blog &lt;a href=&quot;http://pensive-pondering.blogspot.com/2005/08/metaheuristics.html&quot;&gt;about the
definition of metaheuristics&lt;/a&gt;, where one can see that we share a lot of
common ideas on the subject (see the &lt;a href=&quot;http://nojhan.free.fr/metah/index.php?2006/08/23/4-what-are-metaheuristics&quot;&gt;previous
post&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://adaptare.blogspot.com&quot;&gt;Adaptare&lt;/a&gt;: Julián García writes
on &amp;quot;Evolutionary computation, evolutionary dynamics, cultural evolution and the
like&amp;quot;, an interesting and active blog.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These are the best blogs I have found, you will find some other (less
interesting) blogs in &lt;a href=&quot;http://nojhan.free.fr/depot/feedlist.opml&quot;&gt;my
OPML feedlist&lt;/a&gt;.&lt;/p&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2006/08/25/Some-blogs-about-metaheuristics#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2006/08/25/Some-blogs-about-metaheuristics#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/188117</wfw:commentRss>
      </item>
    
  <item>
    <title>What are metaheuristics ?</title>
    <link>http://metah.nojhan.net/post/2006/08/23/What-are-metaheuristics</link>
    <guid isPermaLink="false">urn:md5:0c3c19f8d320d8b16e3a3f4486afdf5c</guid>
    <pubDate>Wed, 23 Aug 2006 00:00:00 +0200</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>General</category>
        <category>evolutionary computation</category><category>hybridization</category><category>local search</category><category>memetic algorithm</category><category>metaheuristic</category><category>tabu search</category>    
    <description>    &lt;p&gt;Despite the title of this blog, the term &lt;em&gt;metaheuristic&lt;/em&gt; is not
really well defined.&lt;/p&gt;
&lt;p&gt;One of the first occurence of the term can (of course) be found in a paper
by Fred Glover&lt;sup&gt;[&lt;a href=&quot;http://metah.nojhan.net/post/2006/08/23/#pnote-188116-1&quot; id=&quot;rev-pnote-188116-1&quot; name=&quot;rev-pnote-188116-1&quot;&gt;1&lt;/a&gt;]&lt;/sup&gt;: &lt;em&gt;Future Paths for Integer Programming and
Links to Artificial Intelligence&lt;/em&gt;&lt;sup&gt;[&lt;a href=&quot;http://metah.nojhan.net/post/2006/08/23/#pnote-188116-2&quot; id=&quot;rev-pnote-188116-2&quot; name=&quot;rev-pnote-188116-2&quot;&gt;2&lt;/a&gt;]&lt;/sup&gt;. In the section
concerning &lt;em&gt;tabu search&lt;/em&gt;, he talks about &lt;em&gt;meta-heuristic&lt;/em&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Tabu search may be viewed as a &amp;quot;meta-heuristic&amp;quot; superimposed on another
heuristic. The approach undertakes to transcend local optimality by a strategy
of forbidding (or, more broadly, penalizing) certain moves.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;In the AI field, a &lt;em&gt;heuristic&lt;/em&gt; is a specific method that help solving
a problem (from the greek for &lt;em&gt;to find&lt;/em&gt;), but how must we understand the
&lt;em&gt;meta&lt;/em&gt; word ? Well, in greek, it means &amp;quot;after&amp;quot;, &amp;quot;beyond&amp;quot; (like in
&lt;em&gt;metaphysic&lt;/em&gt;) or &amp;quot;about&amp;quot; (like in &lt;em&gt;metadata&lt;/em&gt;). Reading Glover,
&lt;em&gt;metaheuristics&lt;/em&gt; seems to be &lt;em&gt;heuristics beyond heuristics&lt;/em&gt;,
which seems to be a good old definition, but what is the definition nowadays ?
The litterature is really prolific on this subject, and the definitions are
numerous.&lt;/p&gt;
&lt;p&gt;There is at least three tendencies :&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;one that consider that the most important part of &lt;em&gt;metaheuristcs&lt;/em&gt; is
the gathering of several heuristics,&lt;/li&gt;
&lt;li&gt;one other that promotes the fact that &lt;em&gt;meta&lt;/em&gt;heuristics are designed
as generalistic methods, that can tackle several problems without major changes
in their design,&lt;/li&gt;
&lt;li&gt;the last one that use the term only for evolutionnary algorithms when they
are hybridicized with local searches (methods that are called &lt;em&gt;memetic
algorithms&lt;/em&gt; in the other points of vue).&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The last one is quite minor in the generalistic litterature, it can mainly
be found in the field of evolutionnary computation, separate out the two other
tendencies is more difficult.&lt;/p&gt;
&lt;p&gt;Here are some definitions gathered in more or less generalistic papers:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;quot;iterative generation process which guides a subordinate heuristic by
combining intelligently different concepts for exploring and exploiting the
search space&amp;quot; (Osman and Laporte, 1996&lt;sup&gt;[&lt;a href=&quot;http://metah.nojhan.net/post/2006/08/23/#pnote-188116-3&quot; id=&quot;rev-pnote-188116-3&quot; name=&quot;rev-pnote-188116-3&quot;&gt;3&lt;/a&gt;]&lt;/sup&gt;)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;quot;(metaheuristics) combine basic heuristic methods in higher level frameworks
aimed at efficiently and effectively exploring a search space&amp;quot; (Blum and Roli,
2003&lt;sup&gt;[&lt;a href=&quot;http://metah.nojhan.net/post/2006/08/23/#pnote-188116-4&quot; id=&quot;rev-pnote-188116-4&quot; name=&quot;rev-pnote-188116-4&quot;&gt;4&lt;/a&gt;]&lt;/sup&gt;)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;quot;a metaheuristic can be seen as a general-purpose heuristic method designed
to guide an underlying problem-specific heuristic (...) A metaheuristic is
therefore a general algorithmic framework which can be applied to different
optimization problems with relative few modifications to make them adapted to a
specific problem.&amp;quot; (Dorigo and Stützle, 2004&lt;sup&gt;[&lt;a href=&quot;http://metah.nojhan.net/post/2006/08/23/#pnote-188116-5&quot; id=&quot;rev-pnote-188116-5&quot; name=&quot;rev-pnote-188116-5&quot;&gt;5&lt;/a&gt;]&lt;/sup&gt;)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;quot;(metaheuristics) apply to all kinds of problems (...) are, at least to some
extent, &lt;em&gt;stochastic&lt;/em&gt; (...) direct, i.e. they do not resort to the
calculation of the gradients of the objective function (...) inspired by
&lt;em&gt;analogies&lt;/em&gt;: with physics, biology or ethology&amp;quot; (Dréo, Siarry, Petrowski
and Taillard, 2006&lt;sup&gt;[&lt;a href=&quot;http://metah.nojhan.net/post/2006/08/23/#pnote-188116-6&quot; id=&quot;rev-pnote-188116-6&quot; name=&quot;rev-pnote-188116-6&quot;&gt;6&lt;/a&gt;]&lt;/sup&gt;)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;One can summarize by enumerating the expected characteristics:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;optimization algorithms,&lt;/li&gt;
&lt;li&gt;with an iterative design,&lt;/li&gt;
&lt;li&gt;combining low level heuristics,&lt;/li&gt;
&lt;li&gt;aiming to tackle a large scale of &amp;quot;hard&amp;quot; problems.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;As it is pointed out by the last reference, a large majority of
metaheuristics (well, not to say &lt;em&gt;all&lt;/em&gt;) use at least one stochastic
(probabilistic) process and does not use more information than the solution and
the associated value(s) of the objective function.&lt;/p&gt;
&lt;p&gt;Talking about &lt;em&gt;combining&lt;/em&gt; heuristics seems to be appropriate for
&lt;em&gt;Ant Colony Optimization&lt;/em&gt;, that specifically needs one (following
Dorigo's point of vue), it can be less obvious for &lt;em&gt;Evolutionnary
Algorithms&lt;/em&gt;. One can consider that &lt;em&gt;mutation&lt;/em&gt;, or even the method's
strategy itself, is a heuristic, but isn't it too generalistic to be called a
&lt;em&gt;heuristic&lt;/em&gt; ?&lt;/p&gt;
&lt;p&gt;If we forget the difficulty to demarcate what can be called a
&lt;em&gt;heuristic&lt;/em&gt; and what is the scope of the term &lt;em&gt;meta&lt;/em&gt;, one can
simply look at the use of the term among specialists. Despite the fact that the
definition can be used in several fields (data mining, machine learning, etc.),
the term is used for optimization algorithms. This is perhaps the best reason
among others: the term permits to separate a research field from others, thus
adding a little bit of marketing...&lt;/p&gt;
&lt;p&gt;I would thus use this definition:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Metaheuristics are algorithms designed to tackle &amp;quot;hard&amp;quot; optimization
problems, with the help of iterative stochastic processes. These methods are
manipulating direct samples of the objective function, and can be applied to
several problems without major changes in their design.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;div class=&quot;footnotes&quot;&gt;
&lt;h4&gt;Notes&lt;/h4&gt;
&lt;p&gt;[&lt;a href=&quot;http://metah.nojhan.net/post/2006/08/23/#rev-pnote-188116-1&quot; id=&quot;pnote-188116-1&quot; name=&quot;pnote-188116-1&quot;&gt;1&lt;/a&gt;] A recurrent joke says that whatever is your new idea,
it has already be written down by Glover&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://metah.nojhan.net/post/2006/08/23/#rev-pnote-188116-2&quot; id=&quot;pnote-188116-2&quot; name=&quot;pnote-188116-2&quot;&gt;2&lt;/a&gt;] Comput. &amp;amp; Ops. Res.Vol. 13, No.5, pp. 533-549,
1986&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://metah.nojhan.net/post/2006/08/23/#rev-pnote-188116-3&quot; id=&quot;pnote-188116-3&quot; name=&quot;pnote-188116-3&quot;&gt;3&lt;/a&gt;] &lt;em&gt;Metaheuristic: A bibliography&lt;/em&gt;, Annals of
Operations Research, vol. 63, pp. 513-623, 1996&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://metah.nojhan.net/post/2006/08/23/#rev-pnote-188116-4&quot; id=&quot;pnote-188116-4&quot; name=&quot;pnote-188116-4&quot;&gt;4&lt;/a&gt;] &lt;em&gt;Metaheuristics in combinatorial optimization:
Overview and conceptual comparison&lt;/em&gt;, ACM Computing Surveys, vol. 35, issue
3, 2003&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://metah.nojhan.net/post/2006/08/23/#rev-pnote-188116-5&quot; id=&quot;pnote-188116-5&quot; name=&quot;pnote-188116-5&quot;&gt;5&lt;/a&gt;] &lt;em&gt;Ant Colony Optimization&lt;/em&gt;, MIT Press, 2004&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://metah.nojhan.net/post/2006/08/23/#rev-pnote-188116-6&quot; id=&quot;pnote-188116-6&quot; name=&quot;pnote-188116-6&quot;&gt;6&lt;/a&gt;] &lt;em&gt;Metaheuristics for Hard Optimization&lt;/em&gt;,
Springer, 2006&lt;/p&gt;
&lt;/div&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2006/08/23/What-are-metaheuristics#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2006/08/23/What-are-metaheuristics#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/188116</wfw:commentRss>
      </item>
    
  <item>
    <title>A new book about &quot;stigmergic optimization&quot;</title>
    <link>http://metah.nojhan.net/post/2006/08/22/A-new-book-about-stigmergic-optimization</link>
    <guid isPermaLink="false">urn:md5:df1a5f15903703828f03b1a80dd91cd5</guid>
    <pubDate>Tue, 22 Aug 2006 00:00:00 +0200</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>Bibliography</category>
        <category>particle swarm optimization</category><category>swarm intelligence</category>    
    <description>    &lt;p&gt;Springer has published a new book in their &lt;em&gt;Studies in Computational
Intelligence&lt;/em&gt; series.&lt;/p&gt;
&lt;p&gt;Edited by Abraham, Grosan and Ramos, it covers &amp;quot;&lt;a href=&quot;http://www.springer.com/france/home?SGWID=7-102-22-173661230-0&amp;amp;changeHeader=true&amp;amp;SHORTCUT=www.springer.com/3-540-34689-9&amp;amp;uid=6004128&amp;amp;mid=229180&amp;amp;aid=&quot; hreflang=&quot;en&quot;&gt;Stigmergic Optimization&lt;/a&gt;&amp;quot;. Looking at the &lt;a href=&quot;http://www.springer.com/france/home/engineering?SGWID=7-175-22-173661230-detailsPage=ppmmedia&quot; hreflang=&quot;toc&quot; title=&quot;en&quot;&gt;table of content&lt;/a&gt;, one can see that we talk about
Ant Colony Optimization.&lt;/p&gt;
&lt;p&gt;Of course, it also get onto the so-called &lt;em&gt;swarm intelligence&lt;/em&gt; and
self-organization, but also onto Particle Swarm Optimization, which is a method
that gather more and more researchers these months.&lt;/p&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2006/08/22/A-new-book-about-stigmergic-optimization#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2006/08/22/A-new-book-about-stigmergic-optimization#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/188114</wfw:commentRss>
      </item>
    
  <item>
    <title>Introductive bibliography to metaheuristics for hard optimization</title>
    <link>http://metah.nojhan.net/post/2006/08/02/Introductive-bibliography-to-metaheuristics-for-hard-optimization</link>
    <guid isPermaLink="false">urn:md5:101174126695ce0659c5775401156e77</guid>
    <pubDate>Wed, 02 Aug 2006 00:00:00 +0200</pubDate>
    <dc:creator>nojhan</dc:creator>
        <category>Bibliography</category>
        <category>french</category>    
    <description>    &lt;p&gt;&lt;em&gt;Note that this bibliography is quite old (2003) and aim french
students.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;If you need only one reference, this is (of course, because I'm one of the
authors) this one :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Dréo, J. ; Petrowski, A. ; Taillard, E. ; Siarry, P. ; &lt;em&gt;Metaheuristics
for Hard Optimization Methods and Case Studies&lt;/em&gt;, Springer, 2006, XII, 369
p., 140 illus., Hardcover. ISBN: 3-540-23022-X&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;General&lt;/h3&gt;
&lt;h4&gt;Books&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Glover, F. W. ; Kochenberger, G. A. ; 2003 : &lt;em&gt;Handbook of
Metaheuristics&lt;/em&gt;, Kluwer Academic Publishers, International series in
operations research and management science, Boston Hardbound.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Teghem, J. ; Pirlot, M. ; 2002 : &lt;em&gt;Optimisation approchée en recherche
opérationnelle. Recherches locales, réseaux neuronaux et satisfaction de
contraintes&lt;/em&gt;, Hermès.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Pham, D.T. ; Karaboga, D. ; 2000 : &lt;em&gt;Intelligent optimisation techniques.
Genetic Algorithms, Tabu Search, Simulated Annealing and Neural Networks&lt;/em&gt;,
Springer.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Saït, S.M. ; Youssef, H. ; 1999 : &lt;em&gt;Iterative computer algorithms with
applications in engineering&lt;/em&gt;, IEEE Computer Society Press.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Reeves, C.R., 1995 : &lt;em&gt;Modern Heuristic Techniques for Combinatorial
Problems&lt;/em&gt;, Mc Graw-Hill, Advances topics in computer science.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Algorithms&lt;/h3&gt;
&lt;h4&gt;Simulated Annealing&lt;/h4&gt;
&lt;h5&gt;Books&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;Siarry, P.; Dreyfus, G. ; 1989 : &lt;em&gt;La méthode du recuit simulé : théorie
et applications&lt;/em&gt;, ESPCI -- IDSET, 10 rue Vauquelin, 75005 Paris.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Tabu Search&lt;/h4&gt;
&lt;h5&gt;Books&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;Glover, F. ; Laguna, M. ; 1997 : &lt;em&gt;Tabu search&lt;/em&gt;, Kluwer Academic
Publishers, Dordrecht.&lt;/li&gt;
&lt;/ul&gt;
&lt;h5&gt;Articles&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;Glover, F. ; 1989 : &lt;em&gt;Tabu search --- part I&lt;/em&gt;, ORSA Journal on
Computing, vol. 1, 190--206.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Glover, F. ; 1990 : &lt;em&gt;Tabu search --- part II&lt;/em&gt;, ORSA Journal on
Computing, vol. 2, 4--32.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Evolutionary Algorithms (aka Genetic Algorithm)&lt;/h4&gt;
&lt;h5&gt;Books&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;Baeck, T. ; Fogel, D. B. ; Michalewicz, Z. ; 2000 : &lt;em&gt;Evolutionary
computation 1: basic algorithms and operators&lt;/em&gt;, Institute of Physics
Publishing.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Baeck, T. ; Fogel, D. B. ; Michalewicz, Z. ; 2000 : &lt;em&gt;Evolutionary
computation 2: advanced algorithms and operators&lt;/em&gt;, Institute of Physics
Publishing.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Goldberg, D. E. ; 1994 : &lt;em&gt;Algorithmes génétiques. exploration,
optimisation et apprentissage automatique&lt;/em&gt;, Addison-Wesley France.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Koza, J. R. ; 1992 : &lt;em&gt;Genetic programming I: on the programming of
computers by means of natural selection&lt;/em&gt;, MIT Press.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Koza, J. R. ; 1994 : &lt;em&gt;Genetic programming II: automatic discovery of
reusable programs&lt;/em&gt;, MIT Press.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Ant Colony Algorithms&lt;/h4&gt;
&lt;h5&gt;Books&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;Bonabeau, E. ; Dorigo, M. ; Theraulaz, G. ; 1999 : &lt;em&gt;Swarm Intelligence,
From Natural to Artificial Systems&lt;/em&gt;, Oxford University Press.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Greedy Randomized Adaptive Search Procedure (GRASP)&lt;/h4&gt;
&lt;h5&gt;Tech Reports&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;Resende, M.G.C. ; 2000 : &lt;em&gt;Greedy randomized adaptive search procedures
(GRASP)&lt;/em&gt;, AT&amp;amp;T Labs-Research, TR 98.41.1.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Partical Swarm Optimization&lt;/h4&gt;
&lt;h5&gt;Books&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;Eberhart, R.C. ; Kennedy, J. ; Shi, Y. ; 2001 : &lt;em&gt;Swarm
Intelligence&lt;/em&gt;, Morgan Kaufmann, Evolutionnary Computation.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Estimation of Distribution Algorithms&lt;/h4&gt;
&lt;h5&gt;Books&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;Larranaga, P. ; Lozano, J.A. ; 2002 : &lt;em&gt;Estimation of Distribution
Algorithms, A New Tool for Evolutionnary Computation&lt;/em&gt;, Kluwer Academic
Publishers, Genetic Algorithms and Evolutionnary Computation.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Related Topics&lt;/h3&gt;
&lt;h4&gt;Multi-Objective Optimization&lt;/h4&gt;
&lt;h5&gt;Books&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;Collette, Y. ; Siarry, P. ; 2002 : &lt;em&gt;Optimisation multiobjectif&lt;/em&gt;,
Eyrolles.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Deb, K. ; 2001 : &lt;em&gt;Multi-objective optimization using evolutionary
algorithms&lt;/em&gt;, John Wiley and sons.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Constrainted Optimization&lt;/h4&gt;
&lt;h5&gt;Books&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;Michalewicz, Z. ; 1996 : &lt;em&gt;Genetic algorithms + data structures =
evolution programs&lt;/em&gt;, Springer Verlag, troisième édition révisée.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Self-Organization&lt;/h4&gt;
&lt;h5&gt;Books&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;Camazine, S. ; Deneubourg, J.L. ; Franks, N. ; Sneyd, J. ; Theraulaz, G. ;
Bonabeau, E. ; 2000 : &lt;em&gt;Self-Organization in Biological Systems&lt;/em&gt;,
Princeton University Press.&lt;/li&gt;
&lt;/ul&gt;</description>
    
    
    
          <comments>http://metah.nojhan.net/post/2006/08/02/Introductive-bibliography-to-metaheuristics-for-hard-optimization#comment-form</comments>
      <wfw:comment>http://metah.nojhan.net/post/2006/08/02/Introductive-bibliography-to-metaheuristics-for-hard-optimization#comment-form</wfw:comment>
      <wfw:commentRss>http://metah.nojhan.net/feed/rss2/comments/188113</wfw:commentRss>
      </item>
    
</channel>
</rss>