This function updates parameters or data stored in an existing
GurobiOpts(), RapUnreliableOpts(),
RapReliableOpts(), RapData(),
RapUnsolved(), or RapSolved() object.
# S3 method for GurobiOpts
update(
object,
Threads = NULL,
MIPGap = NULL,
Method = NULL,
Presolve = NULL,
TimeLimit = NULL,
NumberSolutions = NULL,
MultipleSolutionsMethod = NULL,
NumericFocus = NULL,
...
)
# S3 method for ManualOpts
update(object, NumberSolutions = NULL, ...)
# S3 method for RapData
update(
object,
species = NULL,
space = NULL,
name = NULL,
amount.target = NULL,
space.target = NULL,
pu = NULL,
cost = NULL,
status = NULL,
...
)
# S3 method for RapReliableOpts
update(object, BLM = NULL, failure.multiplier = NULL, max.r.level = NULL, ...)
# S3 method for RapUnreliableOpts
update(object, BLM = NULL, ...)
# S3 method for RapUnsolOrSol
update(object, ..., formulation = NULL, solve = TRUE)GurobiOpts(), RapUnreliableOpts(),
RapReliableOpts(), RapData(),
RapUnsolved(), or RapSolved() object.
integer number of cores to use for processing.
numeric MIP gap specifying minimum solution quality.
integer Algorithm to use for solving model.
integer code for level of computation in presolve.
integer number of seconds to allow for solving.
integer number of solutions to generate.
integer name of method to obtain
multiple solutions (used when NumberSolutions is greater than one).
Available options are "benders.cuts", "solution.pool.0",
"solution.pool.1", and "solution.pool.2". The
"benders.cuts" method produces a set of distinct solutions that
are all within the optimality gap. The "solution.pool.0"
method returns all solutions identified whilst trying to find
a solution that is within the specified optimality gap. The
"solution.pool.1" method finds one solution within the optimality
gap and a number of additional solutions that are of any level of quality
(such that the total number of solutions is equal to
number_solutions). The "solution.pool.2" finds a
specified number of solutions that are nearest to optimality. The
search pool methods correspond to the parameters used by the Gurobi
software suite (see https://www.gurobi.com/documentation/8.0/refman/poolsearchmode.html#parameter:PoolSearchMode).
Defaults to "benders.cuts".
integer how much effort should Gurobi focus on
addressing numerical issues? Defaults to 0L such that minimal effort
is spent to reduce run time.
parameters passed to update.RapReliableOpts(),
update.RapUnreliableOpts(), or update.RapData().
integer or character denoting species for which
targets or name should be updated.
integer denoting space for which targets should be
updated.
character to rename species.
numeric vector for new area targets (%) for the
specified species.
numeric vector for new attribute space targets
(%) for the specified species and attribute spaces.
integer planning unit indices that need to be updated.
numeric new costs for specified planning units.
integer new statuses for specified planning units.
numeric boundary length modifier.
numeric multiplier for failure planning
unit.
numeric maximum R failure level for approximation.
character indicating new problem formulation to
use. This can be either "unreliable" or "reliable". The default is
NULL so that formulation in object is used.
logical should the problem be solved? This argument is
only valid for RapUnsolved() and RapSolved()
objects. Defaults to TRUE.
GurobiOpts,
RapUnreliableOpts,
RapReliableOpts, RapData,
RapUnsolved, or RapSolved object
depending on argument to x.
# \dontrun{
# load data
data(sim_ru, sim_rs)
# GurobiOpts
x <- GurobiOpts(MIPGap = 0.7)
y <- update(x, MIPGap = 0.1)
print(x)
#> GurobiOpts object.
#> Threads: 1
#> MIPGap: 0.7
#> Method: 0
#> Presolve: 2
#> TimeLimit: NA
#> NumberSolutions: 1
#> MultipleSolutionsMethod: benders.cuts
#> NumericFocus: 0
print(y)
#> GurobiOpts object.
#> Threads: 1
#> MIPGap: 0.1
#> Method: 0
#> Presolve: 2
#> TimeLimit: NA
#> NumberSolutions: 1
#> MultipleSolutionsMethod: benders.cuts
#> NumericFocus: 0
# RapUnreliableOpts
x <- RapUnreliableOpts(BLM = 10)
y <- update(x, BLM = 2)
print(x)
#> RapUnreliableOpts object.
#> BLM: 10
print(y)
#> RapUnreliableOpts object.
#> BLM: 2
# RapReliableOpts
x <- RapReliableOpts(failure.multiplier = 2)
y <- update(x, failure.multiplier = 4)
print(x)
#> RapReliableOpts object.
#> BLM: 0
#> failure.multiplier: 2
#> max.r.level: 5
print(y)
#> RapReliableOpts object.
#> BLM: 0
#> failure.multiplier: 4
#> max.r.level: 5
# RapData
x <- sim_ru@data
y <- update(x, space.target = c(0.4, 0.7, 0.1))
print(space.target(x))
#> 1
#> uniform 0.85
#> normal 0.85
#> bimodal 0.85
print(space.target(y))
#> 1
#> uniform 0.4
#> normal 0.7
#> bimodal 0.1
## RapUnsolved
x <- sim_ru
y <- update(x, amount.target = c(0.1, 0.2, 0.3), BLM = 3, solve = FALSE)
print(x@opts@BLM); print(amount.target(x))
#> [1] 0
#> uniform normal bimodal
#> 0.2 0.2 0.2
print(y@opts@BLM); print(space.target(y))
#> [1] 3
#> 1
#> uniform 0.85
#> normal 0.85
#> bimodal 0.85
## RapSolved
x <- sim_rs
y <- update(x, space.target = c(0.4, 0.6, 0.9), BLM = 100, Presolve = 1L,
solve = FALSE)
print(x@opts@BLM); print(amount.target(x))
#> [1] 0
#> uniform normal bimodal
#> 0.2 0.2 0.2
print(y@opts@BLM); print(space.target(y))
#> [1] 100
#> 1
#> uniform 0.4
#> normal 0.6
#> bimodal 0.9
# }