Bonjour,
J'ai un programme permettant de calculer le minimum d'une fonction à 2 variables, mais pas à déterminer en quelles valeurs ce minimum est atteint.
Si vous avez des idées je suis preneur.
Bonne journée
Bonjour,
J'ai un programme permettant de calculer le minimum d'une fonction à 2 variables, mais pas à déterminer en quelles valeurs ce minimum est atteint.
Si vous avez des idées je suis preneur.
Bonne journée
salut,
comme la fonction min() par exemple ?
Plutôt un "équivalent" de np.argmin() du coup. Sauf que np.argmin() c'est pour les listes. Ici florian veut optimiser des fonctions.
l'énoncé n'est pas très parlant, on ne sait pas quel est le "programme" en question qui permet de trouver la valeur minimum, ni si le PO a la main sur le code, ni même s'il est question de numpy...
dans tous les cas, à part prendre un intervalle donné pour tester les valeurs de la fonction (et donc éventuellement en tirer une liste qu'on filerait à numpy.argmin()) je vois pas comment on peut faire
donc ma solution, qui vaut ce qu'elle vaut, est d'utiliser le paramètre key de la fonction min() :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 >>> f = lambda (a, b): a**2 + 3*b - 50 >>> min([f((a,b)) for b in range(-10,10) for a in range(-10,10)]) -80 >>> min([(a,b) for b in range(-10,10) for a in range(-10,10)], key=f) (0, -10) >>> f((0, -10)) -80
Voici le programme qui calcule le minimum pour la fonction entrée, je vais essayer votre programme et vous dire si cela marche .
Merci
Pour ma fonction j'aimerais une précision à 0.01 et je n'ai pas réussi à régler le pas des boucles for a 0.01, si vous avez une solution je suis preneur.
Bonne soirée
Partager