Dantzig.Problem (Danztig v0.2.0)

View Source

Summary

Types

t()

@type t() :: %Dantzig.Problem{
  constraint_counter: term(),
  constraints: term(),
  contraints_metadata: term(),
  direction: term(),
  objective: term(),
  variable_counter: term(),
  variables: term()
}

Functions

add_constraint(problem, constraint, metadata \\ nil)

@spec add_constraint(t(), Dantzig.Constraint.t(), ConstraintMetadata.t()) :: t()

decrement_objective(problem, polynomial)

increment_objective(problem, polynomial)

maximize(problem, polynomial)

minimize(problem, polynomial)

new(opts)

@spec new(Keyword.t()) :: t()

new_unmangled_variable(problem, name, opts \\ [])

new_variable(problem, suffix, opts \\ [])

new_variables(problem, prefixes, opts \\ [])

solve_for_all_variables(problem)

@spec solve_for_all_variables(t()) :: %{
  required(Dantzig.ProblemVariable.variable_namme()) =>
    Dantzig.SolvedConstraint.t()
}