summaryrefslogtreecommitdiff
path: root/demos
diff options
context:
space:
mode:
authorHarpreet2015-10-20 14:23:25 +0530
committerHarpreet2015-10-20 14:23:25 +0530
commite4b59ea62dd9903445375c2aa1f52a52c5eab99f (patch)
treed761e8819990b031344e58c9016562bea157c05b /demos
parente34332a406e4f3fba9b99c6f9ec5138edfcc6aa2 (diff)
downloadsymphony-e4b59ea62dd9903445375c2aa1f52a52c5eab99f.tar.gz
symphony-e4b59ea62dd9903445375c2aa1f52a52c5eab99f.tar.bz2
symphony-e4b59ea62dd9903445375c2aa1f52a52c5eab99f.zip
qpipopt_mat added
Diffstat (limited to 'demos')
-rw-r--r--demos/qpipopt.dem.sce42
-rw-r--r--demos/qpipopt_mat.dem.sce40
-rw-r--r--demos/symphony_knapsack.sce2
3 files changed, 61 insertions, 23 deletions
diff --git a/demos/qpipopt.dem.sce b/demos/qpipopt.dem.sce
index 4f20a4a..3b36ff1 100644
--- a/demos/qpipopt.dem.sce
+++ b/demos/qpipopt.dem.sce
@@ -4,40 +4,38 @@ mode(1)
//
//Find x in R^6 such that:
-halt() // Press return to continue
-
conMatrix= [1,-1,1,0,3,1;
-1,0,-3,-4,5,6;
2,5,3,0,1,0
0,1,0,1,2,-1;
-1,0,2,1,1,0];
-conLB=[1 2 3 -%inf -%inf]';
-conUB = [1 2 3 -1 2.5]';
-lb=[-1000 -10000 0 -1000 -1000 -1000];
-ub=[10000 100 1.5 100 100 1000];
+conLB=[1;2;3;-%inf;-%inf];
+conUB = [1;2;3;-1;2.5];
+lb=[-1000;-10000; 0; -1000; -1000; -1000];
+ub=[10000; 100; 1.5; 100; 100; 1000];
//and minimize 0.5*x'*Q*x + p'*x with
-p=[1 2 3 4 5 6]; Q=eye(6,6);
+p=[1; 2; 3; 4; 5; 6]; Q=eye(6,6);
nbVar = 6;
nbCon = 5;
[xopt,fopt,exitflag,output,lambda]=qpipopt(nbVar,nbCon,Q,p,lb,ub,conMatrix,conLB,conUB)
halt() // Press return to continue
-//min. -8*x1 -16*x2 + x1^2 + 4* x2^2
-// such that
-// x1 + x2 <= 5,
-// x1 <= 3,
-// x1 >= 0,
-// x2 >= 0
-conMatrix= [1 1];
-conLB=[-%inf];
-conUB = [5];
-lb=[0,0];
-ub=[3,%inf];
-//and minimize 0.5*x'*Q*x + p'*x with
-p=[-8,-16];
-Q=[1,0;0,4];
+//Find the value of x that minimize following function
+// f(x) = 0.5*x1^2 + x2^2 - x1*x2 - 2*x1 - 6*x2
+// Subject to:
+// x1 + x2 ≤ 2
+// –x1 + 2x2 ≤ 2
+// 2x1 + x2 ≤ 3
+// 0 ≤ x1, 0 ≤ x2.
+Q = [1 -1; -1 2];
+p = [-2; -6];
+conMatrix = [1 1; -1 2; 2 1];
+conUB = [2; 2; 3];
+conLB = [-%inf; -%inf; -%inf];
+lb = [0; 0];
+ub = [%inf; %inf];
nbVar = 2;
-nbCon = 1;
+nbCon = 3;
[xopt,fopt,exitflag,output,lambda] = qpipopt(nbVar,nbCon,Q,p,lb,ub,conMatrix,conLB,conUB)
halt() // Press return to continue
diff --git a/demos/qpipopt_mat.dem.sce b/demos/qpipopt_mat.dem.sce
new file mode 100644
index 0000000..0f65036
--- /dev/null
+++ b/demos/qpipopt_mat.dem.sce
@@ -0,0 +1,40 @@
+mode(1)
+//
+// Demo of qpipopt_mat.sci
+//
+
+//Find x in R^6 such that:
+halt() // Press return to continue
+
+Aeq= [1,-1,1,0,3,1;
+-1,0,-3,-4,5,6;
+2,5,3,0,1,0];
+beq=[1; 2; 3];
+A= [0,1,0,1,2,-1;
+-1,0,2,1,1,0];
+b = [-1; 2.5];
+lb=[-1000; -10000; 0; -1000; -1000; -1000];
+ub=[10000; 100; 1.5; 100; 100; 1000];
+//and minimize 0.5*x'*Q*x + p'*x with
+f=[1; 2; 3; 4; 5; 6]; H=eye(6,6);
+[xopt,fopt,exitflag,output,lambda]=qpipopt_mat(H,f,A,b,Aeq,beq,lb,ub)
+clear H f A b Aeq beq lb ub;
+halt() // Press return to continue
+
+//Find the value of x that minimize following function
+// f(x) = 0.5*x1^2 + x2^2 - x1*x2 - 2*x1 - 6*x2
+// Subject to:
+// x1 + x2 ≤ 2
+// –x1 + 2x2 ≤ 2
+// 2x1 + x2 ≤ 3
+// 0 ≤ x1, 0 ≤ x2.
+H = [1 -1; -1 2];
+f = [-2; -6];
+A = [1 1; -1 2; 2 1];
+b = [2; 2; 3];
+lb = [0; 0];
+ub = [%inf; %inf];
+[xopt,fopt,exitflag,output,lambda] = qpipopt_mat(H,f,A,b,[],[],lb,ub)
+halt() // Press return to continue
+
+//========= E N D === O F === D E M O =========//
diff --git a/demos/symphony_knapsack.sce b/demos/symphony_knapsack.sce
index 12a6788..42c192c 100644
--- a/demos/symphony_knapsack.sce
+++ b/demos/symphony_knapsack.sce
@@ -93,7 +93,7 @@ conLB=repmat(0,nbCon,1);
// Upper Bound of constraints
conUB=[11927 13727 11551 13056 13460 ]';
-options = ["time_limit" "40"];
+options = ["tie_limit" "40"];
// The expected solution :