how can I write more than 1 objective in linprog line

5 vues (au cours des 30 derniers jours)
halime çelik
halime çelik le 19 Oct 2020
Modifié(e) : Stephan le 19 Oct 2020
how can I define multi objective funtion problem? we can write linprog(f,A,..). however my problem has four objevtive function, how can I write them?

Réponses (2)

Stephan
Stephan le 19 Oct 2020
Modifié(e) : Stephan le 19 Oct 2020
You can not do this in linprog. See here instead:
If you have access to Global Optimization Toolbox, you ight want to look here also:

Walter Roberson
Walter Roberson le 19 Oct 2020
You cannot have multiple objectives using linprog(), not even in the case where the constraints are the same for all objectives. Not even if there are no constraints (though if there are no constraints, then the solution always involves at least one of the variables being infinite). Not even if what you want is the minimum over all four objectives, as opposed to trying to minimize the four simultaneously (which is really a pareto problem.)
I have not done enough work with quadrog() to determine whether it just might be possible to use quadprog() by introducing additional integer-constrained variables with value 0 or 1 that are used to multiply an entire system, and thereby to allow the "selection" of the function, along the lines of
s1*f1(x) + s2*f2(x) + s3*f3(x) + s4*f4(x)
s1, s2, s3, s4 element of [0, 1]
s1 + s2 + s3 + s4 = 1 (exactly one of them is selected)
You should probably be looking at gamultiobj() or paretosearch()

Catégories

En savoir plus sur Multiobjective Optimization dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by