Description Usage Arguments Details Value Author(s) References See Also Examples
High level R interface to the COINOR SYMPHONY solver for linear as well as mixed integer linear programming problems (MILPs).
1 2 3 4 
obj 
a vector with the objective coefficients 
mat 
a vector or a matrix of the constraint coefficients 
dir 
a character vector with the directions of the constraints.
Each element must be one of 
rhs 
the right hand side of the constraints 
bounds 

types 
a character vector giving the types of the objective
variables, with 
max 
a logical giving the direction of the optimization.

verbosity 
an integer defining the level of verbosity,

time_limit 
an integer defining the time limit in seconds,

node_limit 
an integer defining the limit in number of iterations,

gap_limit 
when the gap between the lower and the upper bound
reaches this point, the solution process will stop and the best
solution found to that point will be returned,

first_feasible 
a logical defining if the solution process
should stop after the first feasible solution has been found,

write_lp 
a logical value indicating if an LP representation
of the problem should be written for debugging purposes,

write_mps 
a logical value indicating if an MPS representation
of the problem should be written for debugging purposes,

SYMPHONY is an open source solver for solving mixed integer linear programs (MILPs). The current version can be found at https://projects.coinor.org/SYMPHONY. Package lpsymphony uses the C interface of the callable library provided by SYMPHONY, and supplies a high level solver function in R using the low level C interface.
A list containing the optimal solution, with the following components.
solution 
the vector of optimal coefficients 
objval 
the value of the objective function at the optimum 
status 
an integer with status information about the solution returned: 0 if the optimal solution was found, a nonzero value otherwise. 
Reinhard Harter, Kurt Hornik and Stefan Theussl
SYMPHONY development home page (https://projects.coinor.org/SYMPHONY/wiki).
lp
in package lpSolve;
Rglpk_solve_LP
in package Rglpk.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42  ## Simple linear program.
## maximize: 2 x_1 + 4 x_2 + 3 x_3
## subject to: 3 x_1 + 4 x_2 + 2 x_3 <= 60
## 2 x_1 + x_2 + x_3 <= 40
## x_1 + 3 x_2 + 2 x_3 <= 80
## x_1, x_2, x_3 are nonnegative real numbers
obj < c(2, 4, 3)
mat < matrix(c(3, 2, 1, 4, 1, 3, 2, 2, 2), nrow = 3)
dir < c("<=", "<=", "<=")
rhs < c(60, 40, 80)
max < TRUE
lpsymphony_solve_LP(obj, mat, dir, rhs, max = max)
## Simple mixed integer linear program.
## maximize: 3 x_1 + 1 x_2 + 3 x_3
## subject to: 1 x_1 + 2 x_2 + x_3 <= 4
## 4 x_2  3 x_3 <= 2
## x_1  3 x_2 + 2 x_3 <= 3
## x_1, x_3 are nonnegative integers
## x_2 is a nonnegative real number
obj < c(3, 1, 3)
mat < matrix(c(1, 0, 1, 2, 4, 3, 1, 3, 2), nrow = 3)
dir < c("<=", "<=", "<=")
rhs < c(4, 2, 3)
max < TRUE
types < c("I", "C", "I")
lpsymphony_solve_LP(obj, mat, dir, rhs, types = types, max = max)
## Same as before but with bounds replaced by
## Inf < x_1 <= 4
## 0 <= x_2 <= 100
## 2 <= x_3 < Inf
bounds < list(lower = list(ind = c(1L, 3L), val = c(Inf, 2)),
upper = list(ind = c(1L, 2L), val = c(4, 100)))
lpsymphony_solve_LP(obj, mat, dir, rhs, types = types, max = max,
bounds = bounds)

Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.