Learn R Programming

lpSolve (version 1.1.7)

lp.assign: Integer Programming for the Assignment Problem

Description

Interface to lp_solve linear/integer programming system specifically for solving assignment problems

Usage

lp.assign (cost.mat, presolve=0, compute.sens=0)

Arguments

cost.mat
Matrix of costs: the ij-th element is the cost of assigning source i to destination j.
presolve
Numeric: presolve? Default 0 (no); any non-zero value means "yes." Currently ignored.
compute.sens
Numeric: compute sensitivity? Default 0 (no); any non-zero value means "yes."

Value

  • An lp object. See documentation for details.

Details

This is a particular integer programming problem. All the decision variables are assumed to be integers; each row has the constraint that its entries must add up to 1 (so that there is one 1 and the remaining entries are 0) and each column has the same constraint. This is assumed to be a minimization problem.

See Also

lp, lp.transport

Examples

Run this code
assign.costs <- matrix (c(2, 7, 7, 2, 7, 7, 3, 2, 7, 2, 8, 10, 1, 9, 8, 2), 4, 4)
> assign.costs
     [,1] [,2] [,3] [,4]
[1,]    2    7    7    1
[2,]    7    7    2    9
[3,]    7    3    8    8
[4,]    2    2   10    2
lp.assign (assign.costs)
Success: the objective function is 8
lp.assign (assign.costs)$solution
[,1] [,2] [,3] [,4]
[1,]    0    0    0    1
[2,]    0    0    1    0
[3,]    0    1    0    0
[4,]    1    0    0    0

Run the code above in your browser using DataLab