|
PPL C Language Interface
1.2
|
Types and functions for MIP problems. More...
#include <ppl_c_header.h>
Related Functions | |
(Note that these are not member functions.) | |
Symbolic Constants | |
| int | PPL_OPTIMIZATION_MODE_MAXIMIZATION |
| Code of the "maximization" optimization mode. More... | |
| int | PPL_OPTIMIZATION_MODE_MINIMIZATION |
| Code of the "minimization" optimization mode. More... | |
| int | PPL_MIP_PROBLEM_STATUS_UNFEASIBLE |
| Code of the "unfeasible MIP problem" status. More... | |
| int | PPL_MIP_PROBLEM_STATUS_UNBOUNDED |
| Code of the "unbounded MIP problem" status. More... | |
| int | PPL_MIP_PROBLEM_STATUS_OPTIMIZED |
| Code of the "optimized MIP problem" status. More... | |
| int | PPL_MIP_PROBLEM_CONTROL_PARAMETER_NAME_PRICING |
| Code for the MIP problem's "pricing" control parameter name. More... | |
| int | PPL_MIP_PROBLEM_CONTROL_PARAMETER_PRICING_TEXTBOOK |
| Code of MIP problem's "textbook" pricing method. More... | |
| int | PPL_MIP_PROBLEM_CONTROL_PARAMETER_PRICING_STEEPEST_EDGE_EXACT |
| Code of MIP problem's "exact steepest-edge" pricing method. More... | |
| int | PPL_MIP_PROBLEM_CONTROL_PARAMETER_PRICING_STEEPEST_EDGE_FLOAT |
| Code of MIP problem's "float steepest-edge" pricing method. More... | |
Constructors, Assignment and Destructor | |
| int | ppl_new_MIP_Problem_from_space_dimension (ppl_MIP_Problem_t *pmip, ppl_dimension_type d) |
Builds a trivial MIP problem of dimension d and writes a handle to it at address pmip. More... | |
| int | ppl_new_MIP_Problem (ppl_MIP_Problem_t *pmip, ppl_dimension_type d, ppl_const_Constraint_System_t cs, ppl_const_Linear_Expression_t le, int m) |
Builds a MIP problem of space dimension d having feasible region cs, objective function le and optimization mode m; writes a handle to it at address pmip. More... | |
| int | ppl_new_MIP_Problem_from_MIP_Problem (ppl_MIP_Problem_t *pmip, ppl_const_MIP_Problem_t mip) |
Builds a MIP problem that is a copy of mip; writes a handle for the newly created system at address pmip. More... | |
| int | ppl_assign_MIP_Problem_from_MIP_Problem (ppl_MIP_Problem_t dst, ppl_const_MIP_Problem_t src) |
Assigns a copy of the MIP problem src to dst. More... | |
| int | ppl_delete_MIP_Problem (ppl_const_MIP_Problem_t mip) |
Invalidates the handle mip: this makes sure the corresponding resources will eventually be released. More... | |
Functions that Do Not Modify the MIP_Problem | |
| int | ppl_MIP_Problem_space_dimension (ppl_const_MIP_Problem_t mip, ppl_dimension_type *m) |
Writes to m the dimension of the vector space enclosing mip. More... | |
| int | ppl_MIP_Problem_number_of_integer_space_dimensions (ppl_const_MIP_Problem_t mip, ppl_dimension_type *m) |
Writes to m the number of integer space dimensions of mip. More... | |
| int | ppl_MIP_Problem_integer_space_dimensions (ppl_const_MIP_Problem_t mip, ppl_dimension_type ds[]) |
Writes in the first positions of the array ds all the integer space dimensions of problem mip. If the array is not big enough to hold all of the integer space dimensions, the behavior is undefined. More... | |
| int | ppl_MIP_Problem_number_of_constraints (ppl_const_MIP_Problem_t mip, ppl_dimension_type *m) |
Writes to m the number of constraints defining the feasible region of mip. More... | |
| int | ppl_MIP_Problem_constraint_at_index (ppl_const_MIP_Problem_t mip, ppl_dimension_type i, ppl_const_Constraint_t *pc) |
Writes at address pc a const handle to the i-th constraint defining the feasible region of the MIP problem mip. More... | |
| int | ppl_MIP_Problem_objective_function (ppl_const_MIP_Problem_t mip, ppl_const_Linear_Expression_t *ple) |
Writes a const handle to the linear expression defining the objective function of the MIP problem mip at address ple. More... | |
| int | ppl_MIP_Problem_optimization_mode (ppl_const_MIP_Problem_t mip) |
Returns the optimization mode of the MIP problem mip. More... | |
| int | ppl_MIP_Problem_OK (ppl_const_MIP_Problem_t mip) |
Returns a positive integer if mip is well formed, i.e., if it satisfies all its implementation invariants; returns 0 and perhaps makes some noise if mip is broken. Useful for debugging purposes. More... | |
Functions that May Modify the MIP_Problem | |
| int | ppl_MIP_Problem_clear (ppl_MIP_Problem_t mip) |
| Resets the MIP problem to be a trivial problem of space dimension 0. More... | |
| int | ppl_MIP_Problem_add_space_dimensions_and_embed (ppl_MIP_Problem_t mip, ppl_dimension_type d) |
Adds d new dimensions to the space enclosing the MIP problem mip and to mip itself. More... | |
| int | ppl_MIP_Problem_add_to_integer_space_dimensions (ppl_MIP_Problem_t mip, ppl_dimension_type ds[], size_t n) |
Sets the space dimensions that are specified in first n positions of the array ds to be integer dimensions of problem mip. The presence of duplicates in ds is a waste but an innocuous one. More... | |
| int | ppl_MIP_Problem_add_constraint (ppl_MIP_Problem_t mip, ppl_const_Constraint_t c) |
Modifies the feasible region of the MIP problem mip by adding a copy of the constraint c. More... | |
| int | ppl_MIP_Problem_add_constraints (ppl_MIP_Problem_t mip, ppl_const_Constraint_System_t cs) |
Modifies the feasible region of the MIP problem mip by adding a copy of the constraints in cs. More... | |
| int | ppl_MIP_Problem_set_objective_function (ppl_MIP_Problem_t mip, ppl_const_Linear_Expression_t le) |
Sets the objective function of the MIP problem mip to a copy of le. More... | |
| int | ppl_MIP_Problem_set_optimization_mode (ppl_MIP_Problem_t mip, int mode) |
Sets the optimization mode of the MIP problem mip to mode. More... | |
Computing the Solution of the MIP_Problem | |
| int | ppl_MIP_Problem_is_satisfiable (ppl_const_MIP_Problem_t mip) |
Returns a positive integer if mip is satisfiable; returns 0 otherwise. More... | |
| int | ppl_MIP_Problem_solve (ppl_const_MIP_Problem_t mip) |
Solves the MIP problem mip, returning an exit status. More... | |
| int | ppl_MIP_Problem_evaluate_objective_function (ppl_const_MIP_Problem_t mip, ppl_const_Generator_t g, ppl_Coefficient_t num, ppl_Coefficient_t den) |
Evaluates the objective function of mip on point g. More... | |
| int | ppl_MIP_Problem_feasible_point (ppl_const_MIP_Problem_t mip, ppl_const_Generator_t *pg) |
Writes a const handle to a feasible point for the MIP problem mip at address pg. More... | |
| int | ppl_MIP_Problem_optimizing_point (ppl_const_MIP_Problem_t mip, ppl_const_Generator_t *pg) |
Writes a const handle to an optimizing point for the MIP problem mip at address pg. More... | |
| int | ppl_MIP_Problem_optimal_value (ppl_const_MIP_Problem_t mip, ppl_Coefficient_t num, ppl_Coefficient_t den) |
Returns the optimal value for mip. More... | |
Querying/Setting Control Parameters | |
| int | ppl_MIP_Problem_get_control_parameter (ppl_const_MIP_Problem_t mip, int name) |
Returns the value of control parameter name in problem mip. More... | |
| int | ppl_MIP_Problem_set_control_parameter (ppl_MIP_Problem_t mip, int value) |
Sets control parameter value in problem mip. More... | |
| int | ppl_MIP_Problem_total_memory_in_bytes (ppl_const_MIP_Problem_t mip, size_t *sz) |
Writes into *sz the size in bytes of the memory occupied by mip. More... | |
| int | ppl_MIP_Problem_external_memory_in_bytes (ppl_const_MIP_Problem_t mip, size_t *sz) |
Writes into *sz the size in bytes of the memory managed by mip. More... | |
Types and functions for MIP problems.
The types and functions for MIP problems provide an interface towards MIP_Problem.
|
related |
Assigns a copy of the MIP problem src to dst.
Definition at line 1867 of file ppl_c_implementation_common.cc.
|
related |
Invalidates the handle mip: this makes sure the corresponding resources will eventually be released.
Definition at line 1860 of file ppl_c_implementation_common.cc.
|
related |
Modifies the feasible region of the MIP problem mip by adding a copy of the constraint c.
Definition at line 1975 of file ppl_c_implementation_common.cc.
|
related |
Modifies the feasible region of the MIP problem mip by adding a copy of the constraints in cs.
Definition at line 1985 of file ppl_c_implementation_common.cc.
|
related |
Adds d new dimensions to the space enclosing the MIP problem mip and to mip itself.
Definition at line 1953 of file ppl_c_implementation_common.cc.
|
related |
Sets the space dimensions that are specified in first n positions of the array ds to be integer dimensions of problem mip. The presence of duplicates in ds is a waste but an innocuous one.
Definition at line 1962 of file ppl_c_implementation_common.cc.
|
related |
Resets the MIP problem to be a trivial problem of space dimension 0.
Definition at line 1946 of file ppl_c_implementation_common.cc.
|
related |
Writes at address pc a const handle to the i-th constraint defining the feasible region of the MIP problem mip.
Definition at line 1915 of file ppl_c_implementation_common.cc.
|
related |
Code for the MIP problem's "pricing" control parameter name.
Definition at line 2437 of file ppl_c_header.h.
|
related |
Code of MIP problem's "exact steepest-edge" pricing method.
Definition at line 2447 of file ppl_c_header.h.
|
related |
Code of MIP problem's "float steepest-edge" pricing method.
Definition at line 2452 of file ppl_c_header.h.
|
related |
Code of MIP problem's "textbook" pricing method.
Definition at line 2442 of file ppl_c_header.h.
|
related |
Evaluates the objective function of mip on point g.
| mip | The MIP problem defining the objective function; |
| g | The generator on which the objective function will be evaluated; |
| num | Will be assigned the numerator of the objective function value; |
| den | Will be assigned the denominator of the objective function value; |
Definition at line 2027 of file ppl_c_implementation_common.cc.
|
related |
Writes into *sz the size in bytes of the memory managed by mip.
Definition at line 2103 of file ppl_c_implementation_common.cc.
|
related |
Writes a const handle to a feasible point for the MIP problem mip at address pg.
Definition at line 2041 of file ppl_c_implementation_common.cc.
Returns the value of control parameter name in problem mip.
Definition at line 2070 of file ppl_c_implementation_common.cc.
|
related |
Writes in the first positions of the array ds all the integer space dimensions of problem mip. If the array is not big enough to hold all of the integer space dimensions, the behavior is undefined.
Definition at line 1894 of file ppl_c_implementation_common.cc.
|
related |
Returns a positive integer if mip is satisfiable; returns 0 otherwise.
Definition at line 2015 of file ppl_c_implementation_common.cc.
|
related |
Writes to m the number of constraints defining the feasible region of mip.
Definition at line 1906 of file ppl_c_implementation_common.cc.
|
related |
Writes to m the number of integer space dimensions of mip.
Definition at line 1885 of file ppl_c_implementation_common.cc.
|
related |
Writes a const handle to the linear expression defining the objective function of the MIP problem mip at address ple.
Definition at line 1931 of file ppl_c_implementation_common.cc.
|
related |
Returns a positive integer if mip is well formed, i.e., if it satisfies all its implementation invariants; returns 0 and perhaps makes some noise if mip is broken. Useful for debugging purposes.
Definition at line 2089 of file ppl_c_implementation_common.cc.
|
related |
Returns the optimal value for mip.
| mip | The MIP problem; |
| num | Will be assigned the numerator of the optimal value; |
| den | Will be assigned the denominator of the optimal value. |
Definition at line 2059 of file ppl_c_implementation_common.cc.
|
related |
Returns the optimization mode of the MIP problem mip.
Definition at line 1940 of file ppl_c_implementation_common.cc.
|
related |
Writes a const handle to an optimizing point for the MIP problem mip at address pg.
Definition at line 2050 of file ppl_c_implementation_common.cc.
Sets control parameter value in problem mip.
Definition at line 2079 of file ppl_c_implementation_common.cc.
|
related |
Sets the objective function of the MIP problem mip to a copy of le.
Definition at line 1995 of file ppl_c_implementation_common.cc.
Sets the optimization mode of the MIP problem mip to mode.
Definition at line 2005 of file ppl_c_implementation_common.cc.
|
related |
Solves the MIP problem mip, returning an exit status.
PPL_MIP_PROBLEM_STATUS_UNFEASIBLE if the MIP problem is not satisfiable; PPL_MIP_PROBLEM_STATUS_UNBOUNDED if the MIP problem is satisfiable but there is no finite bound to the value of the objective function; PPL_MIP_PROBLEM_STATUS_OPTIMIZED if the MIP problem admits an optimal solution. Definition at line 2021 of file ppl_c_implementation_common.cc.
|
related |
Writes to m the dimension of the vector space enclosing mip.
Definition at line 1877 of file ppl_c_implementation_common.cc.
|
related |
Code of the "optimized MIP problem" status.
Definition at line 2432 of file ppl_c_header.h.
|
related |
Code of the "unbounded MIP problem" status.
Definition at line 2427 of file ppl_c_header.h.
|
related |
Code of the "unfeasible MIP problem" status.
Definition at line 2422 of file ppl_c_header.h.
|
related |
Writes into *sz the size in bytes of the memory occupied by mip.
Definition at line 2095 of file ppl_c_implementation_common.cc.
|
related |
Builds a MIP problem of space dimension d having feasible region cs, objective function le and optimization mode m; writes a handle to it at address pmip.
Definition at line 1837 of file ppl_c_implementation_common.cc.
|
related |
Builds a MIP problem that is a copy of mip; writes a handle for the newly created system at address pmip.
Definition at line 1851 of file ppl_c_implementation_common.cc.
|
related |
Builds a trivial MIP problem of dimension d and writes a handle to it at address pmip.
Definition at line 1829 of file ppl_c_implementation_common.cc.
|
related |
Code of the "maximization" optimization mode.
Definition at line 2412 of file ppl_c_header.h.
|
related |
Code of the "minimization" optimization mode.
Definition at line 2417 of file ppl_c_header.h.