library(lpSolve) # x12 x13 x21 x23 x24 x31 x32 x35 x43 x46 x53 x56 w12 <- 1 w13 <- 5 w21 <- 1 w23 <- 2 w24 <- 2 w31 <- 5 w32 <- 4 w35 <- 2 w43 <- 3 w46 <- 3 w53 <- 1 w56 <- 4 f.obj <- c(w12,w13,w21,w23,w24,w31,w32,w35,w43,w46,w53,w56) f.con <- matrix (c(1,1,-1,0,0,-1,0,0,0,0,0,0, -1,0,1,1,1,0,-1,0,0,0,0,0, 0,-1,0,-1,0,1,1,1,-1,0,-1,0, 0,0,0,0,-1,0,0,0,1,1,0,0, 0,0,0,0,0,0,0,-1,0,0,1,1, 0,0,0,0,0,0,0,0,0,-1,0,-1), ncol=12, byrow=TRUE) f.dir <- c("=", "=", "=", "=","=", "=") f.rhs <- c(1, 0, 0, 0, -1, 0) #res <- lp("min", f.obj, f.con, f.dir, f.rhs) # LP res <- lp("min", f.obj, f.con, f.dir, f.rhs, binary.vec=1:12) # 0-1IPなので,変数1-16は2値 binary.vec = 1:12, # 整数の場合は int.vec = 1:12 print(res$solution) print(res)