Skip to content

Genetic Algorithm Setting (GAS)

Behzad Khosravifar edited this page Jun 2, 2018 · 4 revisions

Make Class Schedule


  • Genetic Algorithm Setting are optional settings for optimized genetic algorithm:

ga_flow3.png

Diagram - Flowchart of a genetic algorithm [non-overlapping population with coupling operation]

That shows by click on GAS_Button.JPG button in Tools and Setting form, much the same that you can see the following:

GAS.jpg

Components of this window is as follow:

Define Schedule Prototype

  • Number of Crossover Points (Default value: 5). Concept is that you want chromosomes during crossover a few points are combined.

crossover.png

Crossover operation combines data in hash maps of two parent chromosomes, and then it creates vector of slots according to content of new hash map. Crossover 'splits' hash maps of both parents in parts of random size. Number of parts is defined by number of crossover points (plus one) in chromosome's parameters. Then it alternately copies parts form parents to new chromosome, and forms new vector of slots.

twoPointCrossover.png

  • Mutation Size (Default value: 5). This means that you want to mutation operate in how many point of child chromosomes is doing. Mutation operation is very simple. It just takes class randomly and moves it to another randomly chosen slot. Number of classes which are going to be moved in a single operation is defined by mutation size in chromosome's parameters.

Mutation.png

  • Crossover Probability (Default value: 90%). Percent probability for the crossover action of chromosomes, the number is between 1 to 100.
  • Mutation Probability (Default value: 10%). Percent probability for the mutation action of chromosomes, the number is between 1 to 100.

Genetic Algorithm Parameters

  • Number of Chromosomes (Default value: 1000). Amount of chromosomes population in Genetic Algorithm.
  • Replace by Generation (Default value: 180). Means that the number of chromosomes in each generation should be produced and will replaced. Random Coupling operation takes the first parents sequentially from the selection result set, and the second parents are chosen randomly. If all parents are used as the first parents, but more children should be produced, the operation restarts from the beginning until enough children is produced.

ReplaceByGeneration.png

  • Number of Track Best Chromosomes (Default value: 50). Number of chromosomes that in every generation the best chromosome (in terms of fitness value are elite) are selected. The fitness values are represented by single-precision floating point numbers (float) in the range 0 to 1.

Notice:

  • Mutation Size ≥ 2
  • Number of Crossover Points ≥ 2
  • 100 ≥ Crossover Probability ≥ 1
  • 100 ≥ Mutation Probability ≥ 1
  • Number of Chromosomes ≥ 2
  • How much of each population (number of chromosomes) is large, the answer will be more efficient, but comes down speed of running the algorithm.
  • Number of Track Best Chromosomes ≥ 1
  • Number of Track Best Chromosomes ≤ Population Size (Number of Chromosomes)
  • Replace by Generation ≥ 1
  • Replace by Generation ≤ Population Size (Number of Chromosomes) ˗ Number of Track Best Chromosomes
Clone this wiki locally