[ The ECLiPSe Libraries | Reference Manual | Alphabetic Index ]library(repair)
Repair library: support for local search via tentative assignments and repair constraints
Predicates
- call_satisfied_constraints
- No description available
- conflict_constraints(?)
- Obsolete: use conflict_constraints/2 instead.
- conflict_constraints(+ConflictSet, -Constraints)
- Retreive the set of conflicting constraints monitored in ConflictSet.
- conflict_vars(-Vars)
- Returns the list of variables which are currently non-tenable.
- poss_conflict_vars(?)
- No description available
- poss_conflict_vars(+ConflictSet, -Vars)
- Returns the set of variables within the conflict constraints in ConflictSet.
- print_repair(?, ?)
- No description available
- r(?)
- Obsolete: use r_conflict/2 and r_conflict_prop/2 instead.
- r(?, ?)
- No description available
- +Constraint r_conflict ?ConflictSet
- Annotate Constraint as a repair constraint and monitor it for conflicts.
- r_conflict(?, ?, ?)
- No description available
- +Constraint r_conflict_prop ?ConflictSet
- Annotate Constraint as a repair constraint and monitor it for conflicts. It is propagated when it goes into conflict.
- r_conflict_prop(?, ?, ?)
- No description available
- r_no_prop(?)
- Obsolete: use r_conflict/2 and r_conflict_prop/2 instead.
- r_no_prop(?, ?)
- No description available
- r_prop(?)
- Obsolete: use r_conflict/2 and r_conflict_prop/2 instead.
- r_prop(?, ?)
- No description available
- repair_stat(?)
- No description available
- repair_suspensions_handler(?, ?, ?)
- No description available
- repair_unify_handler(?, ?)
- No description available
- tenable(?Var)
- Check if Var is tenable.
- tent_call(+In, +Out, +Goal)
- Eagerly call Goal whenever tentative values of variables in In changes.
- tent_call(?, ?, ?, ?)
- No description available
- ?Vars tent_get ?Values
- Query the tentative values of variables in Vars.
- -Result tent_is +Expression
- Eagerly evaulate Expression using tentative assignments.
- tent_is(?, ?, ?)
- No description available
- ?Vars tent_set ++Values
- Assigns tentative values for the variables in a term.
- tentative_ground(?, ?)
- No description available
- tr_monitors(?, ?)
- No description available
Structures
- struct repair(tent, mon, ga_chg)
- No description available
Other Exports
- export meta_attribute(repair, [unify : repair_unify_handler / 2, print : print_repair / 2, suspensions : repair_suspensions_handler / 3])
- export op(900, xf, r)
- export op(900, xf, r_no_prop)
- export op(900, xf, r_prop)
- export op(900, xfx, r_conflict)
- export op(900, xfx, r_conflict_prop)
- export op(700, xfx, [tent_set, tent_get, tent_is])
- export macro(monitor_tenable / 3, tr_monitors / 2, [goal, write])
- export macro(monitor_conflict / 5, tr_monitors / 2, [goal, write])
Description
The repair library provides a framework for the integration of repair-based
search with the constraint consistency checking techniques of ECLiPSe. It
allows the implementation of classical local search methods within a CLP
environment.
It provides two facilities:
<UL>
<LI> The maintenance of tentative values for problem variables. These
tentative values may together form a partial or even inconsistent
tentative assignment. Modifications to, or extensions of this
assignment may be applied until a correct solution is found.
<LI> The monitoring of constraints (the so called repair constraints)
for being either satisfied or violated under the current tentative
assignment. Search algorithms can then access the set of
constraints that are violated at any point in the search,
and perform repairs by changing the tentative assignment
of the problem variables.
</UL><P>
Normally, the repair library communicates with another solver (such as fd or
ria) to check for constraint violations.</P>
About
- Author: Hani El-Sakkout, Stefano Novello, Joachim Schimpf
- Copyright © Imperial College London and ICL
- Date: $Date: 2002/05/13 15:57:36 $
Generated from repair.eci on Wed May 15 03:41:19 2002