Package org.cicirello.search.operators.permutations
This package includes classes that implement mutation operators for permutations, and other
operators required by simulated annealing and other related metaheuristics.
The classes of this package depend upon the Permutation class, and other
classes, from the JPT (JavaPermutationTools) API, version 2 or higher.
More information on the JPT can be found at the website for that library:
JPT.

Class Summary Class Description AdjacentSwapMutation This class implements an adjacent swap mutation on permutations, where one mutation consists in randomly swapping a pair of adjacent elements.BlockInterchangeMutation This class implements a block interchange mutation on permutations, where one mutation consists in swapping two randomly chosen nonoverlapping "blocks" (i.e., subsequences).BlockMoveMutation This class implements a block move mutation on permutations, where one mutation consists in removing a randomly chosen "block" (i.e., subsequence) and reinserting it at a different randomly chosen index.CycleMutation This class implements a cycle mutation on permutations, where one mutation generates a random permutation cycle.InsertionMutation This class implements an insertion mutation on permutations, where one mutation consists in removing a randomly chosen element and reinserting it at a different randomly chosen location.PermutationInitializer The PermutationInitializer provides metaheuristic implementations, such as of simulated annealing, etc, with a way to generate random initial solutions to a problem, as well as a way to make copies of current solution configurations.ReversalMutation This class implements a reversal mutation on permutations, where one mutation consists in reversing the order of a randomly selected subpermutation.RotationMutation This class implements a rotation mutation on permutations, where one mutation consists in a random circular rotation of the permutation.ScrambleMutation This class implements a scramble mutation on permutations, where one mutation consists in randomizing the order of a randomly selected subpermutation.SwapMutation This class implements a swap mutation on permutations, where one mutation selects two elements uniformly at random and swaps their locations.ThreeOptMutation This class implements the classic 3Opt neighborhood as a mutation operator for permutations.TwoChangeMutation This class implements the classic twochange operator as a mutation operator for permutations.UndoableScrambleMutation This class implements a scramble mutation on permutations, where one mutation consists in randomizing the order of a randomly selected subpermutation.UndoableUniformScrambleMutation This class implements a scramble mutation on permutations, where one mutation consists in randomizing the order of a noncontiguous subset of the permutation elements.UniformScrambleMutation This class implements a scramble mutation on permutations, where one mutation consists in randomizing the order of a noncontiguous subset of the permutation elements.WindowLimitedBlockMoveMutation This class implements a windowlimited version of theBlockMoveMutation
mutation operator on permutations.WindowLimitedInsertionMutation This class implements a windowlimited version of theInsertionMutation
mutation operator on permutations.WindowLimitedReversalMutation This class implements a windowlimited version of theReversalMutation
mutation operator on permutations.WindowLimitedScrambleMutation This class implements a windowlimited version of theScrambleMutation
mutation operator on permutations.WindowLimitedSwapMutation This class implements a windowlimited version of theSwapMutation
mutation operator on permutations.WindowLimitedUndoableScrambleMutation This class implements a windowlimited version of theScrambleMutation
mutation operator on permutations.