Linéarisation de contrainte valeur absolue

Réponses à toutes vos questions après le Bac (Fac, Prépa, etc.)
Cliffe
Membre Rationnel
Messages: 967
Enregistré le: 12 Juin 2012, 14:25

Linéarisation de contrainte valeur absolue

par Cliffe » 27 Juin 2014, 10:00

Salut, j'essaye de linéariser la valeur absolue pour un programme linéaire.

Soit la variable réelle , tel que - avec et . On veut linéariser la valeur absolue de :

On introduit la variable : de sorte que :

Soit la variable binaire :
[CENTER][/CENTER]

on a alors les contraintes :
[CENTER][/CENTER]

Soit les deux variables et tel que : . On a alors les contraintes :

[CENTER][/CENTER]

avec .

Enfin la valeur absolue est donnée par la variable réelle positive : .

Qu'en pensez vous ?



Avatar de l’utilisateur
fatal_error
Modérateur
Messages: 6610
Enregistré le: 22 Nov 2007, 13:00

par fatal_error » 29 Juin 2014, 15:06

hi,

ne peut on pas simplement ecrire

x <= a
x <= 0
y <= -a
y <= 0

max x+y

si a < 0
x vaut 0, y vaut -a
x+y vaut |a|
si a > 0
x vaut a, y vaut 0
x+y vaut |a|
la vie est une fête :)

Cliffe
Membre Rationnel
Messages: 967
Enregistré le: 12 Juin 2012, 14:25

par Cliffe » 29 Juin 2014, 16:45

Ton modèle est faux.
Si je prend :

[CENTER] [/CENTER]

Si on prend le max on a

Et puis, je ne veux pas forcément de valeur absolue dans la fonction objectif. Il y déjà des méthodes pour cela. Je veux la remplacer par une variable. Si je simplifie mon modèle, j'ai :

[CENTER] [/CENTER]

Si je prend et :

[CENTER] [/CENTER]

[CENTER] [/CENTER]

[CENTER]Et donc .[/CENTER]

Avatar de l’utilisateur
fatal_error
Modérateur
Messages: 6610
Enregistré le: 22 Nov 2007, 13:00

par fatal_error » 29 Juin 2014, 17:02

Ton modèle est faux.


ouais certes,
après tu peux jouer un peu avec les inégalités...

L'idée que j'ai foirée c'est juste de satisfaire au mieux les deux inégalités concernant une variable.

Ici, on peut prendre
x>=a
x>=-a
idem x>=max(a,-a)

et prendre min x pour avoir abs(a)

Je mets pas en cause ton modèle qui apparemment à l'air de marcher (j'ai pas regardé). Par contre il est juste overkill

PS: l'idée de sommer des variables, ca vient d'un vague souvenir avec le tsp résoud en simplexe (sans les cutting planes). Mais bon, c'est pas nécessaire ici
la vie est une fête :)

Cliffe
Membre Rationnel
Messages: 967
Enregistré le: 12 Juin 2012, 14:25

par Cliffe » 29 Juin 2014, 17:15

fatal_error a écrit:Je mets pas en cause ton modèle qui apparemment à l'air de marcher (j'ai pas regardé). Par contre il est juste overkill


Mon modèle est très simple. On pose représente la partie positive et la partie négatif. Suivant le signe de , on a ou qui est nul. Pour cela j'utilise une variable binaire qui vaut 1 si est positif 0 sinon.

Pour obtenir , il suffit de l'encadrer par 2 fonctions linéaire :

[CENTER]Image [/CENTER]

 

Retourner vers ✯✎ Supérieur

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 96 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite