net.sf.cpsolver.ifs.model
Interface ModelListener<V extends Variable<V,T>,T extends Value<V,T>>

All Known Subinterfaces:
Criterion<V,T>
All Known Implementing Classes:
AbstractCriterion, AssignedValue, AssignmentCount, BackToBackInstructorPreferences, BrokenTimePatterns, ConflictStatistics, DbtPropagation, DeltaTimePreference, DepartmentBalancingPenalty, DistanceConflict, DistanceToStronglyPreferredRoom, DistributionPenalty, DistributionPreferences, DistributionViolation, ExamCriterion, ExamRotationPenalty, ExamSplitter, Extension, FlexibleConstraintCriterion, HardConflicts, IgnoredCommittedStudentConflict, IgnoredStudentConflict, ImportantStudentConflict, ImportantStudentHardConflict, InstructorBackToBackConflicts, InstructorDirectConflicts, InstructorDistanceBackToBackConflicts, InstructorLunchBreak, InstructorMoreThan2ADayConflicts, InstructorNotAvailableConflicts, InstructorStudentConflict, InstructorStudentHardConflict, LargeExamsPenalty, MacPropagation, MacRevised, OnFlySectioning, PeriodIndexPenalty, PeriodPenalty, PeriodSizePenalty, PeriodViolation, PerturbationPenalty, Perturbations, PlacementSelectionCriterion, PotentialHardConflicts, QuadraticStudentConflict, QuadraticStudentHardConflict, RoomPenalty, RoomPerturbationPenalty, RoomPreferences, RoomSizePenalty, RoomSizePenalty, RoomSplitDistancePenalty, RoomSplitPenalty, RoomViolation, RoomViolations, SameSubpartBalancingPenalty, SearchIntensification, StudentBackToBackConflicts, StudentCommittedConflict, StudentConflict, StudentConflictStatistics, StudentDirectConflicts, StudentDistanceBackToBackConflicts, StudentDistanceConflict, StudentHardConflict, StudentLuchBreak, StudentMoreThan2ADayConflicts, StudentNotAvailableConflicts, StudentOverlapConflict, TimeOverlapsCounter, TimePreferences, TimetablingCriterion, TimeViolations, TooBigRooms, UselessHalfHours, ViolatedInitials, WeightedHardConflicts

public interface ModelListener<V extends Variable<V,T>,T extends Value<V,T>>

IFS model listener.

Version:
IFS 1.2 (Iterative Forward Search)
Copyright (C) 2006 - 2010 Tomas Muller
muller@unitime.org
http://muller.unitime.org

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not see http://www.gnu.org/licenses/.
See Also:
Model

Method Summary
 void afterAssigned(long iteration, T value)
          Called after a value is assigned to its variable ( Value.variable()).
 void afterUnassigned(long iteration, T value)
          Called after a value is unassigned from its variable ( Value.variable()).
 void beforeAssigned(long iteration, T value)
          Called before a value is assigned to its variable ( Value.variable()).
 void beforeUnassigned(long iteration, T value)
          Called before a value is unassigned from its variable ( Value.variable()).
 void constraintAdded(Constraint<V,T> constraint)
          Constraint is added to the model
 void constraintRemoved(Constraint<V,T> constraint)
          Constraint is removed from the model
 boolean init(Solver<V,T> solver)
          Notification that the model was initialized by the solver.
 void variableAdded(V variable)
          Variable is added to the model
 void variableRemoved(V variable)
          Variable is removed from the model
 

Method Detail

variableAdded

void variableAdded(V variable)
Variable is added to the model

Parameters:
variable - added variable

variableRemoved

void variableRemoved(V variable)
Variable is removed from the model

Parameters:
variable - removed variable

constraintAdded

void constraintAdded(Constraint<V,T> constraint)
Constraint is added to the model

Parameters:
constraint - added constraint

constraintRemoved

void constraintRemoved(Constraint<V,T> constraint)
Constraint is removed from the model

Parameters:
constraint - removed constraint

beforeAssigned

void beforeAssigned(long iteration,
                    T value)
Called before a value is assigned to its variable ( Value.variable()).

Parameters:
iteration - current iteration
value - value to be assigned

beforeUnassigned

void beforeUnassigned(long iteration,
                      T value)
Called before a value is unassigned from its variable ( Value.variable()).

Parameters:
iteration - current iteration
value - value to be unassigned

afterAssigned

void afterAssigned(long iteration,
                   T value)
Called after a value is assigned to its variable ( Value.variable()).

Parameters:
iteration - current iteration
value - value to be assigned

afterUnassigned

void afterUnassigned(long iteration,
                     T value)
Called after a value is unassigned from its variable ( Value.variable()).

Parameters:
iteration - current iteration
value - value to be unassigned

init

boolean init(Solver<V,T> solver)
Notification that the model was initialized by the solver.

Parameters:
solver - IFS solver


Copyright © 2014 UniTime LLC. All Rights Reserved.