Trouver une fonction à partir d'un tableau

Discussions générales concernant les mathématiques et n'entrant pas dans les catégories suivantes.
[participation réservée aux utilisateurs inscrits]
Règles du forum
Merci de soigner la rédaction de vos messages et de consulter ce sujet avant de poster. Pensez également à utiliser la fonction recherche du forum.
jagt10

Trouver une fonction à partir d'un tableau

Message non lu par jagt10 »

Bonjour,
Je suis sur que j'ai déjà fait cela et que je suis capable de le faire mais je ne souviens plus comment :
J' ai un tableau avec des A et des B,
Pour A j'ai 20, 30, 40, 50 et respectivement pour les B j'ai 43.75, 38.50, 35.45, 33.80.
A partir de ces valeurs là je voudrais trouver une équation qui me permette pour un A désiré (exemple 100) le B qui convient.
Il faut savoir que ce n'est pas une fonction linéaire.
Si vous pouviez me répondre rapidement car c'est urgent
Merci d'avance
MB
Administrateur
Administrateur
Messages : 8117
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Re: Trouver une fonction à partir d'un tableau

Message non lu par MB »

Tu peux regarder cette page Wikipédia par exemple.
MB. Rejoignez notre partenaire pCloud et bénéficiez de 10Go de stockage gratuits ou d'une offre premium !
Pas d'aide en message privé. Merci de consulter ce sujet avant de poster votre premier message.
Aleph

Re: Trouver une fonction à partir d'un tableau

Message non lu par Aleph »

L'interpolation lagrangienne pour faire de l'extrapolation c'est plutôt risqué... :)
jagt10

Re: Trouver une fonction à partir d'un tableau

Message non lu par jagt10 »

J'ai vu sur futura science quelqu'un qui disait que ca me ferait une fonction qui passerait par c'est point là mais qui en dehors ferait n'importe quoi, est-ce vrais?

N'y a t'il pas une méthode plus simple?
François D.
Utilisateur chevronné
Utilisateur chevronné
Messages : 1367
Inscription : dimanche 30 juillet 2006, 10:04
Localisation : Alsace

Re: Trouver une fonction à partir d'un tableau

Message non lu par François D. »

Rapidement : d'abord, je te propose de placer les points correspondants aux couples de valeurs de A et de B dans un repère : ça te permettra d'espérer, si la forme du « nuage » obtenu est assez parlante, une fonction de type affine, quadratique (second degré), etc. qui passerait par ces points ... si oui : bingo.

Si non, un traitement statistique s'impose : ajustement affine/droite de régression par la méthode des moindres carrés, ou autre ajustement (polynomial, exponentiel, logarithmique, ...), qu'on peut toujours ramener par un changement de variable temporaire à un ajustement affine.
jagt10

Re: Trouver une fonction à partir d'un tableau

Message non lu par jagt10 »

Ca fait quasiment une droite décroissante, en fait ca fait des genre de triangle autour de cette fonction linéaire, (un coup au dessus, un coup au dessous mais de manière régulière et uniforme). Donc pas de fonction type.
kojak
Modérateur général
Modérateur général
Messages : 10452
Inscription : samedi 18 novembre 2006, 19:50

Re: Trouver une fonction à partir d'un tableau

Message non lu par kojak »

Bonjour,

Faire de la régression avec 4 valeurs, c'est quand même risqué, non....

Ensuite, tes valeurs, ça représente bien qque chose, non ? donc ça pourrait peut être donner une indication sur la forme de la régression.


Mais bon, tout cela n'est qu'un avis
Pas d'aide par MP.
Aleph

Re: Trouver une fonction à partir d'un tableau

Message non lu par Aleph »

J'ai peut-être une solution mais je ne sais pas si elle est très stable.
Tu utilises une tranformation de Fourier pour estimer les valeurs de ta fonction en N points de l'intervalle [20;50].
Bien sûr c'est toi qui choisit N.
Puisque ton échantillon est de taille N suffisamment grande (au minimum 10 points mais autant en faire une centaine), tu peux tenter une régression.
jagt10

Re: Trouver une fonction à partir d'un tableau

Message non lu par jagt10 »

Ok merci à tous, je vais essayer.
Framboise
Utilisateur chevronné
Utilisateur chevronné
Messages : 1175
Inscription : lundi 21 mai 2007, 13:57
Statut actuel : Autre
Localisation : Dordogne

Re: Trouver une fonction à partir d'un tableau

Message non lu par Framboise »

Bonjour,

Commence déjà par tracer un graphe précis pour te faire une idée.
Il faut savoir que ce n'est pas une fonction linéaire.
:wink:
Cela a des allures d'hyperbole...

Un petit tableau des différences :
20      30       40      50
43.75 38.50 35.45 33.80
      -5.25 -3.05 -1.65
          +2.20 +1.40
               -0.80

note: pas facile de mettre des espaces multiples en début de ligne...

Lagrange peut ( le contraire est rare ) faire des oscillations horribles en dehors des points imposés. Sur des problèmes pratiques réels, c'est rarement utilisable sauf pour des obtenir des polynômes de faible degré. C'est un "corset" où tout déborde en dehors.
Dernière modification par Framboise le dimanche 14 février 2010, 18:26, modifié 1 fois.
J'ai le virus des sciences, ça se soigne ?
MB
Administrateur
Administrateur
Messages : 8117
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Re: Trouver une fonction à partir d'un tableau

Message non lu par MB »

Aleph a écrit :L'interpolation lagrangienne pour faire de l'extrapolation c'est plutôt risqué... :)
Oups, lecture un peu trop rapide de son problème. :|
MB. Rejoignez notre partenaire pCloud et bénéficiez de 10Go de stockage gratuits ou d'une offre premium !
Pas d'aide en message privé. Merci de consulter ce sujet avant de poster votre premier message.
Aleph

Re: Trouver une fonction à partir d'un tableau

Message non lu par Aleph »

Bonjour MB,
MB a écrit :
Aleph a écrit :L'interpolation lagrangienne pour faire de l'extrapolation c'est plutôt risqué... :)
Oups, lecture un peu trop rapide de son problème. :|
Je ne comprends pas ta remarque.
Il dit qu'il souhaite prédire la valeur de sa fonction au point $x=100$ sachant les valeurs qu'elle prend pour $x\in\{20,30,40,50\}$.
Qu'ai-je lu trop rapidement dans son problème?
MB
Administrateur
Administrateur
Messages : 8117
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Re: Trouver une fonction à partir d'un tableau

Message non lu par MB »

Aleph a écrit :Qu'ai-je lu trop rapidement dans son problème?
Je parlais de moi !
Je pensais simplement qu'il voulait faire une interpolation ... j'avais pas vu qu'il voulait prédire une valeur.
MB. Rejoignez notre partenaire pCloud et bénéficiez de 10Go de stockage gratuits ou d'une offre premium !
Pas d'aide en message privé. Merci de consulter ce sujet avant de poster votre premier message.
Tonn83
Utilisateur éprouvé
Utilisateur éprouvé
Messages : 886
Inscription : mercredi 05 novembre 2008, 01:19
Localisation : Paris, France

Re: Trouver une fonction à partir d'un tableau

Message non lu par Tonn83 »

Comme l'a remarqué Framboise, on s'attend à une hyperbole. Tu peux donc essayer de chercher une fonction de la forme $f(x)=\frac{\lambda}{x}+\mu x+\beta$.

Néanmoins, tu as une infinité de courbes continues qui prennent les valeurs demandées. La fonction peut fort bien s'annuler en x=100 ou valoir n'importe quelle valeur, par exemple 7 875 346 875. Il te faut fixer un espace de fonctions plausibles de dimension <5. En dimension 4, il existera au plus une solution. En dimension 3, il s'agira d'une solution approchée, et il te faudra donner un sens au mot "approximation".

Par exemple, pour déterminer $\lambda$, $\mu$ et $\beta$, tu peux vouloir minimiser
$\sum_{i=1}^4(B_i-f(A_i))^k$

Pour différents entiers k, tu n'obtiendras pas forcément la même solution.

N'oublie pas non plus ton problème initial : estimer les valeurs de f(x) pour des grandes valeurs de x. Si tu te contentes d'une régression linéaire, tu obtiens une fonction affine décroissante. Si tu approximes par une fonction de la forme ci-dessus, je crains fort que $\mu$ soit positif, et donc que f devienne proche d'une fonction affine croissante en l'infini. Accorde donc une attention particulière au choix des fonctions par lesquelles tu approximes. :mrgreen:
Tonn83
Framboise
Utilisateur chevronné
Utilisateur chevronné
Messages : 1175
Inscription : lundi 21 mai 2007, 13:57
Statut actuel : Autre
Localisation : Dordogne

Re: Trouver une fonction à partir d'un tableau

Message non lu par Framboise »

Je dis bien une allure d'hyperbole, pas pour autant une hyperbole.
On peut très bien être avec un fragment de parabole ou des tas d'autres courbes, qui peuvent faire intervenir des log, exponentielle...

Il faudrait connaitre mieux le contexte.
Valeurs obtenues par des mesures physiques ?
Cela concerne un problème pratique, de quel type ?
La courbe doit-elle passer exactement par ces points ?
L'extrapolation n'a pas de sens sans en connaitre le contexte.
Quelqu'un a 6 dents à 6 ans, 16 dents à 16 ans, combien aura-t-il de dents a 50 ans ?

On peut expérimenter avec:
http://zunzun.com/
J'ai le virus des sciences, ça se soigne ?
Aleph

Re: Trouver une fonction à partir d'un tableau

Message non lu par Aleph »

Framboise a écrit : Quelqu'un a 6 dents à 6 ans, 16 dents à 16 ans, combien aura-t-il de dents a 50 ans ?
50! :)
Tonn83
Utilisateur éprouvé
Utilisateur éprouvé
Messages : 886
Inscription : mercredi 05 novembre 2008, 01:19
Localisation : Paris, France

Re: Trouver une fonction à partir d'un tableau

Message non lu par Tonn83 »

Aleph a écrit :
Framboise a écrit : Quelqu'un a 6 dents à 6 ans, 16 dents à 16 ans, combien aura-t-il de dents a 50 ans ?
50! :)
Aïe ! Je suis en avance sur mon age. J'ai 30 dents mais je n'ai pas encore 30 ans ! :D
Tonn83
projetmbc
Utilisateur chevronné
Utilisateur chevronné
Messages : 2315
Inscription : samedi 29 décembre 2007, 00:58

Re: Trouver une fonction à partir d'un tableau

Message non lu par projetmbc »

Framboise a écrit :Quelqu'un a 6 dents à 6 ans, 16 dents à 16 ans, combien aura-t-il de dents a 50 ans ?
Je ne répondrais pas à cette question, j'ai trop peur de m'y casser les dents... :mrgreen:
Et comme vous pouvez le constater dans mon sourire, j'ai en ai plein.
Framboise
Utilisateur chevronné
Utilisateur chevronné
Messages : 1175
Inscription : lundi 21 mai 2007, 13:57
Statut actuel : Autre
Localisation : Dordogne

Re: Trouver une fonction à partir d'un tableau

Message non lu par Framboise »

Ce doit être comme cela que l'on détermine l'âge de cadavres en médecine légale...
Je ne sais pas comment l'on compte avec les troisièmes dents. :roll:

Pas beaucoup de nouvelles de notre ami jagt10 si son problème est résolu pour lui.
J'ai le virus des sciences, ça se soigne ?