Beispiel #1
0
 public override bool IsAllowedMovement(CrossoverRoute m)
 {
     return(ReplaceRangeOverload(m.current, m.deRoute, m.orIndex, m.deIndex) <= epsilon &&
            ReplaceRangeOverload(m.deRoute, m.current, m.deIndex, m.orIndex) <= epsilon);
 }
 public override bool IsAllowedMovement(CrossoverRoute m)
 {
     return(AlphaWeakFeasibilityAfterReplace(m.current, m.current.GetRange(m.orIndex + 1, m.current.Count - m.orIndex - 1), m.deRoute.GetRange(m.deIndex + 1, m.deRoute.Count - m.deIndex - 1)) <= WeakThreshold &&
            AlphaWeakFeasibilityAfterReplace(m.deRoute, m.deRoute.GetRange(m.deIndex + 1, m.deRoute.Count - m.deIndex - 1), m.current.GetRange(m.orIndex + 1, m.current.Count - m.orIndex - 1)) <= WeakThreshold);
 }
Beispiel #3
0
 public override bool IsAllowedMovement(CrossoverRoute m)
 {
     return(AlphaWeakFeasibilityAfterReplaceRange(m.current, m.deRoute, m.orIndex, m.deIndex) < WeakThreshold &&
            AlphaWeakFeasibilityAfterReplaceRange(m.deRoute, m.current, m.deIndex, m.orIndex) < WeakThreshold);
 }
 public override bool IsAllowedMovement(CrossoverRoute m)
 {
     return(WeakFeasibleAfterReplace(m.current, m.current.GetRange(m.orIndex + 1, m.current.Count - m.orIndex - 1), m.deRoute.GetRange(m.deIndex + 1, m.deRoute.Count - m.deIndex - 1)) &&
            WeakFeasibleAfterReplace(m.deRoute, m.deRoute.GetRange(m.deIndex + 1, m.deRoute.Count - m.deIndex - 1), m.current.GetRange(m.orIndex + 1, m.current.Count - m.orIndex - 1)));
 }