The following Java code defines a Problem through method calls
import qs.*; /** * @author monika, All Rights Reserved * */ public class define { /* Maximize 3.0x + 2.0y + 4.0z */ /* Subject to */ /* 3.1x + 2.3y + 1.4z <= 12.2 */ /* 5.0x + 1.1y = 10.0 */ /* x >= 2.0 */ /* y free */ /* 1.0 <= z <= 10.0 */ /* */ public static void main(String[] args) throws QSException { Problem prob = new Problem("define"); prob.change_objsense (QS.MIN); { // add 2 rows and define their right hand sides double rhs[] = { 12.2, 10.0 }; char sense[] = { 'L', 'E' }; int matcnt[] = { 0, 0, 0 }; int matbgn[] = { 0, 0, 0 }; prob.add_rows(2, matcnt, null, null, null, rhs, sense, null); } { // add variables x, y, z, // add with coeffs to rows c1-c2 and to objective // define their bounds int matcnt[] = { 2, 2, 1}; int matbgn[] = { 0, 2, 4 }; int matind[] = { 0, 1, 0, 1, 0 }; double matval[] = { 3.1, 5.0, 2.3, 1.1, 1.4 }; double obj[] = { 3.0, 2.0, 4.0}; double lower[] = { 2.0, -QS.MAXDOUBLE, 1.0}; double upper[] = { QS.MAXDOUBLE, QS.MAXDOUBLE, 10.0 }; String names[] = { "x", "y", "z" }; prob.add_cols(3, matcnt, matbgn, matind, matval, obj, lower, upper, names); } prob.write(new Reporter(System.out), false); } }