k individuals are chosen randomly and the best one is chosen. This process is repeated n.select times.

Choice is primarily by dominated sorting and secondarily by either dominated hypervolume or crowding distance, depending on sorting.

Ties are broken randomly by adding random noise of relative magnitude .Machine$double.eps * 2^10 to points.

selTournamentMO(
  fitness,
  n.select,
  sorting = "crowding",
  ref.point,
  k = 2,
  return.unique = FALSE
)

Arguments

fitness

[matrix] fitness matrix, one column per individual.

n.select

[integer(1)] number of individuals to select.

sorting

[character(1)] one of "domhv" or "crowding" (default).

ref.point

[numeric] reference point for hypervolume, must be given if sorting is "domhv".

k

[integer(1)] number of individuals to select at once.

return.unique

[logical(1)] whether returned individual indices must be unique.

Value

[integer] vector of selected individuals.

See also

Other Selectors: selSimpleUnique()