QALC: quelle est la formule mathématique?

Avatar de l’utilisateur
Pascalita
Messages : 3192
Inscription : dim. 14 août 2016 11:26
Présentation : viewtopic.php?f=78&t=7720&p=228775#p228775
Profil : Bilan +
Test : WAIS

Re: QALC: quelle est la formule mathématique?

Message par Pascalita »

Hors-sujet
Fu a écrit : mer. 16 sept. 2020 13:49 Au départ j’avais cherché du côté des courbes de Bézier, mais je n’ai pas creusé. Un premier point en (0, 1), un autre en (100, 60), et un ou deux points intermédiaires pour que le point d’inflection passe par (75, 30), mais ça faisait trop de calculs pour moi… :blond:
Non, Fu, non.
Tu ne peux juste pas utiliser ce smiley-là.
Et je te préviens tout de suite, celui-là non plus : :emo:
Et celui-là, n'y pense même pas : :heralkes:
Bien sûr, celui-là non plus : :rose:
Ni ceux-là : :blonde: :blonde2: :blonde3:
Faut être conséquent dans la vie, quand même.

Avatar de l’utilisateur
Jahroo
Messages : 1401
Inscription : lun. 24 déc. 2018 09:45
Présentation : https://www.adulte-surdoue.fr/viewtopic ... 39#p289139
Profil : Bilan +
Test : WAIS
Localisation : Ici et ailleurs
Âge : 45

Super contributeur

Re: QALC: quelle est la formule mathématique?

Message par Jahroo »

Hors-sujet
[mention]Pascalita[/mention] Le comble du toupet est d'en avoir tout en en étant dépourvu.
Afin de rendre tout de même mon passage ici constructif, j'annonce faire aussi partie du rang des émerveillés.
"J'aime la règle qui corrige l'émotion. J'aime l'émotion qui corrige la règle."
George Braque

Avatar de l’utilisateur
pixelvois
Papa Ours
Papa Ours
Messages : 6108
Inscription : dim. 27 nov. 2011 10:50
Présentation : topic1098.html
Profil : Bilan +
Test : WAIS
Localisation : planète Mars en navet rond
Âge : 52

Ancien Membre de l'équipe

Re: QALC: quelle est la formule mathématique?

Message par pixelvois »

J'ai bien conscience d'arriver après la "bataille" (je ne passe plus que très sporadiquement par ici depuis un bon moment ^^), mais des fois que cela soit encore utile...

Le soucis avec l'hyperbole (polynôme de 2nd degré), c'est qu'il n'y en a qu'une seule qui passe par trois points distincts, donc impossible de contrôler le "point bas". La solution de conversion par deux segments de droite est la plus simple à résoudre (et probablement suffisante en terme de résultat), mais sans doute moins évidente à mettre dans excel (formules différentes selon que le pourcentage en entrée est inférieur ou supérieur à 75).

Comme Fu, mon intuition (de graphiste plus que mathématicien) m'orienterait vers une solution basée sur les courbes de Bézier : simple et intuitif dans les logiciels de dessin vectoriel, plus délicat à manipuler pour obtenir une fonction du type f(x) plutôt que paramétrique et sur un seul intervale (0-100, typiquement les courbes de Béziers se définissent "par morceaux" à l'instar de la solution via deux segments de droites).

Cependant, les courbes de Bézier n"étant rien d'autre que des polynômes du 3ème degré, de manière similaire (mathématiquement) à la résolution d'une hyperbole passant par trois points distincts, on peut "faire passer" un polynôme du 3ème degré par 4 points distincts, et donc avoir plusieurs solutions pour 3 points distincts (une solution plus "souple" que l"hyperbole dont on ne peut faire varier la courbure).

L'idée est donc de chercher non plus une équation du type f(x) = ax2 + bx + c, mais du type f(x) = ax3 + bx2 + cx + d :
d se trouve aisément : 1 grâce à la condition f(0) = 1
ensuite, on décide que a, b ou c sera notre "variable d'ajustement" (inconnue traitée comme connue pour trouver les valeurs des deux autres qui en seront "fonction") : j'ai choisi c (qui semblait me simplifier relativement la vie, en tous cas les calculs) en posant f(75) = 30 et f(100) = 100.
On arrive à (je vous épargne les développements):

a = (29 - b*5625 - c*75)/421875
b = (59/10000 - 100*(29 - c*75)/421875 - c/100) / (1 - 562500/421875)

par tatonnements, j'ai posé c = 0.2, ce qui donne (arrondi à 8 décimales):
a = 0.00005644
b = -0.00174444

soit: f(x) = 0.00005644 x3 - 0.00174444 x2 + 0.2 x + 1

Si c'est utile je peux prendre le temps de mettre en ligne la page/outil que j'ai codé pour "tatonner", et éventuellement l'améliorer (relativement brute et sommaire à l'heure actuelle) si besoin ;)
"Dans un monde où chacun triche, c'est l'homme vrai qui fait figure de charlatan." ( André Gide - Les faux monnayeurs )

Avatar de l’utilisateur
Bulle d'o
Messages : 2754
Inscription : sam. 3 nov. 2018 01:10
Présentation : [url=https://adulte-surdoue.fr/viewtopic.php?f=9&t=9657] un bout de moi [/url]
Profil : Bilan +
Test : WAIS
Localisation : bof
Âge : 45

Re: QALC: quelle est la formule mathématique?

Message par Bulle d'o »

► Afficher le texte
"Je ne communique pas mes jugements, je ne suis pas un donneur de leçons, l'observation du monde ne suscite chez moi qu'un dialogue intérieur, un interminable dialogue avec moi-même."

Les désorientés (2012) de Amin Maalouf

Avatar de l’utilisateur
blue hedgehog
Messages : 1832
Inscription : jeu. 5 juil. 2018 13:53
Présentation : viewtopic.php?f=9&t=9456
Profil : Bilan +
Test : WAIS
Localisation : B-Lux
Âge : 42

Re: QALC: quelle est la formule mathématique?

Message par blue hedgehog »

Merci [mention]pixelvois[/mention], la courbe de Bézier est en effet une solution jolie, et tu l'expliques vraiment bien. Merci c'est très intéressant.
Et au départ, c'est bien une courbe que je cherchais pour exactement cette raison d'esthétisme. Une solution élégante c'est tellement gratifiant. Mais la raison est passée par là. Et j'ai utilisé une formule double, qui tracée me donne deux droites qui se touchent au point d'inflexion 30, 75.
La formule n'est pas terriblement compliquée à écrire dans un tableur, les formules contenant des conditions (Si.. ) sont assez communes et me sont très familliaires.
La raison pour mon choix est l'utilisation, dans la vraie vie, de cette formule. En effet comme je l'ai expliqué plus haut dans un message, ma question a un but précis, la conversion de données. Et ces données sont des résultats de tests. Or, effectivement si on applique la solution de la courbe, les derniers points sont compliqués à obtenir. Il est, au vu du point 30,75 normal que les points en dessous de 30 soit plus simple à obtenir qu'au dessus. Mais il n'est pas normal que l'écart entre 31 et 32 soit par exemple plus petit sur l'autre axe que celui entre 59 et 60. Et ça c'est dû au fait que les données sont en fait des résultats à des tests de candidats.
Quand j'étais à l'école / aux études régulièrement on me disait tu as 18/20, c'est très bien. Et quand je demandais pourquoi pas 20 on me répondait "rien n'est jamais parfait". Cette réponse a le don de m'agacer. D'autres fois je voyais que personne dans la classe n'avait plus de 15. Les derniers points était virtuellement impossibles à atteindre. Je pense que ce genre de système de cotation n'est pas correct envers les élèves. Et je pense que plus le système est simple et transparent mieux il est. Je suis bien d'accord que ce débat est loin de la question initiale. Mais je voulais juste expliquer pourquoi j'ai utilisé la solution des droites avec point d'inflexion.

Bonne journée :)
Une bougie offre sa lumière aux alentours, pendant qu'elle se consume. (Proverbe chinois)

Avatar de l’utilisateur
pixelvois
Papa Ours
Papa Ours
Messages : 6108
Inscription : dim. 27 nov. 2011 10:50
Présentation : topic1098.html
Profil : Bilan +
Test : WAIS
Localisation : planète Mars en navet rond
Âge : 52

Ancien Membre de l'équipe

Re: QALC: quelle est la formule mathématique?

Message par pixelvois »

blue hedgehog a écrit : ven. 9 oct. 2020 07:54 effectivement si on applique la solution de la courbe, les derniers points sont compliqués à obtenir. Il est, au vu du point 30,75 normal que les points en dessous de 30 soit plus simple à obtenir qu'au dessus. Mais il n'est pas normal que l'écart entre 31 et 32 soit par exemple plus petit sur l'autre axe que celui entre 59 et 60. Et ça c'est dû au fait que les données sont en fait des résultats à des tests de candidats.
J'avoue avoir du mal à suivre ton raisonnement...
Ce que je vois clairement avec la solution des deux segments de droites, c'est deux pentes (très) différentes : entre 0 et 75 pourcents la pente est faible (plus proche de l'horizontale) pour obtenir un intervale entre 1 et 30, tandis qu'entre 75 et 100 la pente est forte (plus proche de la verticale) pour obtenir un intervale entre 30 et 60, donc pour gagner un point "note" il faut gagner plus de pourcentage avant 75% qu'après...
Ce qu'apporte "l'élégance" de la courbe c'est que la pente varie continuement, plutôt qu'avoir un point de "rupture" à 75% (30)... forcément, avec la courbe le point d'inflexion des segments a une pente différente du point final ^^

Pour illustrer cela et compléter mon précédent post (paske j'ai pas les réflexes d'un mathématicien et que j'avais pas percuté avant d'y repenser) :

La "variable d'ajustement" (le coefficient "c" du polynôme f(x) = ax3 + bx2 + cx + d) était intuitivement bien choisie parce que cible directement la pente à l'absisse x = 0... en effet, la pente d'une fonction étant définie par la dérivée de celle-ci (f'(x) = 3ax2 + 2bx + c) f'(0) = c, donc pour c = 0 la pente "de départ" est strictement horizontale, pour c négatif la pente est plongeante (descendante -- et d'ailleurs il existe un c négatif pour lequel a = 0, c'est à dire que l'on retombe sur le polynôme de second degré qui définit l'hyperbole du début du topic qui avait ce défaut d'un point bas vers les premiers pourcentages) et plus c augmente, plus la pente de départ est verticale (ce qui fait qu'aux environs de c = 1.5 on a un assez grand "plat" avant de remonter un peu avant 75%, et au delà de 1.5 on voit de plus en plus clairement une double courbure (avant 75% on monte plus haut que 30, puis on redescend (légèrement) en dessous et on remonte jusqu'à 60 en passant à nouveau par 30 en passant à 75%). A partir d'une certaine pente, on fini même par avoir le point bas après 75% (et un point haut au delà de 60) !

"Mon" c = 0.2 obtenu par tatonnement, s'approche approximativement d'une pente proche de celle de la droite 0/1% - 30/75% pour gommer au mieux tout effet "plateau", de double courbure ou de courbure trop prononcée (petit effet "plateau" au départ pour les valeurs de c trop proches de zero)...

pour c = -1 :
f(x) pour c = -1.jpg
pour c = 0 :
f(x) pour c = 0.jpg
pour c = 0.2 :
f(x) pour c = 0.2.jpg
pour c = 1 :
f(x) pour c = 1.jpg
pour c = 1.5 :
f(x) pour c = 1.5.jpg
pour c = 3 :
f(x) pour c = 3.jpg
Hors-sujet
► Afficher le texte
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
"Dans un monde où chacun triche, c'est l'homme vrai qui fait figure de charlatan." ( André Gide - Les faux monnayeurs )

Répondre