1
2
3
4
5
6
7
8
9 package com.delhezi.ga.initialize.data;
10
11 import com.delhezi.ga.Chromosome;
12 import com.delhezi.ga.ChromosomeProperties;
13 import com.delhezi.ga.genes.Point;
14 import java.util.LinkedList;
15
16
17
18
19
20 public class SampleTsp {
21
22
23
24
25
26
27
28
29 public static LinkedList<Chromosome> newChromosomes(int populationSize,
30 int maxPopulationSize,
31 ChromosomeProperties chromosomeProperties){
32 LinkedList<Chromosome> chromosomes = new LinkedList<Chromosome>();
33 return setChromosomes(chromosomes, populationSize, chromosomeProperties);
34 }
35
36
37
38
39
40
41
42 public static LinkedList<Chromosome> newChromosomes(int populationSize,
43 ChromosomeProperties chromosomeProperties){
44 LinkedList<Chromosome> chromosomes = new LinkedList<Chromosome>();
45 return setChromosomes(chromosomes, populationSize, chromosomeProperties);
46 }
47
48
49 private static LinkedList<Chromosome> setChromosomes(LinkedList<Chromosome> chromosomes,
50 int populationSize, ChromosomeProperties chromosomeProperties){
51 Point[] chromosome_tmp;
52
53 int chromosomeSize = 60;
54 chromosome_tmp = new Point[chromosomeSize];
55 for (int i = 0; i < chromosomeSize; i++)
56 chromosome_tmp[i] = new Point((int) (Math.random() * 200),
57 (int) (Math.random() * 200));
58
59 Point[] chromosome_i;
60 for (int i = 0; i < populationSize; i++) {
61
62 com.delhezi.ga.utility.ShuffleList.shuffle(chromosome_tmp);
63 chromosome_i = new Point[chromosomeSize];
64 System.arraycopy(chromosome_tmp, 0, chromosome_i, 0,chromosome_tmp.length);
65 chromosomes.add(new Chromosome(chromosome_i, chromosomeProperties));
66 }
67 return chromosomes;
68 }
69
70 }