Changeset 9475 for branches/LearningClassifierSystems/HeuristicLab.Encodings.VariableVector/3.3/Manipulator/UniformSomePositionManipulator.cs
- Timestamp:
- 05/09/13 18:57:22 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/LearningClassifierSystems/HeuristicLab.Encodings.VariableVector/3.3/Manipulator/UniformSomePositionManipulator.cs
r9204 r9475 55 55 } 56 56 57 protected override VariableVector Manipulate(IRandom random, VariableVectorInput input, VariableVector child ) {58 return Manipulate(random, input, child, ProbabilityParameter.ActualValue.Value, PossibleActionsParameter.ActualValue );57 protected override VariableVector Manipulate(IRandom random, VariableVectorInput input, VariableVector child, double spreadPercentage) { 58 return Manipulate(random, input, child, ProbabilityParameter.ActualValue.Value, PossibleActionsParameter.ActualValue, spreadPercentage); 59 59 } 60 60 61 public static VariableVector Manipulate(IRandom random, VariableVectorInput input, VariableVector child, double probability, IItemSet<VariableVectorAction> possibleActions ) {62 child = ManipulateCondition(random, input, child, probability );61 public static VariableVector Manipulate(IRandom random, VariableVectorInput input, VariableVector child, double probability, IItemSet<VariableVectorAction> possibleActions, double spreadPercentage) { 62 child = ManipulateCondition(random, input, child, probability, spreadPercentage); 63 63 return ManipulateAction(random, child, probability, possibleActions); 64 64 } 65 65 66 public static VariableVector ManipulateCondition(IRandom random, VariableVectorInput input, VariableVector child, double probability ) {66 public static VariableVector ManipulateCondition(IRandom random, VariableVectorInput input, VariableVector child, double probability, double spreadPercentage) { 67 67 for (int index = 0; index < child.Condition.VirtualLength; index++) { 68 68 if (random.NextDouble() < probability) { 69 child = UniformOnePositionInConditionManipulator.Manipulate(random, input, child, index );69 child = UniformOnePositionInConditionManipulator.Manipulate(random, input, child, index, spreadPercentage); 70 70 } 71 71 }
Note: See TracChangeset
for help on using the changeset viewer.