Contraintes du solveur excel
Résolu
jeannot670
Messages postés
9
Statut
Membre
-
via55 Messages postés 14393 Date d'inscription Statut Membre Dernière intervention -
via55 Messages postés 14393 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je rencontre un problème dans l'utilisation du solveur d'excel et plus particulièrement sur les contraintes des variables.
Je m'explique: j'ai une formule assez pénible qui doit etre égale à une valeur donnée (Perte de Charge souhaitée).
Cette formule est fonction de longeurs et de diamètres, c'est à dire de la forme PdC=f(D1,L1)+f(D2,L2)+....
Je voudrais donc utiliser le solveur pour atteindre ma valeur en modifiant ces diamètres et longeurs.
Le hic: les longeurs sont encadrées (par exemple 150mm<L1<170mm), je peux donc les contraidres sans problèmes mais les diamètre possibles sont des valeurs précises, à savoir 2,4,6,7,8,10,12,14,16,18,20.
Un premier pas serait de demander à avoir des valeurs de diamètres entières, mais ne résout pas mon problème.
Comment puis je faire pour qu'excel me trouve une solution à cette équation en utilisant qu'un de ces diamètre?
Je précise que faire autant de solveur différent que de configurations possibles de diamètres m'est compliqué car j'arrive à un très grand nombre de calcul.
Par avance, je vous remercie beaucoup.
ps: si vous avez d'autres moyens de résoudre cela dites moi; je suis preneur! :)
je rencontre un problème dans l'utilisation du solveur d'excel et plus particulièrement sur les contraintes des variables.
Je m'explique: j'ai une formule assez pénible qui doit etre égale à une valeur donnée (Perte de Charge souhaitée).
Cette formule est fonction de longeurs et de diamètres, c'est à dire de la forme PdC=f(D1,L1)+f(D2,L2)+....
Je voudrais donc utiliser le solveur pour atteindre ma valeur en modifiant ces diamètres et longeurs.
Le hic: les longeurs sont encadrées (par exemple 150mm<L1<170mm), je peux donc les contraidres sans problèmes mais les diamètre possibles sont des valeurs précises, à savoir 2,4,6,7,8,10,12,14,16,18,20.
Un premier pas serait de demander à avoir des valeurs de diamètres entières, mais ne résout pas mon problème.
Comment puis je faire pour qu'excel me trouve une solution à cette équation en utilisant qu'un de ces diamètre?
Je précise que faire autant de solveur différent que de configurations possibles de diamètres m'est compliqué car j'arrive à un très grand nombre de calcul.
Par avance, je vous remercie beaucoup.
ps: si vous avez d'autres moyens de résoudre cela dites moi; je suis preneur! :)
4 réponses
-
Bonjour à tous
Une possibilité ;
Lister les diamètres possibles par ex dans la plage A12:A22
Mettre dans une cellule, par exemple G2 la formule =NB.SI(A12:A22;A2)
Mettre comme contrainte pour les diamètres dans le solveur $G$2=1 cette condition permettant de retenir que les cas où la valeur diamètre testée est dans liste
Cdlmnt
Via
-
Sans plus de restriction sur L presque tous les diamètres peuvent convenir avec :
L =PI()*(diamètre)^(0.5)/(valeur visée)
La plus petite longueur (0.444288294) correspond au plus petit diamètre (2)
Avec le diamètre 20 on obtient L=1.404962946
A mon avis il manque qq chose non ?
eric
-
Bonjour
Difficile de tout comprendre avec ce message, vu qu'on ne connaît pas le sujet!
pouvez vous déposer un modèle
http://mon-partage.fr
et revenez coller le lien créé sur le site
Ajoutez dans le modèle toutes explications utiles
à vous lire
crdlmnt
-
Bonjour, je vais tenter de réexpliquer mon problème.
Dans le solveur d'excel, on peut appliquer des contraintes aux variables comme majorer ou minorer par exemple.
Est il possible de demander par exemple qu'une variable valle uniquement 2 ou 5 ou 9 ou 45?
c'est à dire qu'elle puisse prendre uniquement une des valeurs données?
Je posterai plus tard un modèle :)
merci d'avance -
Voici un modèle.
https://mon-partage.fr/f/prkISoSm/
La formule à résoudre dans le fichier n'a pas d'importance, je voudrais juste obtenir une solution par le solver qui réponde à la contrainte de variable (c'est à dire un diamètre qui soit uniquement une des valeurs désirées comme 7,10 ou 12 par exemple)
-
-
Bonjour,
j'établirai un tableau de correspondance de 1 à 11 avec en vis à vis tes diamètres 2,4,6,7,8,10,12,14,16,18,20.
Le solveur variant de 1 à 11, tu récupères le diamètre avec un recherchev() (ou bien directement dans ta fonction f() )
eric
-
-
-
J'ai déposé un modèle plus haut sur cette page, je le remets ici.
https://mon-partage.fr/f/prkISoSm/
La formule à résoudre dans le fichier n'a pas d'importance, je voudrais juste obtenir une solution par le solver qui réponde à la contrainte de variable (c'est à dire un diamètre qui soit uniquement une des valeurs désirées comme 7,10 ou 12 par exemple)
en vous remerciant
Jean -
Ok je n'avais pas vu le précédent message
à défaut de savoir ce qui permet de définir le diamètre, voyez ici ce qui est possible avec un tableau de référence (3 possibilités)
https://mon-partage.fr/f/vrM8EEoH/
note:le tableau des valeurs disponibles doit être classé en ordre croissant
revenez si ça ne convient pas mais dites nous pourquoi!
crdlmnt -
le diametre entrée et la longueur sont à trouver grace à cette formule. Le but est de trouver une longeur et un diamètre qui permettent d'atteindre la valeur visée, avec un diamètre quelquonque appartenant à une liste définie et la plus petite longeur possible (dans l'encadrement que l'on donne pour la longueur).
Je ne comprends pas ce que vous avez fait avec le tableau de référence et le tableau des disponibles G1:G20, pouvez m'expliquer?
En vous remerciant d'avance pour vos explications
-