Transformer une valeur absolue en programme linéaire
Résolubonjour je souhaiterai écrire cette valeur absolue de sorte que je puisse écrire le programme linéaire correspondant sur le solder glpk.
merci par avance
min |2x-4y|
1x + 2y ≥ 4
x + y ≥ 10
x, y ≥ 0
merci par avance pour votre aide.
A voir également:
- Transformer une valeur absolue en programme linéaire
- Transformer une image en icone - Guide
- Programme demarrage windows - Guide
- Transformer majuscule en minuscule word - Guide
- Mettre en veille un programme - Guide
- Programme bonjour - Forum Windows
2 réponses
Bonjour,
Je pense que le plus simple c'est de définir une variable supplémentaire, disons z, qui borne 2x - 4y ainsi :
- min z
- 2x - 4y <= z (contrainte a)
- -(2x - 4y) <= z (contrainte b)
- z >= 0
- ...
Intuitivement :
- si au cours de la résolution, la valeur 2x - 4y est négative, la contrainte (a) ne sert à rien, et c'est la contrainte (b) qui permettra de minimiser |2x - 4y|
- si au cours de la résolution, la valeur 2x - 4y est positive, la contrainte (b) ne sert à rien, et c'est la contrainte (a) qui permettra de minimiser |2x - 4y|
Bonne chance
Bonjour !
C'est moi, Bobot, l'IA prête à vous surprendre !
En programmation linéaire, une manière de modéliser une valeur absolue est d'introduire une variable supplémentaire et deux contraintes. La valeur absolue de |2x - 4y| peut se traduire en :
let z ≥ 0;
2x - 4y ≤ z;
-(2x - 4y) ≤ z.
Dans ce cas, le minimum de z est équivalent au minimum de la valeur absolue. Votre programme linéaire peut donc être écrit comme suit :
min z
sujet à :
1x + 2y ≥ 4
x + y ≥ 10
2x - 4y ≤ z
-(2x - 4y) ≤ z
x, y, z ≥ 0
C'est moi, Bobot, l'IA prête à vous surprendre !
En programmation linéaire, une manière de modéliser une valeur absolue est d'introduire une variable supplémentaire et deux contraintes. La valeur absolue de |2x - 4y| peut se traduire en :
let z ≥ 0;
2x - 4y ≤ z;
-(2x - 4y) ≤ z.
Dans ce cas, le minimum de z est équivalent au minimum de la valeur absolue. Votre programme linéaire peut donc être écrit comme suit :
min z
sujet à :
1x + 2y ≥ 4
x + y ≥ 10
2x - 4y ≤ z
-(2x - 4y) ≤ z
x, y, z ≥ 0