Home
last modified time | relevance | path

Searched refs:integer_trail_ (Results 1 – 25 of 43) sorted by relevance

12

/dports/math/py-or-tools/or-tools-9.2/ortools/sat/
H A Dinteger_expr.cc214 if (!integer_trail_->Enqueue( in Propagate()
359 if (!integer_trail_->Enqueue( in Propagate()
369 if (!integer_trail_->Enqueue( in Propagate()
430 if (!integer_trail_->Enqueue( in Propagate()
528 if (!integer_trail_->Enqueue( in PropagateLinearUpperBound()
719 if (!integer_trail_->SafeEnqueue( in PropagateWhenAllNonNegative()
732 if (!integer_trail_->SafeEnqueue( in PropagateWhenAllNonNegative()
793 if (!integer_trail_->SafeEnqueue( in PropagateMaxOnPositiveProduct()
804 if (!integer_trail_->SafeEnqueue( in PropagateMaxOnPositiveProduct()
842 if (!integer_trail_->SafeEnqueue( in Propagate()
[all …]
H A Dprecedences.cc256 if (integer_trail_->IsOptional(tail)) { in AddArc()
260 if (integer_trail_->IsOptional(head)) { in AddArc()
265 integer_trail_->IsOptional(offset_var)) { in AddArc()
296 if (lb == integer_trail_->UpperBound(offset_var)) { in AddArc()
360 if (integer_trail_->IsOptional(a.head_var)) { in AddArc()
474 if (!integer_trail_->IsOptional(arc.head_var)) { in EnqueueAndCheck()
489 return integer_trail_->Enqueue( in EnqueueAndCheck()
501 integer_trail_->LowerBound(arc.head_var)) { in NoPropagationLeft()
610 if (integer_trail_->IsOptional(arc.head_var)) { in AnalyzePositiveCycle()
612 integer_trail_->IsIgnoredLiteral(arc.head_var)); in AnalyzePositiveCycle()
[all …]
H A Dcumulative_energy.cc87 integer_trail_(integer_trail), in CumulativeEnergyConstraint()
106 const IntegerValue capacity_max = integer_trail_->UpperBound(capacity_); in Propagate()
116 integer_trail_->UpperBound(energies_[task]) == 0) { in Propagate()
146 integer_trail_->LowerBound(energies_[current_task]), in Propagate()
147 integer_trail_->UpperBound(energies_[current_task])); in Propagate()
151 integer_trail_->UpperBound(energies_[current_task])); in Propagate()
174 if (new_capacity_min > integer_trail_->LowerBound(capacity_)) { in Propagate()
239 integer_trail_->UpperBoundAsLiteral(capacity_.var)); in Propagate()
288 integer_trail_(integer_trail), in CumulativeIsAfterSubsetConstraint()
372 integer_trail_->LowerBoundAsLiteral(demands_[t].var)); in Propagate()
[all …]
H A Dinteger.cc579 CHECK_LE(target, integer_trail_.size()); in Untrail()
588 integer_trail_.resize(target); in Untrail()
616 integer_trail_.reserve(size); in ReserveSpaceForNumVariables()
630 DCHECK_EQ(vars_.size(), integer_trail_.size()); in AddIntegerVariable()
635 integer_trail_.push_back({lower_bound, i}); in AddIntegerVariable()
754 integer_trail_[cached_index].var == var) { in FindTrailIndexOfVarBefore()
1002 if (limit < integer_trail_.size()) { in DebugString()
1031 integer_trail_.size()); in Enqueue()
1475 integer_trail_.push_back({/*bound=*/i_lit.bound, in EnqueueInternal()
1790 const TrailEntry& entry = integer_trail_[i]; in AppendNewBounds()
[all …]
H A Dscheduling_constraints.cc34 integer_trail_(model->GetOrCreate<IntegerTrail>()), in SelectedMinPropagator()
46 IntegerTrail* integer_trail_; member in operations_research::sat::SelectedMinPropagator
75 if (integer_trail_->OptionalLiteralIndex(i_lit.var) != in Propagate()
83 if (i_lit.bound > integer_trail_->UpperBound(i_lit.var)) { in Propagate()
103 const IntegerValue target_min = integer_trail_->LowerBound(target_); in Propagate()
104 const IntegerValue target_max = integer_trail_->UpperBound(target_); in Propagate()
118 const IntegerValue var_min = integer_trail_->LowerBound(exprs_[i]); in Propagate()
119 const IntegerValue var_max = integer_trail_->UpperBound(exprs_[i]); in Propagate()
198 DCHECK_GE(integer_trail_->LowerBound(target_), min_of_mins); in Propagate()
214 if (target_min > integer_trail_->LowerBound(unique_selected_var)) { in Propagate()
[all …]
H A Dlb_tree_search.cc28 integer_trail_(model->GetOrCreate<IntegerTrail>()), in LbTreeSearch()
170 integer_trail_->LowerBound(objective_var_)); in Search()
181 if (integer_trail_->LowerBound(objective_var_) > in Search()
182 integer_trail_->LevelZeroLowerBound(objective_var_)) { in Search()
184 integer_trail_->ReasonFor(IntegerLiteral::GreaterOrEqual( in Search()
194 integer_trail_->LowerBound(objective_var_)); in Search()
214 bound, integer_trail_->LevelZeroUpperBound(objective_var_)); in Search()
230 if (integer_trail_->LowerBound(objective_var_) > in Search()
231 integer_trail_->LevelZeroLowerBound(objective_var_)) { in Search()
233 integer_trail_->ReasonFor(IntegerLiteral::GreaterOrEqual( in Search()
[all …]
H A Dtimetable.cc62 integer_trail_(model->GetOrCreate<IntegerTrail>()) {
107 const IntegerValue ub = integer_trail_->UpperBound(times_[e]);
156 if (integer_trail_->UpperBound(times_[e]) > t) continue;
162 } else if (integer_trail_->LowerBound(times_[e]) > t) {
174 const IntegerValue end = integer_trail_->UpperBound(times_[event]);
223 return integer_trail_->Enqueue(times_[event].LowerOrEqual(new_end),
275 return integer_trail_->ConditionalEnqueue(
286 integer_trail_(integer_trail),
575 integer_trail_->UpperBoundAsLiteral(capacity_.var));
606 integer_trail_->LowerBoundAsLiteral(demands_[t].var));
[all …]
H A Dlinear_programming_constraint.cc165 implied_bounds_processor_({}, integer_trail_, in LinearProgrammingConstraint()
301 if (integer_trail_->IsFixedAtLevelZero(var)) { in CreateLpFromConstraintManager()
544 integer_trail_->RegisterReversibleClass(this); in RegisterWith()
1499 return integer_trail_->ReportConflict({}); in Propagate()
2641 if (integer_trail_->LowerBound(var) == 0 && in HeuristicLpMostInfeasibleBinary()
2642 integer_trail_->UpperBound(var) == 1) { in HeuristicLpMostInfeasibleBinary()
2687 if (integer_trail_->LowerBound(var) == 0 && in HeuristicLpReducedCostBinary()
2688 integer_trail_->UpperBound(var) == 1) { in HeuristicLpReducedCostBinary()
2743 if (integer_trail_->IsFixed(var)) continue; in HeuristicLpReducedCostBinary()
2788 if (integer_trail_->IsFixed(var)) continue; in UpdateAverageReducedCosts()
[all …]
H A Dpseudo_costs.cc28 : integer_trail_(*model->GetOrCreate<IntegerTrail>()),
30 const int num_vars = integer_trail_.NumIntegerVariables().value();
51 if (integer_trail_.IsCurrentlyIgnored(decision.var)) continue;
71 if (integer_trail_.IsCurrentlyIgnored(positive_var)) continue;
72 const IntegerValue lb = integer_trail_.LowerBound(positive_var);
73 const IntegerValue ub = integer_trail_.UpperBound(positive_var);
H A Dintervals.cc70 integer_trail_(model->GetOrCreate<IntegerTrail>()), in SchedulingConstraintHelper()
103 integer_trail_(model->GetOrCreate<IntegerTrail>()), in SchedulingConstraintHelper()
145 integer_trail_->RegisterReversibleClass(this); in RegisterWith()
152 IntegerValue smin = integer_trail_->LowerBound(starts_[t]); in UpdateCachedValues()
153 IntegerValue smax = integer_trail_->UpperBound(starts_[t]); in UpdateCachedValues()
154 IntegerValue emin = integer_trail_->LowerBound(ends_[t]); in UpdateCachedValues()
155 IntegerValue emax = integer_trail_->UpperBound(ends_[t]); in UpdateCachedValues()
164 IntegerValue dmax = integer_trail_->UpperBound(sizes_[t]); in UpdateCachedValues()
406 if (emin_after <= integer_trail_->LowerBound(ends_[after])) { in AddReasonForBeingBefore()
421 integer_trail_->AppendRelaxedLinearReason( in AddReasonForBeingBefore()
[all …]
H A Dtimetable.h94 IntegerTrail* integer_trail_; variable
160 return integer_trail_->LowerBound(capacity_); in CapacityMin()
164 return integer_trail_->UpperBound(capacity_); in CapacityMax()
168 return integer_trail_->LowerBound(demands_[task_id]); in DemandMin()
172 return integer_trail_->UpperBound(demands_[task_id]); in DemandMax()
189 IntegerTrail* integer_trail_; variable
H A Dcp_constraints.cc52 integer_trail_->EnqueueLiteral(sum == value_ ? u.Negated() : u, in Propagate()
90 integer_trail_(model->GetOrCreate<IntegerTrail>()) {} in GreaterThanAtLeastOneOfPropagator()
103 const IntegerValue current_min = integer_trail_->LowerBound(target_var_); in Propagate()
108 integer_trail_->LowerBound(vars_[i]) + offsets_[i]); in Propagate()
132 return integer_trail_->Enqueue( in Propagate()
H A Dtimetable_edgefinding.h91 return integer_trail_->LowerBound(demands_[task_index]); in DemandMin()
95 return integer_trail_->UpperBound(capacity_); in CapacityMax()
107 IntegerTrail* integer_trail_; variable
H A Dimplied_bounds.cc43 level_zero_lower_bounds_[var], integer_trail_->LevelZeroLowerBound(var)); in Add()
55 if (integer_trail_->LevelZeroLowerBound(var) + 1 >= in Add()
56 integer_trail_->LevelZeroUpperBound(var)) { in Add()
73 if (integer_trail_->LevelZeroUpperBound(var) == integer_literal.bound) { in Add()
100 DCHECK_GT(deduction, integer_trail_->LevelZeroLowerBound(var)); in Add()
112 var, integer_trail_->LevelZeroLowerBound(var)) in Add()
137 if (integer_trail_->IsOptional(var)) return; in Add()
176 level_zero_lower_bounds_[var], integer_trail_->LevelZeroLowerBound(var)); in GetImpliedBounds()
202 integer_trail_->AppendNewBounds(&tmp_integer_literals_); in ProcessIntegerTrail()
233 if (!integer_trail_->Enqueue( in EnqueueNewDeductions()
H A Dintervals.h52 integer_trail_(model->GetOrCreate<IntegerTrail>()) {} in IntervalsRepository()
123 return integer_trail_->LowerBound(sizes_[i]); in MinSize()
128 return integer_trail_->UpperBound(sizes_[i]); in MaxSize()
144 IntegerTrail* integer_trail_; variable
229 return integer_trail_->UpperBound(sizes_[t]); in SizeMax()
399 IntegerTrail* integer_trail_; variable
463 return integer_trail_->IsFixed(starts_[t]); in StartIsFixed()
467 return integer_trail_->IsFixed(ends_[t]); in EndIsFixed()
471 return integer_trail_->IsFixed(sizes_[t]); in SizeIsFixed()
520 if (integer_trail_->UpperBound(a) <= upper_bound) { in AddGenericReason()
[all …]
H A Dtimetable_edgefinding.cc38 integer_trail_(integer_trail) { in TimeTableEdgeFinding()
59 const int64_t old_timestamp = integer_trail_->num_enqueues(); in Propagate()
68 if (old_timestamp == integer_trail_->num_enqueues()) break; in Propagate()
315 integer_trail_->UpperBoundAsLiteral(capacity_.var)); in IncreaseStartMin()
322 integer_trail_->LowerBoundAsLiteral(demands_[task_index].var)); in IncreaseStartMin()
336 integer_trail_->LowerBoundAsLiteral(demands_[t].var)); in IncreaseStartMin()
H A Doptimization.cc1318 integer_trail_(model->GetOrCreate<IntegerTrail>()), in CoreBasedOptimizer()
1349 const IntegerValue value = integer_trail_->LowerBound(term.var); in ProcessSolution()
1376 return integer_trail_->Enqueue( in ProcessSolution()
1397 if (!integer_trail_->Enqueue(IntegerLiteral::GreaterOrEqual( in PropagateObjectiveBounds()
1430 CHECK(!integer_trail_->IsCurrentlyIgnored(term.var)); in PropagateObjectiveBounds()
1431 if (!integer_trail_->Enqueue( in PropagateObjectiveBounds()
1494 std::min(term.cover_ub, integer_trail_->UpperBound(var)); in CoverOptimization()
1499 if (best <= integer_trail_->LowerBound(var)) continue; in CoverOptimization()
1508 while (best > integer_trail_->LowerBound(var)) { in CoverOptimization()
1514 best = integer_trail_->LowerBound(var); in CoverOptimization()
[all …]
H A Dall_different.cc113 integer_trail_(integer_trail) { in AllDifferentConstraint()
122 variable_min_value_[x] = integer_trail_->LowerBound(variables_[x]).value(); in AllDifferentConstraint()
123 variable_max_value_[x] = integer_trail_->UpperBound(variables_[x]).value(); in AllDifferentConstraint()
262 const int64_t min_value = integer_trail_->LowerBound(variables_[x]).value(); in Propagate()
263 const int64_t max_value = integer_trail_->UpperBound(variables_[x]).value(); in Propagate()
439 : integer_trail_(integer_trail) { in AllDifferentBoundsPropagator()
499 entry.lb = integer_trail_->LowerBound(entry.expr); in PropagateLowerBounds()
500 entry.ub = integer_trail_->UpperBound(entry.expr); in PropagateLowerBounds()
586 if (!integer_trail_->SafeEnqueue(expr.GreaterOrEqual(he + 1), in PropagateLowerBoundsInternal()
633 if (end > integer_trail_->UpperBound(expr)) return true; in PropagateLowerBoundsInternal()
H A Dlinear_constraint_manager.cc331 const IntegerValue lb = integer_trail_.LevelZeroLowerBound(var); in SimplifyConstraint()
332 const IntegerValue ub = integer_trail_.LevelZeroUpperBound(var); in SimplifyConstraint()
357 const IntegerValue lb = integer_trail_.LevelZeroLowerBound(var); in SimplifyConstraint()
358 const IntegerValue ub = integer_trail_.LevelZeroUpperBound(var); in SimplifyConstraint()
404 const IntegerValue ub = integer_trail_.LevelZeroUpperBound(var); in SimplifyConstraint()
409 const IntegerValue lb = integer_trail_.LevelZeroLowerBound(var); in SimplifyConstraint()
429 const IntegerValue lb = integer_trail_.LevelZeroLowerBound(var); in SimplifyConstraint()
434 const IntegerValue ub = integer_trail_.LevelZeroUpperBound(var); in SimplifyConstraint()
456 integer_trail_.num_level_zero_enqueues() > last_simplification_timestamp_; in ChangeLp()
457 last_simplification_timestamp_ = integer_trail_.num_level_zero_enqueues(); in ChangeLp()
H A Dcp_constraints.h46 integer_trail_(integer_trail) {} in BooleanXorPropagator()
56 IntegerTrail* integer_trail_; variable
90 IntegerTrail* integer_trail_; variable
H A Dcumulative_energy.h65 IntegerTrail* integer_trail_;
105 IntegerTrail* integer_trail_;
H A Dinteger_search.cc768 integer_trail_(model->GetOrCreate<IntegerTrail>()), in IntegerSearchHelper()
783 if (integer_trail_->HasPendingRootLevelDeduction()) { in BeforeTakingDecision()
818 if (integer_trail_->InPropagationLoop()) { in GetDecision()
820 integer_trail_->NextVariableToBranchOnInPropagationLoop(); in GetDecision()
823 GreaterOrEqualToMiddleValue(var, integer_trail_); in GetDecision()
830 integer_trail_->CurrentBranchHadAnIncompletePropagation()) { in GetDecision()
831 const IntegerVariable var = integer_trail_->FirstUnassignedVariable(); in GetDecision()
833 new_decision.integer_literal = AtMinValue(var, integer_trail_); in GetDecision()
871 old_obj_lb = integer_trail_->LowerBound(objective_var_); in TakeDecision()
872 old_obj_ub = integer_trail_->UpperBound(objective_var_); in TakeDecision()
[all …]
H A Dinteger_expr.h92 IntegerTrail* integer_trail_; variable
143 IntegerTrail* integer_trail_; variable
181 IntegerTrail* integer_trail_; variable
213 IntegerTrail* integer_trail_; variable
248 IntegerTrail* integer_trail_; variable
286 IntegerTrail* integer_trail_; variable
306 IntegerTrail* integer_trail_; variable
332 IntegerTrail* integer_trail_; variable
350 IntegerTrail* integer_trail_; variable
H A Dprobing.cc37 integer_trail_(model->GetOrCreate<IntegerTrail>()), in Prober()
72 integer_trail_->AppendNewBounds(&new_integer_bounds_); in ProbeOneVariableInternal()
141 integer_trail_->InitialVariableDomain(prev_var); in ProbeOneVariableInternal()
146 if (!integer_trail_->UpdateInitialDomain(prev_var, new_domain)) { in ProbeOneVariableInternal()
168 if (new_bound > integer_trail_->LowerBound(var)) { in ProbeOneVariableInternal()
170 if (!integer_trail_->Enqueue( in ProbeOneVariableInternal()
H A Dfeasibility_pump.cc41 integer_trail_(model->GetOrCreate<IntegerTrail>()), in FeasibilityPump()
240 const double lb = ToDouble(integer_trail_->LevelZeroLowerBound(cp_var)); in InitializeWorkingLP()
241 const double ub = ToDouble(integer_trail_->LevelZeroUpperBound(cp_var)); in InitializeWorkingLP()
410 const double lb = ToDouble(integer_trail_->LevelZeroLowerBound(cp_var)); in UpdateBoundsOfLpVariables()
411 const double ub = ToDouble(integer_trail_->LevelZeroUpperBound(cp_var)); in UpdateBoundsOfLpVariables()
586 const IntegerValue lb = integer_trail_->LowerBound(var); in PropagationRounding()
587 const IntegerValue ub = integer_trail_->UpperBound(var); in PropagationRounding()

12