- Timestamp:
- 02/26/10 13:33:45 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Permutation/3.3/CosaCrossover.cs
r2865 r2871 30 30 /// it in the child on different positions depending on the second permutation array. 31 31 /// </summary> 32 /// <remarks>It is implemented as described in Wendt, O. 1994. COSA: COoperative Simulated Annealing - Integration von Genetischen Algorithmen und Simulated Annealing am Beispiel der Tourenplanung. Dissertation Thesis. <br />32 /// <remarks>It is implemented as described in Wendt, O. 1994. COSA: COoperative Simulated Annealing - Integration von Genetischen Algorithmen und Simulated Annealing am Beispiel der Tourenplanung. Dissertation Thesis. IWI Frankfurt.<br /> 33 33 /// </remarks> 34 [Item("CosaCrossover", "An operator which performs a crossover operation between two permutation arrays by taking randomly chosen reverse and forward intervals from the first permutation array inserting it in the child on different positions depending on the second permutation array. ")]34 [Item("CosaCrossover", "An operator which performs a crossover operation between two permutation arrays by taking randomly chosen reverse and forward intervals from the first permutation array inserting it in the child on different positions depending on the second permutation array. It is implemented as described in Wendt, O. 1994. COSA: COoperative Simulated Annealing - Integration von Genetischen Algorithmen und Simulated Annealing am Beispiel der Tourenplanung. Dissertation Thesis. IWI Frankfurt.")] 35 35 [EmptyStorableClass] 36 36 [Creatable("Test")] … … 86 86 87 87 /// <summary> 88 /// Performs a COSA crossover operation for two given parent permutations.88 /// Checks number of parents and calls <see cref="Apply(IRandom, Permutation, Permutation)"/>. 89 89 /// </summary> 90 90 /// <exception cref="InvalidOperationException">Thrown if there are not exactly two parents.</exception> … … 93 93 /// <returns>The newly created permutation, resulting from the crossover operation.</returns> 94 94 protected override Permutation Cross(IRandom random, ItemArray<Permutation> parents) { 95 if (parents.Length != 2) throw new InvalidOperationException(" ERROR inCosaCrossover: The number of parents is not equal to 2");95 if (parents.Length != 2) throw new InvalidOperationException("CosaCrossover: The number of parents is not equal to 2"); 96 96 return Apply(random, parents[0], parents[1]); 97 97 }
Note: See TracChangeset
for help on using the changeset viewer.