`R/predefined_optimization_problem.R`

`predefined_optimization_problem.Rd`

Create a new `OptimizationProblem`

object.

`predefined_optimization_problem(x)`

- x
`list`

object containing data to construct the problem.

The argument to `x`

must be a list that contains the following
elements:

- modelsense
`character`

model sense.- number_of_features
`integer`

number of features in problem.- number_of_planning_units
`integer`

number of planning units.- A_i
`integer`

row indices for problem matrix.- A_j
`integer`

column indices for problem matrix.- A_x
`numeric`

values for problem matrix.- obj
`numeric`

objective function values.- lb
`numeric`

lower bound for decision values.- ub
`numeric`

upper bound for decision values.- rhs
`numeric`

right-hand side values.- sense
`numeric`

constraint senses.- vtype
`character`

variable types. These are used to specify that the decision variables are binary (`"B"`

) or continuous (`"C"`

).- row_ids
`character`

identifiers for the rows in the problem matrix.- col_ids
`character`

identifiers for the columns in the problem matrix.

```
# create list with problem data
l <- list(modelsense = "min", number_of_features = 2,
number_of_planning_units = 3, number_of_zones = 1,
A_i = c(0L, 1L, 0L, 1L, 0L, 1L), A_j = c(0L, 0L, 1L, 1L, 2L, 2L),
A_x = c(2, 10, 1, 10, 1, 10), obj = c(1, 2, 2), lb = c(0, 1, 0),
ub = c(0, 1, 1), rhs = c(2, 10), compressed_formulation = TRUE,
sense = c(">=", ">="), vtype = c("B", "B", "B"),
row_ids = c("spp_target", "spp_target"),
col_ids = c("pu", "pu", "pu"))
# create OptimizationProblem object
x <- predefined_optimization_problem(l)
# print new object
print(x)
#> optimization problem
#> model sense: min
#> dimensions: 2, 3, 6 (nrow, ncol, ncell)
#> variables: 3 (B)
```