public void executeTrajectoryWithMinimalBacktrackWithoutStateCoding(Object[] trajectory) { executeTrajectoryWithMinimalBacktrackWithoutStateCoding(trajectory, trajectory.length); }
@Override public void executeTrajectoryWithMinimalBacktrackWithoutStateCoding(Object[] trajectory) { designSpaceManager.executeTrajectoryWithMinimalBacktrackWithoutStateCoding(trajectory); }
@Override public void executeTrajectoryWithMinimalBacktrackWithoutStateCoding(Object[] trajectory, int toExcludedIndex) { designSpaceManager.executeTrajectoryWithMinimalBacktrackWithoutStateCoding(trajectory, toExcludedIndex); }
@Override public boolean mutateAlternate(TrajectoryFitness parent1, TrajectoryFitness parent2, ThreadContext context) { dsm.executeTrajectoryWithMinimalBacktrackWithoutStateCoding(parent2t, index2); dsm.tryFireActivation(parent1t[index1]); context.executeTrajectoryByTryingWithoutStateCoding(parent2t, index2 + 1, p2Size); return true; }
@Override public boolean mutate(TrajectoryFitness parent1, TrajectoryFitness parent2, ThreadContext context) { DesignSpaceManager dsm = context.getDesignSpaceManager(); TrajectoryInfo trajectoryInfo = dsm.getTrajectoryInfo(); parent1t = parent1.trajectory; parent2t = parent2.trajectory; p1Size = parent1t.length; p2Size = parent2t.length; if (p1Size < 2 || p2Size < 2) { return false; } int minSize = Math.min(p1Size, p2Size); index = random.nextInt(minSize); dsm.executeTrajectoryWithMinimalBacktrackWithoutStateCoding(parent1t, index); addPermutation(dsm, trajectoryInfo, parent2t); return true; }
@Override public boolean mutate(TrajectoryFitness parent1, TrajectoryFitness parent2, ThreadContext context) { dsm = context.getDesignSpaceManager(); parent1t = parent1.trajectory; parent2t = parent2.trajectory; p1Size = parent1t.length; p2Size = parent2t.length; if (p1Size < 2 || p2Size < 2) { return false; } index1 = random.nextInt(p1Size); index2 = random.nextInt(p2Size); dsm.executeTrajectoryWithMinimalBacktrackWithoutStateCoding(parent1t, index1); dsm.tryFireActivation(parent2t[index2]); context.executeTrajectoryByTryingWithoutStateCoding(parent1t, index1 + 1, p1Size); return true; }
@Override public boolean mutateAlternate(TrajectoryFitness parent1, TrajectoryFitness parent2, ThreadContext context) { DesignSpaceManager dsm = context.getDesignSpaceManager(); dsm.executeTrajectoryWithMinimalBacktrackWithoutStateCoding(parent2t, index); addPermutation(dsm, dsm.getTrajectoryInfo(), parent1t); return true; }
dsm.executeTrajectoryWithMinimalBacktrackWithoutStateCoding(trajectory, index);
logger.debug("New trajectory is chosen: " + currentTrajectoryWithFittness); context.getDesignSpaceManager().executeTrajectoryWithMinimalBacktrackWithoutStateCoding(currentTrajectoryWithFittness.trajectory);