Research Article

Improved Interactive Genetic Algorithm for Three-Dimensional Vase Modeling Design

Algorithm 1

Details of algorithm steps.
(i)Input: population_size, crossover_rate, mutation_rate, interactive_generation, termination_generation
Output: none
(1) generation = 0
(2) population[generation] = initialize_population(population_size)
(3) model = KDT.build(DB.dataset())
(4) While generation<=termination_generation do
(5) model.prediction(population[generation])
(6) If generation > interactive_generation && is_adjust() then
(7) adjust(population[generation])
(8) end If
(9) evaluate(population[generation])
(10) DB.save(population[generation])
(11) chromosomes = encode(population[generation])
(12) While(population[generation+1].size() < population_size) do
(13) pairs = select(chromosomes)
(14) If rand() < crossover_rate then
(15) pairs = crossover(pairs)
(16) end If
(17) If rand() < mutation_rate then
(18) pairs = mutate(pairs)
(19) end If
(20) population[generation+1].add(decode(pairs.first))
(21) If(population[generation+1].size() < population_size)
(22) population[generation+1].add(decode(pairs.second))
(23) end If
(24) end While
(25) generation++
(26) end While