View source: R/add_gurobi_solver.R
add_gurobi_solver | R Documentation |
Specify that the Gurobi software should be used to solve a
project prioritization problem()
. This function can also be
used to customize the behavior of the solver. In addition to the
Gurobi software suite, it also requires the gurobi package to
be installed.
add_gurobi_solver( x, gap = 0, number_solutions = 1, solution_pool_method = 2, time_limit = .Machine$integer.max, presolve = 2, threads = 1, first_feasible = FALSE, verbose = TRUE )
x |
ProjectProblem object. |
gap |
|
number_solutions |
|
solution_pool_method |
|
time_limit |
|
presolve |
|
threads |
|
first_feasible |
|
verbose |
|
Gurobi is a state-of-the-art commercial optimization software with an R package interface. It is by far the fastest of the solvers supported by this package, however, it is also the only solver that is not freely available. That said, licenses are available to academics at no cost. The gurobi package is distributed with the Gurobi software suite. This solver uses the gurobi package to solve problems.
To install the gurobi package, the Gurobi optimization suite will first need to be installed (see instructions for Linux, Mac OSX, and Windows operating systems). Although Gurobi is a commercial software, academics can obtain a special license for no cost. After installing the Gurobi optimization suite, the gurobi package can then be installed (see instructions for Linux, Mac OSX, and Windows operating systems).
ProjectProblem object with the solver added to it.
solvers.
## Not run: # load data data(sim_projects, sim_features, sim_actions) # build problem p1 <- problem(sim_projects, sim_actions, sim_features, "name", "success", "name", "cost", "name") %>% add_max_richness_objective(budget = 200) %>% add_binary_decisions() # build another problem, and specify the Gurobi solver p2 <- p1 %>% add_gurobi_solver() # print problem print(p2) # solve problem s2 <- solve(p2) # print solution print(s2) # plot solution plot(p2, s2) # build another problem and obtain multiple solutions # note that this problem doesn't have 100 unique solutions so # the solver won't return 100 solutions p3 <- p1 %>% add_gurobi_solver(number_solutions = 100) # print problem print(p3) # solve problem s3 <- solve(p3) # print solutions print(s3) ## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.