How to solve linear programming problem?

I have a linear programming problem to solve. It looks like:
zx = max z
s.t. z ≤ c*y1 + y1*x
z ≤ c*y2 + y2*x
Σ x ≤ 5
Where:
c = 0
1
1
100
1
0
1
1
1
1
0
1
100
1
1
0
y1 = 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0
y2 = 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0.
x is an array of 16 numbers.
The result should be optimized for x.
How do I solve it using Matlab?

1 Commento

John D'Errico
John D'Errico il 27 Lug 2020
Modificato: John D'Errico il 27 Lug 2020
This question is morphing too many times, now on the third variation. I've closed the other copy of this question. Please stop reposting new duplicate questions if your question changes agian.

Accedi per commentare.

 Risposta accettata

Matt J
Matt J il 27 Lug 2020

3 Commenti

I want to find y. There are not y in maximum function. So I can't use linprog.
Matt J
Matt J il 27 Lug 2020
Modificato: Matt J il 27 Lug 2020
No, you said in your original post that the y variables were known and that you wanted to find x,
"The result should be optimized for x."
linprog is definitely the tool to use. Your problem is very much a linear program and that is the kind of problem that linprog solves. Although, be mindful that z must be solved for as well and therefore z and x must be viewed as part of a single vector of 17 unknowns p=[-z,x]
It worked! Thank you so much.

Accedi per commentare.

Più risposte (0)

Categorie

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by