glpkAPI-package {glpkAPI} | R Documentation |
R Interface to C API of GLPK
Description
A low level interface to the GNU Linear Programming Kit (GLPK).
Details
The package glpkAPI
provides access to the callable library
of the GNU Linear Programming Kit from within R.
Author(s)
Gabriel Gelius-Dietrich <geliudie@uni-duesseldorf.de>
Maintainer: Mayo Roettger <mayo.roettger@hhu.de>
References
Based on the package glpk by Lopaka Lee.
The GNU GLPK home page at http://www.gnu.org/software/glpk/glpk.html.
Examples
# load package
library(glpkAPI)
# preparing the model
lp <- initProbGLPK()
# model data
nrows <- 5
ncols <- 8
# constraint matrix
ne <- 14
ia <- c(1, 5, 1, 2, 2, 3, 1, 4, 1, 5, 3, 4, 1, 5)
ja <- c(1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 7, 8, 8)
ar <- c(3.0, 5.6, 1.0, 2.0, 1.1, 1.0, -2.0, 2.8,
-1.0, 1.0, 1.0, -1.2, -1.0, 1.9)
# objective function
obj <- c(1, 0, 0, 0, 2, 0, 0, -1)
# upper and lower bounds of the rows
rlower <- c(2.5, -1000, 4, 1.8, 3)
rupper <- c(1000, 2.1, 4, 5, 15)
# upper and lower bounds of the columns
clower <- c(2.5, 0, 0, 0, 0.5, 0, 0, 0)
cupper <- c(1000, 4.1, 1, 1, 4, 1000, 1000, 4.3)
# direction of optimization
setObjDirGLPK(lp, GLP_MIN)
# add rows and columns
addRowsGLPK(lp, nrows)
addColsGLPK(lp, ncols)
setColsBndsObjCoefsGLPK(lp, c(1:ncols), clower, cupper, obj)
setRowsBndsGLPK(lp, c(1:nrows), rlower, rupper)
# load constraint matrix
loadMatrixGLPK(lp, ne, ia, ja, ar)
# solve lp problem
solveSimplexGLPK(lp)
# retrieve the results
getSolStatGLPK(lp)
getObjValGLPK(lp)
getColsPrimGLPK(lp)
# remove problem object
delProbGLPK(lp)
[Package glpkAPI version 1.3.4 Index]