def one
unified-nsga-iii@0.2.2.0 · tournament.bend:154
import unified-nsga-iii@0.2.2.0/tournament.bend as Tournament
import Base
import unified-nsga-iii@0.2.2.0/individual.bend as Ind
import unified-nsga-iii@0.2.2.0/rng.bend as Rng
import unified-nsga-iii@0.2.2.0/util.bend as Util
154def one(+mode: Mode, +pop: List<&2, Ind.Individual>, rng: Rng.State) -> Rng.State & Ind.Individual:
155 +n = Util.list_len(Ind.Individual, pop)
156 +rng_a = Rng.next_nat(rng, n)
157 +ia = Rng.last_nat(rng_a)
158 +rng_b = Rng.next_except(rng_a, n, ia)
159 +ib = Rng.last_nat(rng_b)
160 winner(mode, get_ind(pop, ia), get_ind(pop, ib), rng_b)