Class ProblemPartInference
- java.lang.Object
-
- de.uni_marburg.mdo_over.recombination.crossoverpoint.inference.ProblemPartInference
-
- All Implemented Interfaces:
IInferenceStrategy
public class ProblemPartInference extends Object implements IInferenceStrategy
An inference strategy constructing a crossover point which comprises only the problem part of the optimization problem. It uses Henshin to find a mapping between the problem parts of the split points of the two input splits. If several such mappings exist, one of them is used non-deterministically.Note: The root node of a
ModelGraph
is always considered to be part of the problem. For all other nodes, thecontainment reference
of their referenced object is determining.- Author:
- Despro
-
-
Constructor Summary
Constructors Constructor Description ProblemPartInference(Set<org.eclipse.emf.ecore.EReference> problemEdgeTypes, org.eclipse.emf.henshin.interpreter.Engine engine)
Constructs the strategy specifying which edges are considered elements of the problem part.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Span
inferCrossoverPoint(CoSpan firstSplit, CoSpan secondSplit)
Calculates a crossover point for the splits of two solutions.
-
-
-
Constructor Detail
-
ProblemPartInference
public ProblemPartInference(Set<org.eclipse.emf.ecore.EReference> problemEdgeTypes, org.eclipse.emf.henshin.interpreter.Engine engine)
Constructs the strategy specifying which edges are considered elements of the problem part.- Parameters:
problemEdgeTypes
- edges considered elements of the problem partengine
- a Henshin engine used to drive Henshin rules
-
-
Method Detail
-
inferCrossoverPoint
public Span inferCrossoverPoint(CoSpan firstSplit, CoSpan secondSplit)
Description copied from interface:IInferenceStrategy
Calculates a crossover point for the splits of two solutions. The crossover point has to be returned as a span where the codomains are identical to the pullbacks (split points) of the respective splits.- Specified by:
inferCrossoverPoint
in interfaceIInferenceStrategy
- Parameters:
firstSplit
- split of the first solutionsecondSplit
- split of the second solution- Returns:
- a span representing the crossover point of the splits
-
-