ECJ-INTEREST-L Archives

February 2008

ECJ-INTEREST-L@LISTSERV.GMU.EDU

Options: Use Monospaced Font
Show HTML Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Reply To:
ECJ Evolutionary Computation Toolkit <[log in to unmask]>
Date:
Wed, 20 Feb 2008 12:06:37 -0000
Content-Type:
multipart/alternative
Parts/Attachments:
text/plain (1593 bytes) , text/html (5 kB)
Hi,

 

The current implementation of the SPEA2 algorithm provided with the ECJ
package suffers the following problem:

 

In the SPEA2MultiObjectiveFitness class, the method betterThan is
implemented and it tests whether an individual dominates another individual
whose fitness is passed in the parameters of the method. Problem is, this
same function is used in the tournament selection. Since, in the SPEA2,
breeding happens between archive individuals only, and almost all of them
are non-dominated, hence using the betterThan method is not suitable, and
leads to a rather random behavior.

 

The SPEA2 algorithm performs its tournament selection based on the
totatlFitness value of the individuals (RAW + density information). Hence
another method needs to be added to the SPEA2MultiObjectiveFitness class, to
be used in the tournament selection. The following is suggested:

 

////////////////////////////////////////////////////////////////////////////
////

 * Implementation of Zitzler paper selection criteria

 * Judges better than based on a comparison of the total fitness value.

 * USED in tournament selection */

////////////////////////////////////////////////////////////////////////////
////

    public boolean zBetterThan(Fitness _fitness)

    {

                                boolean IamBetter = false;

 

                if (SPEA2Fitness <
((SPEA2MultiObjectiveFitness)_fitness).SPEA2Fitness)

                                IamBetter = true;

                                

                return (IamBetter);

   }

////////////////////////////////////////////////////////////////////////////
////

 

Best reagrds

Ghada

 



ATOM RSS1 RSS2