Inscription / Connexion Nouveau Sujet
Niveau énigmes
Partager :

Fonction passant par 3 points (logarithme ?)

Posté par
jpchapo
16-03-19 à 16:39

Bonjour !

Je suis en train de chercher à faire une fonction qui en entrant la population d'une ville me renvoie un rayon autour de cette ville (je recherche avec des amis à acheter un terrain assez loin des villes).

Pour ça j'ai défini 3 points par lesquelles cette fonction doit passer :
Pour une ville de 20.000 habitants (au lieu de dire 20.000 on va marquer 20 pour simplifier, je ne m'intéresse pas vraiment aux villes de moins de 1000 habitants) : r(20)=10
Pour 150.000 habitants : r(150)=40
Et pour 1.500.000 habitants : r(1500)=80
(h la population et r(h) la fonction donnant le rayon)

J'ai au début essayé avec seulement 2 points, une fonction logarithme de la forme r(h)=(ah+b)*ln(h) marchait, mais je me retrouvais avec des données pas utilisables.
Donc je me suis dis qu'avec 3 points je pourrais avec quelque chose de plus fiable.
Je pense que la fonction est de la forme r(n)=f(n)*ln(h).
J'ai essayé de changer la base du logarithme (cf. image), je ne sais pas si c'est important.

Voilà... j'espère que j'ai bien expliqué mon problème, les maths sont loins pour moi haha, et que quelqu'un pourra m'aider !

Merci d'avance

Fonction passant par 3 points (logarithme ?)

Posté par
jpchapo
re : Fonction passant par 3 points (logarithme ?) 16-03-19 à 17:17

faute de frappe :"je pense que la fonction est de la forme r(h)=f(h)*ln(h)"
Avec f(h) une fonction non linéaire...

Posté par
carpediem
re : Fonction passant par 3 points (logarithme ?) 16-03-19 à 17:48

salut

j'essayerai une fonction homograpique : f(x) = (ax + b)/x (au moins localement) (du genre 0 < x < 2000) ...

Posté par
jpchapo
re : Fonction passant par 3 points (logarithme ?) 16-03-19 à 18:30

Je viens d'essayer votre proposition (merci !) :
r(h)=(ah+b)/h
r(20)=(20a+b)/20=10
r(150)=(40a+b)/150=40
--> a=580/13 et b=-9000/13
Mais en appliquant en h=1500, on trouve : r(1500)=574/13=44,... et pas du tout 80 :/
Il me semble que si la forme de la fonction n'a que 2 paramètres, je ne pourrais pas être "en accord" avec les 3 points.
En bidouillant sur un graphique, la fonction r(h)=((ah+b)/h)+(1/42)h est assez proche de ce que je recherche (r(20)=10, r(1500)=80, r(150)=44). En prenant a et b trouvés plus haut.

De la même manière, en restant sur une forme logarithmique (de base 1,1) la fonction r(h)=(0,00017h+1)*log((2/7)x-3) passe par les 3 points ! (enfin pas exactement, mais pas loin).

Je pense que pour l'usage que je veux en faire, ces fonctions me suffiront, donc on peut dire que le problème est résolu !
(même si je suis assez curieux quand au fait d'avoir une fonction qui passe vraiment, sans approximation, par les points. Si jamais vous avez la réponse !)

Merci beaucoup et bonne soirée !

Posté par
carpediem
re : Fonction passant par 3 points (logarithme ?) 16-03-19 à 18:58

alors tant mieux ...

éventuellement tu peux essayer une régression (faisable avec calculatrice ou tableur) en essayant différents modèles de régression ...

cependant avec trois points ce peut être très approximatif ...

Posté par
verdurin
re : Fonction passant par 3 points (logarithme ?) 16-03-19 à 21:30

Bonsoir.
Pour une fonction qui passe exactement par les points, il y en a une de la forme
h\mapsto r(h)=a h^2 + bh +c
mais je ne pense pas qu'elle te convienne.

Il y en a aussi une de la forme
h\mapsto r(h)=\ln(a h^2 + bh +c)
qui te conviendrait sans doute mieux.

Il faut remarquer que le type de fonction proposé par carpediem, que je salue, est borné.
Ce qui n'est pas le cas de ceux que je te propose.

Posté par
jpchapo
re : Fonction passant par 3 points (logarithme ?) 17-03-19 à 18:49

Merci pour la réponse Verdurin
Je vais essayer de trouver celle de la forme logarithmique quand j'aurais un peu de temps!
(Il me semble que je préfère que la fonction ne soit pas bornée, si la ville est de plus en plus habité le rayon doit forcément être de plus en plus grand. Sinon on pourrait se retrouver avec une ville tellement grande qu'elle remplirait le rayon non ? dans la mesure où taille de la ville est liée à la population)

Posté par
carpediem
re : Fonction passant par 3 points (logarithme ?) 17-03-19 à 19:10

c'est pour ça que

carpediem @ 16-03-2019 à 17:48

salut

j'essayerai une fonction homograpique : f(x) = (ax + b)/x (au moins localement) (du genre 0 < x < 2000) ...
maintenant si la taille de la ville t'importe peu effectivement c'est problématique

mais il est vrai que ta courbe correspond visuellement à une courbe de logarithme qui n'est pas borné ...

ensuite éventuellement tu combines les deux avec la fonction f(x) = (ax + b)/x + p ln x + q

...

Posté par
Yzz
re : Fonction passant par 3 points (logarithme ?) 17-03-19 à 19:19

Salut,

Il me revient en tête une histoire (peut-être sortie d'une nouvelle de Marcel Aymé)
En gros, il s'agissait d'un instituteur se faisant inspecter.
Et l'inspecteur reprochait à l'instit' de trop insister sur l'usage de la ponctuation.
Alors celui-ci écrivit deux phrases à la craie au tableau :

L'inspecteur dit : "le maître est un imbécile"
"L'inspecteur, dit le maître, est un imbécile"

Pourquoi je pense à ça ?
A cause d'une remarque de verdurin, au sujet de carpediem :

Citation :
le type de fonction proposé par carpediem, que je salue, est borné.


... Mes cordiales salutations à tous les deux  

Posté par
carpediem
re : Fonction passant par 3 points (logarithme ?) 17-03-19 à 20:06



mes œillères sont transparentes ...



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !