[R] Solving binary integer optimization problem
aajit75
aajit75 at yahoo.co.in
Fri Aug 10 14:41:07 CEST 2012
Hi,
I am new to R for solving optimization problems, I have set of communication
channels with limited capacity with two types of costs, fixed and variable
cost. Each channel has expected gain for a single communication.
I want to determine optimal number of communications for each channel
maximizing ROI)return on investment) with overall budget as constraint.60000
is the budget allocated.
Channel Fixed_Cost Variable_Cost Capacity Expected_Gain
C1 400 2.5 5000 0.25
C2 10000 0 30000 0.3
C3 4000 0.15 20000 0.15
C4 2000 2 10000 0.36
C5 100 3 4000 0.09
Channel_Select <-data.frame(Channel=c('c1','c2','c3','c4','c5'),
Fixed_Cost=c(400,5000,4000,2000,100),
Variable_Cost=c(2.5,0,0.15,2,3),
Capacity=c(5000,30000,20000,10000,4000),
Expected_gain=c(0.25,0.3,0.15,0.36,0.09))
Let x1,x2,x3,x4,x5 are the decision variables for c1,c2,c3,c4,c5 channel
and z1,z2,z3,z4,z5 are the indicator binary variables if channel has
allocated communication if any.
max((0.25*x1+0.30*x2+0.15*x3+0.36*x4+0.09*x5)-(2.5*x1+0*x2+0.15*x3+2*x4+3*x5+400*z1+10000*z2+4000*z3+2000*z4+100*z5)/(
2.5*x1+0*x2+0.15*x3+2*x4+3*x5+400*z1+10000*z2+4000*z3+2000*z4+100*z5))
Constraints:
(2.5*x1+0*x2+0.15*x3+2*x4+3*x5+400*z1+10000*z2+4000*z3+2000*z4+100*z5)) <=
60000 ##Budget Constraint
x1-5000*z1<=0
x2-30000*z2<=0
x3-20000*z3<=0
x4-10000*z4<=0
x5-4000*z5<=0
x1 >= 200
x2 >= 100
x3>=100
x4>=500
x5>=0
I had tried lp function from lpsolve but not able to set objective.in for
objective function. Any help or hint is welcomed!
--
View this message in context: http://r.789695.n4.nabble.com/Solving-binary-integer-optimization-problem-tp4639891.html
Sent from the R help mailing list archive at Nabble.com.
More information about the R-help
mailing list