アットウィキロゴ

lplp

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]=-3;
a[0][2]=-2;
a[1][1]=3;
a[1][2]=1;
a[2][1]=2.5;
a[2][2]=2;
a[3][1]=1;
a[3][2]=2;
b[1]=9;
b[2]=12.5;
b[3]=8;
 
        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日 14:51