Google OR-Tools v9.11
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
intervals.h File Reference
#include <cstdint>
#include <functional>
#include <memory>
#include <optional>
#include <string>
#include <utility>
#include <vector>
#include "absl/base/attributes.h"
#include "absl/container/flat_hash_map.h"
#include "absl/log/check.h"
#include "absl/strings/string_view.h"
#include "absl/types/span.h"
#include "ortools/base/strong_vector.h"
#include "ortools/sat/cp_constraints.h"
#include "ortools/sat/implied_bounds.h"
#include "ortools/sat/integer.h"
#include "ortools/sat/integer_expr.h"
#include "ortools/sat/linear_constraint.h"
#include "ortools/sat/model.h"
#include "ortools/sat/pb_constraint.h"
#include "ortools/sat/precedences.h"
#include "ortools/sat/sat_base.h"
#include "ortools/sat/sat_solver.h"
#include "ortools/util/rev.h"
#include "ortools/util/strong_integers.h"

Go to the source code of this file.

Classes

class  operations_research::sat::IntervalsRepository
 
struct  operations_research::sat::IntervalsRepository::CumulativeHelper
 
struct  operations_research::sat::TaskTime
 
struct  operations_research::sat::CachedTaskBounds
 
class  operations_research::sat::SchedulingConstraintHelper
 
struct  operations_research::sat::SchedulingConstraintHelper::ProfileEvent
 
class  operations_research::sat::SchedulingDemandHelper
 

Namespaces

namespace  operations_research
 In SWIG mode, we don't want anything besides these top-level includes.
 
namespace  operations_research::sat
 

Functions

 operations_research::sat::DEFINE_STRONG_INDEX_TYPE (IntervalVariable)
 
const IntervalVariable operations_research::sat::kNoIntervalVariable (-1)
 
IntegerValue operations_research::sat::ComputeEnergyMinInWindow (IntegerValue start_min, IntegerValue start_max, IntegerValue end_min, IntegerValue end_max, IntegerValue size_min, IntegerValue demand_min, absl::Span< const LiteralValueValue > filtered_energy, IntegerValue window_start, IntegerValue window_end)
 
std::function< int64_t(const Model &)> operations_research::sat::MinSize (IntervalVariable v)
 
std::function< int64_t(const Model &)> operations_research::sat::MaxSize (IntervalVariable v)
 
std::function< bool(const Model &)> operations_research::sat::IsOptional (IntervalVariable v)
 
std::function< Literal(const Model &)> operations_research::sat::IsPresentLiteral (IntervalVariable v)
 
std::function< IntervalVariable(Model *)> operations_research::sat::NewInterval (int64_t min_start, int64_t max_end, int64_t size)
 
std::function< IntervalVariable(Model *)> operations_research::sat::NewInterval (IntegerVariable start, IntegerVariable end, IntegerVariable size)
 
std::function< IntervalVariable(Model *)> operations_research::sat::NewIntervalWithVariableSize (int64_t min_start, int64_t max_end, int64_t min_size, int64_t max_size)
 
std::function< IntervalVariable(Model *)> operations_research::sat::NewOptionalInterval (int64_t min_start, int64_t max_end, int64_t size, Literal is_present)
 
std::function< IntervalVariable(Model *)> operations_research::sat::NewOptionalInterval (IntegerVariable start, IntegerVariable end, IntegerVariable size, Literal is_present)
 
std::function< IntervalVariable(Model *)> operations_research::sat::NewOptionalIntervalWithVariableSize (int64_t min_start, int64_t max_end, int64_t min_size, int64_t max_size, Literal is_present)
 
void operations_research::sat::AddIntegerVariableFromIntervals (SchedulingConstraintHelper *helper, Model *model, std::vector< IntegerVariable > *vars)
 Cuts helpers.
 
void operations_research::sat::AppendVariablesFromCapacityAndDemands (const AffineExpression &capacity, SchedulingDemandHelper *demands_helper, Model *model, std::vector< IntegerVariable > *vars)