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[7][4];
double[] b=new double[7];
public static void main(String[] args) {
pro test=new pro();
}
pro(){
creditnumber=3;
linenumber=6;
a[0][1]=-1;
a[0][2]=-1;
a[0][3]=-1;
a[1][1]=1;
a[1][2]=1;
a[1][3]=-1;
a[2][1]=1;
a[2][2]=1;
a[2][3]=0;
a[3][1]=-1;
a[3][2]=-1;
a[3][3]=1;
a[4][1]=0;
a[4][2]=0;
a[4][3]=1;
a[5][1]=-1;
a[5][2]=-1;
a[5][3]=0;
a[6][1]=0;
a[6][2]=0;
a[6][3]=-1;
b[1]=300;
b[2]=600;
b[3]=-200;
b[4]=200;
b[5]=-200;
b[6]=-100;
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]);
System.out.println(sol[2]);
}
}
最終更新:2013年12月05日 17:08