Generate a size random population , calculating the portfolio criteria.
Determine the different fronts assigning each individual a “rank” that is, the front which it belongs to
and its crowding distance.
Execute the following as many times as generations
 Generate an offspring population and calculate their criteria
  Select the parents using binary tournament. Their crosses produce two descendants to
  whom the mutation operator is applied
 Combine the parents’ population and offspring population:
  Evaluate the value in GDM  . GDM is the group of decision-makers
 Calculate the satisfaction and dissatisfaction level for each individual:
  If
    and satisfies the -DM restrictions; and all projects which -DM
   considers very important belong to the portfolio,
  Then
      The individual is satisfied
  If
    and , or doesn’t satisfy the -DM restrictions or a
   significant part of projects that -DM considers very important is not in ,
  Then
      The individual is unsatisfied
Count and
Determine the different fronts
Select the new population so that the members of the first fronts belong to it, and if necessary,
execute the Crowding-Sort
Repeat the above-mentioned as another generation.
Algorithm 1