package lp2;
import scpsolver.problems.LinearProgram;
import scpsolver.constraints.*;
import scpsolver.lpsolver.SolverFactory;
import scpsolver.lpsolver.LinearProgramSolver;
public class pro{
int s,sx,linenumber,creditnumber;
double[][] a=new double[4][4];
double[] b=new double[4];
public static void main(String[] args) {
pro test=new pro();
}
pro(){
creditnumber=2;
linenumber=3;
a[0][1]=-5;
a[0][2]=-4;
a[1][1]=1;
a[1][2]=2;
a[2][1]=4;
a[2][2]=4;
a[3][1]=3;
a[3][2]=1;
b[1]=80;
b[2]=180;
b[3]=90;
String str;
double[] x=new double[creditnumber];
double bx;
for(s=0;s<creditnumber;s++){
x[s]=a[0][s+1];
}
LinearProgram lp = new LinearProgram(x);
for(s=1;s<linenumber+1;s++){
for(sx=0;sx<creditnumber;sx++){
x[sx]=a[s][sx+1];
}
str="c"+s;
bx=b[s];
lp.addConstraint(new LinearSmallerThanEqualsConstraint(x, bx, str));
}
lp.setMinProblem(true);
LinearProgramSolver solver = SolverFactory.newDefault();
double[] sol = solver.solve(lp);
System.out.println(sol[0]);
System.out.println(sol[1]);
}
}
最終更新:2013年12月05日 15:44