Generated on: Thu Mar 29 07:46:58 PDT 2012 for custom file set | ||
|
||
// doxy/ or-tools/ src/ constraint_solver/ |
#include <constraint_solver.h>
Public Types | |
typedef AssignmentContainer < IntVar, IntVarElement > | IntContainer |
typedef AssignmentContainer < IntervalVar, IntervalVarElement > | IntervalContainer |
typedef AssignmentContainer < SequenceVar, SequenceVarElement > | SequenceContainer |
Public Member Functions | |
Assignment (Solver *const s) | |
Assignment (const Assignment *const copy) | |
Assignment. | |
virtual | ~Assignment () |
void | Clear () |
bool | Empty () const |
int | Size () const |
int | NumIntVars () const |
int | NumIntervalVars () const |
int | NumSequenceVars () const |
void | Store () |
void | Restore () |
bool | Load (const string &filename) |
Loads an assignment from a file; does not add variables to the assignment (only the variables contained in the assignment are modified). | |
bool | Load (File *file) |
if !defined(SWIG) | |
void | Load (const AssignmentProto &proto) |
bool | Save (const string &filename) const |
Saves the assignment to a file. | |
bool | Save (File *file) const |
if !defined(SWIG) | |
void | Save (AssignmentProto *const proto) const |
void | AddObjective (IntVar *const v) |
Objective. | |
IntVar * | Objective () const |
bool | HasObjective () const |
int64 | ObjectiveMin () const |
int64 | ObjectiveMax () const |
int64 | ObjectiveValue () const |
bool | ObjectiveBound () const |
void | SetObjectiveMin (int64 m) |
void | SetObjectiveMax (int64 m) |
void | SetObjectiveValue (int64 value) |
void | SetObjectiveRange (int64 l, int64 u) |
IntVarElement & | Add (IntVar *const v) |
void | Add (IntVar *const *vars, int size) |
void | Add (const std::vector< IntVar * > &v) |
IntVarElement & | FastAdd (IntVar *const v) |
Adds without checking if variable has been previously added. | |
int64 | Min (const IntVar *const v) const |
int64 | Max (const IntVar *const v) const |
int64 | Value (const IntVar *const v) const |
bool | Bound (const IntVar *const v) const |
void | SetMin (const IntVar *const v, int64 m) |
void | SetMax (const IntVar *const v, int64 m) |
void | SetRange (const IntVar *const v, int64 l, int64 u) |
void | SetValue (const IntVar *const v, int64 value) |
IntervalVarElement & | Add (IntervalVar *const v) |
Interval Var. | |
void | Add (IntervalVar *const *vars, int size) |
void | Add (const std::vector< IntervalVar * > &vars) |
IntervalVarElement & | FastAdd (IntervalVar *const v) |
Adds without checking if variable has been previously added. | |
int64 | StartMin (const IntervalVar *const v) const |
int64 | StartMax (const IntervalVar *const v) const |
int64 | StartValue (const IntervalVar *const v) const |
int64 | DurationMin (const IntervalVar *const v) const |
int64 | DurationMax (const IntervalVar *const v) const |
int64 | DurationValue (const IntervalVar *const c) const |
int64 | EndMin (const IntervalVar *const v) const |
int64 | EndMax (const IntervalVar *const v) const |
int64 | EndValue (const IntervalVar *const v) const |
int64 | PerformedMin (const IntervalVar *const v) const |
int64 | PerformedMax (const IntervalVar *const v) const |
int64 | PerformedValue (const IntervalVar *const v) const |
void | SetStartMin (const IntervalVar *const v, int64 m) |
void | SetStartMax (const IntervalVar *const v, int64 m) |
void | SetStartRange (const IntervalVar *const v, int64 mi, int64 ma) |
void | SetStartValue (const IntervalVar *const v, int64 value) |
void | SetDurationMin (const IntervalVar *const v, int64 m) |
void | SetDurationMax (const IntervalVar *const v, int64 m) |
void | SetDurationRange (const IntervalVar *const v, int64 mi, int64 ma) |
void | SetDurationValue (const IntervalVar *const v, int64 value) |
void | SetEndMin (const IntervalVar *const v, int64 m) |
void | SetEndMax (const IntervalVar *const v, int64 m) |
void | SetEndRange (const IntervalVar *const v, int64 mi, int64 ma) |
void | SetEndValue (const IntervalVar *const v, int64 value) |
void | SetPerformedMin (const IntervalVar *const v, int64 m) |
void | SetPerformedMax (const IntervalVar *const v, int64 m) |
void | SetPerformedRange (const IntervalVar *const v, int64 mi, int64 ma) |
void | SetPerformedValue (const IntervalVar *const v, int64 value) |
SequenceVarElement & | Add (SequenceVar *const v) |
Sequence Var. | |
void | Add (SequenceVar *const *vars, int size) |
void | Add (const std::vector< SequenceVar * > &vars) |
SequenceVarElement & | FastAdd (SequenceVar *const v) |
Adds without checking if variable has been previously added. | |
const std::vector< int > & | ForwardSequence (const SequenceVar *const v) const |
const std::vector< int > & | BackwardSequence (const SequenceVar *const v) const |
const std::vector< int > & | Unperformed (const SequenceVar *const v) const |
void | SetSequence (const SequenceVar *const v, const std::vector< int > &forward_sequence, const std::vector< int > &backward_sequence, const std::vector< int > &unperformed) |
void | SetForwardSequence (const SequenceVar *const v, const std::vector< int > &forward_sequence) |
void | SetBackwardSequence (const SequenceVar *const v, const std::vector< int > &backward_sequence) |
void | SetUnperformed (const SequenceVar *const v, const std::vector< int > &unperformed) |
void | Activate (const IntVar *const v) |
void | Deactivate (const IntVar *const v) |
bool | Activated (const IntVar *const v) const |
void | Activate (const IntervalVar *const v) |
void | Deactivate (const IntervalVar *const v) |
bool | Activated (const IntervalVar *const v) const |
void | Activate (const SequenceVar *const v) |
void | Deactivate (const SequenceVar *const v) |
bool | Activated (const SequenceVar *const v) const |
void | ActivateObjective () |
void | DeactivateObjective () |
bool | ActivatedObjective () const |
virtual string | DebugString () const |
bool | Contains (const IntVar *const var) const |
bool | Contains (const IntervalVar *const var) const |
bool | Contains (const SequenceVar *const var) const |
void | Copy (const Assignment *assignment) |
Copies the intersection of the 2 assignments to the current assignment. | |
const IntContainer & | IntVarContainer () const |
IntContainer & | MutableIntVarContainer () |
const IntervalContainer & | IntervalVarContainer () const |
IntervalContainer & | MutableIntervalVarContainer () |
const SequenceContainer & | SequenceVarContainer () const |
SequenceContainer & | MutableSequenceVarContainer () |
bool | operator== (const Assignment &assignment) const |
bool | operator!= (const Assignment &assignment) const |
An Assignment is a variable -> domains mapping It is used to report solutions to the user
Definition at line 4646 of file constraint_solver.h.
Definition at line 4648 of file constraint_solver.h.
typedef AssignmentContainer<IntervalVar, IntervalVarElement> operations_research::Assignment::IntervalContainer |
Definition at line 4650 of file constraint_solver.h.
typedef AssignmentContainer<SequenceVar, SequenceVarElement> operations_research::Assignment::SequenceContainer |
Definition at line 4652 of file constraint_solver.h.
operations_research::Assignment::Assignment | ( | Solver *const | s | ) | [explicit] |
Definition at line 456 of file assignment.cc.
operations_research::Assignment::Assignment | ( | const Assignment *const | copy | ) | [explicit] |
operations_research::Assignment::~Assignment | ( | ) | [virtual] |
Definition at line 460 of file assignment.cc.
void operations_research::Assignment::Clear | ( | ) |
Definition at line 462 of file assignment.cc.
bool operations_research::Assignment::Empty | ( | ) | const [inline] |
Definition at line 4659 of file constraint_solver.h.
int operations_research::Assignment::Size | ( | ) | const [inline] |
Definition at line 4664 of file constraint_solver.h.
int operations_research::Assignment::NumIntVars | ( | ) | const [inline] |
Definition at line 4667 of file constraint_solver.h.
int operations_research::Assignment::NumIntervalVars | ( | ) | const [inline] |
Definition at line 4670 of file constraint_solver.h.
int operations_research::Assignment::NumSequenceVars | ( | ) | const [inline] |
Definition at line 4673 of file constraint_solver.h.
void operations_research::Assignment::Store | ( | ) |
Definition at line 469 of file assignment.cc.
void operations_research::Assignment::Restore | ( | ) |
Definition at line 478 of file assignment.cc.
bool operations_research::Assignment::Load | ( | const string & | filename | ) |
Loads an assignment from a file; does not add variables to the assignment (only the variables contained in the assignment are modified).
namespace
Definition at line 525 of file assignment.cc.
bool operations_research::Assignment::Load | ( | File * | file | ) |
void operations_research::Assignment::Load | ( | const AssignmentProto & | proto | ) |
Definition at line 572 of file assignment.cc.
bool operations_research::Assignment::Save | ( | const string & | filename | ) | const |
bool operations_research::Assignment::Save | ( | File * | file | ) | const |
void operations_research::Assignment::Save | ( | AssignmentProto *const | proto | ) | const |
Definition at line 644 of file assignment.cc.
void operations_research::Assignment::AddObjective | ( | IntVar *const | v | ) |
IntVar * operations_research::Assignment::Objective | ( | ) | const |
Definition at line 967 of file assignment.cc.
bool operations_research::Assignment::HasObjective | ( | ) | const [inline] |
Definition at line 4695 of file constraint_solver.h.
int64 operations_research::Assignment::ObjectiveMin | ( | ) | const |
Definition at line 971 of file assignment.cc.
int64 operations_research::Assignment::ObjectiveMax | ( | ) | const |
Definition at line 978 of file assignment.cc.
int64 operations_research::Assignment::ObjectiveValue | ( | ) | const |
Definition at line 985 of file assignment.cc.
bool operations_research::Assignment::ObjectiveBound | ( | ) | const |
Definition at line 992 of file assignment.cc.
void operations_research::Assignment::SetObjectiveMin | ( | int64 | m | ) |
Definition at line 999 of file assignment.cc.
void operations_research::Assignment::SetObjectiveMax | ( | int64 | m | ) |
Definition at line 1005 of file assignment.cc.
void operations_research::Assignment::SetObjectiveValue | ( | int64 | value | ) |
Definition at line 1017 of file assignment.cc.
void operations_research::Assignment::SetObjectiveRange | ( | int64 | l, | |
int64 | u | |||
) |
Definition at line 1011 of file assignment.cc.
IntVarElement & operations_research::Assignment::Add | ( | IntVar *const | v | ) |
Definition at line 705 of file assignment.cc.
void operations_research::Assignment::Add | ( | IntVar *const * | vars, | |
int | size | |||
) |
Definition at line 709 of file assignment.cc.
void operations_research::Assignment::Add | ( | const std::vector< IntVar * > & | v | ) |
Definition at line 716 of file assignment.cc.
IntVarElement & operations_research::Assignment::FastAdd | ( | IntVar *const | v | ) |
Adds without checking if variable has been previously added.
Definition at line 722 of file assignment.cc.
int64 operations_research::Assignment::Min | ( | const IntVar *const | v | ) | const |
Definition at line 726 of file assignment.cc.
int64 operations_research::Assignment::Max | ( | const IntVar *const | v | ) | const |
Definition at line 730 of file assignment.cc.
int64 operations_research::Assignment::Value | ( | const IntVar *const | v | ) | const |
Definition at line 734 of file assignment.cc.
bool operations_research::Assignment::Bound | ( | const IntVar *const | v | ) | const |
Definition at line 738 of file assignment.cc.
void operations_research::Assignment::SetMin | ( | const IntVar *const | v, | |
int64 | m | |||
) |
Definition at line 742 of file assignment.cc.
void operations_research::Assignment::SetMax | ( | const IntVar *const | v, | |
int64 | m | |||
) |
Definition at line 746 of file assignment.cc.
void operations_research::Assignment::SetRange | ( | const IntVar *const | v, | |
int64 | l, | |||
int64 | u | |||
) |
Definition at line 750 of file assignment.cc.
void operations_research::Assignment::SetValue | ( | const IntVar *const | v, | |
int64 | value | |||
) |
Definition at line 754 of file assignment.cc.
IntervalVarElement & operations_research::Assignment::Add | ( | IntervalVar *const | v | ) |
void operations_research::Assignment::Add | ( | IntervalVar *const * | vars, | |
int | size | |||
) |
Definition at line 764 of file assignment.cc.
void operations_research::Assignment::Add | ( | const std::vector< IntervalVar * > & | vars | ) |
Definition at line 771 of file assignment.cc.
IntervalVarElement & operations_research::Assignment::FastAdd | ( | IntervalVar *const | v | ) |
Adds without checking if variable has been previously added.
Definition at line 777 of file assignment.cc.
int64 operations_research::Assignment::StartMin | ( | const IntervalVar *const | v | ) | const |
Definition at line 781 of file assignment.cc.
int64 operations_research::Assignment::StartMax | ( | const IntervalVar *const | v | ) | const |
Definition at line 785 of file assignment.cc.
int64 operations_research::Assignment::StartValue | ( | const IntervalVar *const | v | ) | const |
Definition at line 789 of file assignment.cc.
int64 operations_research::Assignment::DurationMin | ( | const IntervalVar *const | v | ) | const |
Definition at line 793 of file assignment.cc.
int64 operations_research::Assignment::DurationMax | ( | const IntervalVar *const | v | ) | const |
Definition at line 797 of file assignment.cc.
int64 operations_research::Assignment::DurationValue | ( | const IntervalVar *const | c | ) | const |
Definition at line 801 of file assignment.cc.
int64 operations_research::Assignment::EndMin | ( | const IntervalVar *const | v | ) | const |
Definition at line 805 of file assignment.cc.
int64 operations_research::Assignment::EndMax | ( | const IntervalVar *const | v | ) | const |
Definition at line 809 of file assignment.cc.
int64 operations_research::Assignment::EndValue | ( | const IntervalVar *const | v | ) | const |
Definition at line 813 of file assignment.cc.
int64 operations_research::Assignment::PerformedMin | ( | const IntervalVar *const | v | ) | const |
Definition at line 817 of file assignment.cc.
int64 operations_research::Assignment::PerformedMax | ( | const IntervalVar *const | v | ) | const |
Definition at line 821 of file assignment.cc.
int64 operations_research::Assignment::PerformedValue | ( | const IntervalVar *const | v | ) | const |
Definition at line 825 of file assignment.cc.
void operations_research::Assignment::SetStartMin | ( | const IntervalVar *const | v, | |
int64 | m | |||
) |
Definition at line 829 of file assignment.cc.
void operations_research::Assignment::SetStartMax | ( | const IntervalVar *const | v, | |
int64 | m | |||
) |
Definition at line 833 of file assignment.cc.
void operations_research::Assignment::SetStartRange | ( | const IntervalVar *const | v, | |
int64 | mi, | |||
int64 | ma | |||
) |
Definition at line 837 of file assignment.cc.
void operations_research::Assignment::SetStartValue | ( | const IntervalVar *const | v, | |
int64 | value | |||
) |
Definition at line 841 of file assignment.cc.
void operations_research::Assignment::SetDurationMin | ( | const IntervalVar *const | v, | |
int64 | m | |||
) |
Definition at line 845 of file assignment.cc.
void operations_research::Assignment::SetDurationMax | ( | const IntervalVar *const | v, | |
int64 | m | |||
) |
Definition at line 849 of file assignment.cc.
void operations_research::Assignment::SetDurationRange | ( | const IntervalVar *const | v, | |
int64 | mi, | |||
int64 | ma | |||
) |
Definition at line 853 of file assignment.cc.
void operations_research::Assignment::SetDurationValue | ( | const IntervalVar *const | v, | |
int64 | value | |||
) |
Definition at line 858 of file assignment.cc.
void operations_research::Assignment::SetEndMin | ( | const IntervalVar *const | v, | |
int64 | m | |||
) |
Definition at line 862 of file assignment.cc.
void operations_research::Assignment::SetEndMax | ( | const IntervalVar *const | v, | |
int64 | m | |||
) |
Definition at line 866 of file assignment.cc.
void operations_research::Assignment::SetEndRange | ( | const IntervalVar *const | v, | |
int64 | mi, | |||
int64 | ma | |||
) |
Definition at line 870 of file assignment.cc.
void operations_research::Assignment::SetEndValue | ( | const IntervalVar *const | v, | |
int64 | value | |||
) |
Definition at line 874 of file assignment.cc.
void operations_research::Assignment::SetPerformedMin | ( | const IntervalVar *const | v, | |
int64 | m | |||
) |
Definition at line 878 of file assignment.cc.
void operations_research::Assignment::SetPerformedMax | ( | const IntervalVar *const | v, | |
int64 | m | |||
) |
Definition at line 882 of file assignment.cc.
void operations_research::Assignment::SetPerformedRange | ( | const IntervalVar *const | v, | |
int64 | mi, | |||
int64 | ma | |||
) |
Definition at line 886 of file assignment.cc.
void operations_research::Assignment::SetPerformedValue | ( | const IntervalVar *const | v, | |
int64 | value | |||
) |
Definition at line 891 of file assignment.cc.
SequenceVarElement & operations_research::Assignment::Add | ( | SequenceVar *const | v | ) |
void operations_research::Assignment::Add | ( | SequenceVar *const * | vars, | |
int | size | |||
) |
Definition at line 901 of file assignment.cc.
void operations_research::Assignment::Add | ( | const std::vector< SequenceVar * > & | vars | ) |
Definition at line 908 of file assignment.cc.
SequenceVarElement & operations_research::Assignment::FastAdd | ( | SequenceVar *const | v | ) |
Adds without checking if variable has been previously added.
Definition at line 914 of file assignment.cc.
const std::vector< int > & operations_research::Assignment::ForwardSequence | ( | const SequenceVar *const | v | ) | const |
Definition at line 918 of file assignment.cc.
const std::vector< int > & operations_research::Assignment::BackwardSequence | ( | const SequenceVar *const | v | ) | const |
Definition at line 923 of file assignment.cc.
const std::vector< int > & operations_research::Assignment::Unperformed | ( | const SequenceVar *const | v | ) | const |
Definition at line 928 of file assignment.cc.
void operations_research::Assignment::SetSequence | ( | const SequenceVar *const | v, | |
const std::vector< int > & | forward_sequence, | |||
const std::vector< int > & | backward_sequence, | |||
const std::vector< int > & | unperformed | |||
) |
Definition at line 933 of file assignment.cc.
void operations_research::Assignment::SetForwardSequence | ( | const SequenceVar *const | v, | |
const std::vector< int > & | forward_sequence | |||
) |
Definition at line 942 of file assignment.cc.
void operations_research::Assignment::SetBackwardSequence | ( | const SequenceVar *const | v, | |
const std::vector< int > & | backward_sequence | |||
) |
Definition at line 948 of file assignment.cc.
void operations_research::Assignment::SetUnperformed | ( | const SequenceVar *const | v, | |
const std::vector< int > & | unperformed | |||
) |
Definition at line 954 of file assignment.cc.
void operations_research::Assignment::Activate | ( | const IntVar *const | v | ) |
Definition at line 1023 of file assignment.cc.
void operations_research::Assignment::Deactivate | ( | const IntVar *const | v | ) |
Definition at line 1027 of file assignment.cc.
bool operations_research::Assignment::Activated | ( | const IntVar *const | v | ) | const |
Definition at line 1031 of file assignment.cc.
void operations_research::Assignment::Activate | ( | const IntervalVar *const | v | ) |
Definition at line 1035 of file assignment.cc.
void operations_research::Assignment::Deactivate | ( | const IntervalVar *const | v | ) |
Definition at line 1039 of file assignment.cc.
bool operations_research::Assignment::Activated | ( | const IntervalVar *const | v | ) | const |
Definition at line 1043 of file assignment.cc.
void operations_research::Assignment::Activate | ( | const SequenceVar *const | v | ) |
Definition at line 1047 of file assignment.cc.
void operations_research::Assignment::Deactivate | ( | const SequenceVar *const | v | ) |
Definition at line 1051 of file assignment.cc.
bool operations_research::Assignment::Activated | ( | const SequenceVar *const | v | ) | const |
Definition at line 1055 of file assignment.cc.
void operations_research::Assignment::ActivateObjective | ( | ) |
Definition at line 1059 of file assignment.cc.
void operations_research::Assignment::DeactivateObjective | ( | ) |
Definition at line 1065 of file assignment.cc.
bool operations_research::Assignment::ActivatedObjective | ( | ) | const |
Definition at line 1071 of file assignment.cc.
string operations_research::Assignment::DebugString | ( | ) | const [virtual] |
Reimplemented from operations_research::PropagationBaseObject.
Definition at line 691 of file assignment.cc.
bool operations_research::Assignment::Contains | ( | const IntVar *const | var | ) | const |
Definition at line 1078 of file assignment.cc.
bool operations_research::Assignment::Contains | ( | const IntervalVar *const | var | ) | const |
Definition at line 1082 of file assignment.cc.
bool operations_research::Assignment::Contains | ( | const SequenceVar *const | var | ) | const |
Definition at line 1086 of file assignment.cc.
void operations_research::Assignment::Copy | ( | const Assignment * | assignment | ) |
Copies the intersection of the 2 assignments to the current assignment.
Definition at line 1090 of file assignment.cc.
const IntContainer& operations_research::Assignment::IntVarContainer | ( | ) | const [inline] |
Definition at line 4799 of file constraint_solver.h.
IntContainer& operations_research::Assignment::MutableIntVarContainer | ( | ) | [inline] |
Definition at line 4802 of file constraint_solver.h.
const IntervalContainer& operations_research::Assignment::IntervalVarContainer | ( | ) | const [inline] |
Definition at line 4805 of file constraint_solver.h.
IntervalContainer& operations_research::Assignment::MutableIntervalVarContainer | ( | ) | [inline] |
Definition at line 4808 of file constraint_solver.h.
const SequenceContainer& operations_research::Assignment::SequenceVarContainer | ( | ) | const [inline] |
Definition at line 4811 of file constraint_solver.h.
SequenceContainer& operations_research::Assignment::MutableSequenceVarContainer | ( | ) | [inline] |
Definition at line 4814 of file constraint_solver.h.
bool operations_research::Assignment::operator== | ( | const Assignment & | assignment | ) | const [inline] |
Definition at line 4817 of file constraint_solver.h.
bool operations_research::Assignment::operator!= | ( | const Assignment & | assignment | ) | const [inline] |
Definition at line 4823 of file constraint_solver.h.