Course et ralentissement

Olympiades mathématiques, énigmes et défis
GaBuZoMeu
Habitué(e)
Messages: 6020
Enregistré le: 05 Mai 2019, 10:07

Re: Course et ralentissement

par GaBuZoMeu » 12 Juin 2019, 23:36

Une remarque : prendre une courbe de Bézier cubique avec des points d'abscisses régulièrement espacées, ça revient exactement à faire l'interpolation de Hermite avec les valeurs de la fonction et de sa dérivée
en : et
et en : et



Pierre256
Membre Naturel
Messages: 26
Enregistré le: 16 Mai 2019, 16:27

Re: Course et ralentissement

par Pierre256 » 13 Juin 2019, 16:13

Bonjour,
La représentation graphique est une bonne idée. C'est une application d'une propriété importante de la parabole.
Le graphe de la vitesse/décélération de chaque véhicule (voir les images de Gbzm) est un arc de parabole. Au temps t=0, la tangente représente le vecteur vitesse, il coupe l'axe des X en un point T. Le troisième point de l'arc de parabole est la position du point d'arrivée, au même instant vitesse nulle.
Ces trois points étant connus, l'arc de parabole est défini. Je rappelle que un tel arc se calcule par de simples divisions par 2, idéal pour un calcul informatique.
Je sais que les courbes de Bézier du 3è degré sont très utilisée, mais à mon avis, le second degré est plus facile à calculer et à manipuler.
Bonne journée.

GaBuZoMeu
Habitué(e)
Messages: 6020
Enregistré le: 05 Mai 2019, 10:07

Re: Course et ralentissement

par GaBuZoMeu » 13 Juin 2019, 17:22

Raté Pierre, il ne s'agit pas d'arcs de paraboles mais bien de courbes de Bézier cubiques. Et la vitesse n'est pas nulle à l'arrivée. Donc pas mal d'inexactitudes dans ce que tu écris.
Quant à la "division par deux", je pense que tu fais allusion à l'algorithme inventé par de Casteljau. Il n'est pas limité aux courbes de Bézier de degré 2 (arcs de parabole), mais fonctionne en tout degré, en particulier pour les courbes de Bézier cubique que j'ai dessinées.
Par ailleurs, il semble bien que cet algorithme récursif ne soit plus en vogue pour tracer les courbes de Bézier.
Pour la petite histoire, Bézier travaillait chez Renault, et de Casteljau chez Citroën.

Pierre256
Membre Naturel
Messages: 26
Enregistré le: 16 Mai 2019, 16:27

Re: Course et ralentissement

par Pierre256 » 13 Juin 2019, 18:42

Petite réponse rapide. Peux-tu donner une bonne raison pour utiliser une courbe cubique et non une parabole ?
Si on ne veut pas une vitesse nulle, il suffit que la tangente au point d'arrivée ne soit pas l'axe de X, mais une droite suivant la vitesse souhaitée.
Pour la division par 2, je fais juste allusion à la méthode utilisée par un logiciel de CAO-DAO nommé Ascodes et que j'ai adoptée à titre personnel. Je sais bien que Bézier travaillait chez Renault.
D'après toutes mes lectures, l'avantage du degré 3 c'est la facilité de modification locale grâce aux "poignées".

GaBuZoMeu
Habitué(e)
Messages: 6020
Enregistré le: 05 Mai 2019, 10:07

Re: Course et ralentissement

par GaBuZoMeu » 13 Juin 2019, 20:56

On peut effectivement faire passer une parabole et une seule par deux points avec les deux tangentes fixées (pourvu que les tangentes ne soient pas parallèles et qu'aucune ne passe par l'autre point). Voir ici l'algorithme de de Casteljau (prise de milieu itérée -en degré 2 c'est une propriété connue de la parabole, mais je répète que ça marche pour les courbes de Bézier en tout degré) à l'oeuvre pour construire cinq points de la parabole avec leurs tangentes :

Image

Mais ça ne va pas satisfaire Makmak parce que ça ne donnera pas l'ordonnée (la position) en fonction simple de l'abscisse (le temps). Par contre, comme je l'ai expliqué (peut-être n'as-tu pas lu, Pierre) l'utilisation d'une courbe de Bézier cubique avec les abscisses des quatre points de contrôle régulièrement espacés, ça donne bien l'ordonnée comme polynôme de degré 3 en l'abscisse. Degré 3, on ne peut pas faire plus petit puisqu'on impose quatre conditions : les valeurs et les dérivées aux deux extrémités de l'intervalle.
J'ai parlé plus haut d'interpolation de Hermite comme alternative à Bézier. Je détaille un peu.
À l'instant , position et vitesse . À l'instant , position et vitesse . On applique l'interpolation d'Hermite par la méthode de différences divisées :



et la lecture du tableau des différences divisées donne le polynôme



PS. Tout le monde aura bien sûr reconnu dans ce polynôme le polynôme que j'ai déjà donné dans ce message, en utilisant l'approche Bézier.

Pierre256
Membre Naturel
Messages: 26
Enregistré le: 16 Mai 2019, 16:27

Re: Course et ralentissement

par Pierre256 » 13 Juin 2019, 21:57

Ben, si c'est plus simple, alors tout va bien.
Par ailleurs, il est bien clair que ça fait beaucoup plus sérieux qu'une simple parabole qui fait la même chose et enseignée au lycée.

GaBuZoMeu
Habitué(e)
Messages: 6020
Enregistré le: 05 Mai 2019, 10:07

Re: Course et ralentissement

par GaBuZoMeu » 13 Juin 2019, 22:08

Justement, je viens d'expliquer qu'une simple parabole ne peut pas faire ce que fait un polynôme de degré trois : donner de façon simple l'ordonnée en fonction de l'abscisse sur un intervalle, EN FIXANT LES VALEURS ET LES DÉRIVÉES AUX BORNES DE L'INTERVALLE. J'ai écrit en gros et en couleur pour que tu puisses le lire, puisque tu ne l'avais pas lu dans mon précédent message.

Mais si tu prétends pouvoir le faire, explique-nous comment, je t'en prie.
Explique nous comment écrire grâce à une parabole la position en fonction du temps , si au temps 0 la position est -324 et la vitesse est 47, et si au temps 19 la position est 0 et la vitesse 2. Vas-y, montre ce que tu sais faire !

Pierre256
Membre Naturel
Messages: 26
Enregistré le: 16 Mai 2019, 16:27

Re: Course et ralentissement

par Pierre256 » 13 Juin 2019, 23:02

Bon, si on porte sur l'axe des X le temps, c'est à dire à une échelle proportionnelle quelconque.
Sur l'axe des Y la distance à parcourir, disA et disB.
Au temps t0, aucun des deux mobile n'est parti, on reporte leur vitesse initiale Va et Vb, coefficients directeurs de 2 droites Da et Db passant par les points d'ordonnée Va et Vb.
Sur l'axe des X, on positionne le point d'arrivée Ar unique pour les deux mobiles.
Bien-sûr ce point sera situé de telle façon que le problème soit possible, c'est à dire à une abscisse supérieure aux points d'intersection des tangentes construites.
On peut fixer comme on veut la vitesse d'arrivée qui sera la même pour les deux mobiles, cela sera concrétisé par un droite. Par exemple si on veut que la vitesse d'arrivée soit 0, cette droite sera l'axe de X.
Cette droite, la tangente en Av coupe chacune des tangentes représentant les vitesses en Ta et Tb.
Pour chaque mobile, on a le point de départ, abscisse T0=0, le point d'arrivée Ar le même pour les deux et les points Ta et Tb obtenus par intersection.
Pour chaque mobile on a ainsi défini les éléments nécessaires et suffisants pour fixer un arc de parabole.
Il est possible de calculer l'équation de la parabole, mais étant donné le contexte de la question, il est plus facile de calculer le point cherché par dichotomie, méthode déjà expliquée.
Je pense avoir suffisamment détaillé la méthode pour qu'elle puisse être appliquée autant graphiquement que numériquement.
Mais comme le problème a été résolu et que le demandeur est content, j'ai proposé cela, juste pour le plaisir.
Concernant l'utilisation de la parabole, j'ai eu de longs échanges sur ce sujet il n'y a pas très longtemps, j'ai répondu à toutes les questions. Je peux recommencer, si tu veux. Tu peux aussi demander à Aviateur, vu qu'il n'a pas répondu à mon dernier message sur le sujet, on peut supposer qu'il a compris.
Bonne soirée.

GaBuZoMeu
Habitué(e)
Messages: 6020
Enregistré le: 05 Mai 2019, 10:07

Re: Course et ralentissement

par GaBuZoMeu » 14 Juin 2019, 08:07

Pierre, tu as décidément quelques petits problème de lecture. Je mets de nouveau en grand et en couleur pour que tu ne loupes pas quelque chose d'important :
DONNER DE FAÇON SIMPLE L'ORDONNÉE EN FONCTION DE L'ABSCISSE

Tu ne réponds absolument pas à cette demande. Tu répètes ce que toute personne un peu au courant du sujet connaît, mais toute personne un peu au courant sait aussi que la demande écrite en rouge n'est pas correctement satisfaite avec une courbe de Bézier quadratique (un segment de parabole).

En effet, ce procédé donne l'abscisse et l'ordonnée comme polynômes du second degré en un paramètre . Si on veut exprimer l'ordonnée en fonction de l'abscisse, il faut résoudre l'équation du second degré pour avoir le paramètre en fonction de l'abscisse (et choisir la bonne racine !), puis porter la solution dans la formule du second degré qui donne l'ordonnée en fonction de .

Je persiste à penser qu'il est nettement plus commode d'avoir l'ordonnée comme polynôme de degré 3 en l'abscisse, polynôme que j'ai donné explicitement de deux manières : par la méthode de Bézier et par l'interpolation d'Hermite . Je rappelle ce polynôme en (le temps, sur l'axe des abscisses), sous ses deux formes :



Je rappelle les paramètres : la distance au but au temps , la vitesse au temps , le temps de parcours, la vitesse à l'arrivée.

Avatar de l’utilisateur
fatal_error
Modérateur
Messages: 6610
Enregistré le: 22 Nov 2007, 13:00

Re: Course et ralentissement

par fatal_error » 14 Juin 2019, 09:23

hi,

@gbzm, hermite c'est good,
par contre, comment obtiens tu d(tau) avec bézier (formule du 12 Juin 2019 12:28)
je pense pas que tu cherches t tq P[0](t)=tau pour injecter dans P[1](t) (ca m'a l'air trop fastidideux de chercher t sur un eq de degré 3??)
la vie est une fête :)

GaBuZoMeu
Habitué(e)
Messages: 6020
Enregistré le: 05 Mai 2019, 10:07

Re: Course et ralentissement

par GaBuZoMeu » 14 Juin 2019, 09:33

fatal_error a écrit:par contre, comment obtiens tu d(tau) avec bézier (formule du 12 Juin 2019 12:28)

J'ai répondu à cette question le 12 juin à 11:58 :
Tu es peut-être gêné par la relation un peu compliquée qu'il y a entre le paramètre t et le temps écoulé. Il y a un moyen de régler ça, au prix de la perte d'un degré de liberté dans la fabrication d'une solution : ce moyen consiste à fixer s à la valeur x(A_4)/3, de sorte que les abscisses des points de contrôle sont en progression arithmétique : 0, x(A_4)/3, 2*x(A_4)/3, x(A_4).
À ce moment là, le temps écoulé est simplement t*x(A_4) (avec t variant de 0 à 1).

Je veux bien expliciter si cette réponse ne te satisfait pas. Je signale simplement que , ce qui fait que est le qu'on retrouve dans le polynôme de degré 3 façon Bézier. Ça te suffit ou dois-je détailler ?

Avatar de l’utilisateur
fatal_error
Modérateur
Messages: 6610
Enregistré le: 22 Nov 2007, 13:00

Re: Course et ralentissement

par fatal_error » 14 Juin 2019, 09:44

hi,
> Ça te suffit ou dois-je détailler ?
Ca me suffit,thx

je comprenais pas pourquoi s disparaissait, je croyait que comme P[1](t) et P[0](t) se ressemblait, par chance, s "sautait", mais en fait la formule que tu obtiens est en fait déduite avec un s particulier

de fait je comprends pas trop comment tu peux écrire l'égalité entre d_bezier(tau) et d_hermite(tau) vu que dans hermite, à aucun moment on se soucie de s.

(je précise que je découvre hermite aujourd'hui, donc j'ai bêtement appliqué l'algo sans bien maitriser ce qu'il y a de sous-jacent)
la vie est une fête :)

GaBuZoMeu
Habitué(e)
Messages: 6020
Enregistré le: 05 Mai 2019, 10:07

Re: Course et ralentissement

par GaBuZoMeu » 14 Juin 2019, 09:54

Il suffit de développer pour vérifier l'égalité. :mrgreen:
Sinon, on peut facilement se convaincre que la solution du problème d'interpolation d'Hermite (avec valeurs de la fonction et de sa dérivée données en deux points) a une solution unique comme polynôme de degré 3.

Avatar de l’utilisateur
fatal_error
Modérateur
Messages: 6610
Enregistré le: 22 Nov 2007, 13:00

Re: Course et ralentissement

par fatal_error » 14 Juin 2019, 10:40

Ok, je regarde en rentrant si pour tout points A1..A4 on a legalite si on impose s=T/3
la vie est une fête :)

Pierre256
Membre Naturel
Messages: 26
Enregistré le: 16 Mai 2019, 16:27

Re: Course et ralentissement

par Pierre256 » 14 Juin 2019, 12:02

Bonjour Gbzm,
Pierre, tu as décidément quelques petits problème de lecture. Je mets de nouveau en grand et en couleur pour que tu ne loupes pas quelque chose d'important :
DONNER DE FAÇON SIMPLE L'ORDONNÉE EN FONCTION DE L'ABSCISSE

Avec tout le respect que je dois, cette remarque montre bien que tu n'as aucune notion de la programmation et probablement aucune idée de ce que ça pourrait être.
A te lire, on peut conclure que la résolution d'une équation du second degré te fait peur. Et si c'était un système du second degré, qu'en dirais-tu ?
Je te rappelle par ailleurs que tu me dois aussi du respect et de la même façon. Ce à quoi tu n'as pas pensé est forcément faux, normal, puisque tu détiens la vérité.

Avatar de l’utilisateur
fatal_error
Modérateur
Messages: 6610
Enregistré le: 22 Nov 2007, 13:00

Re: Course et ralentissement

par fatal_error » 14 Juin 2019, 12:19

Bonjour,

@Pierre256==Dlzlogic, tu avais déjà été banni, nous avons toléré ton retour, ce n'est pas pour que tu provoques de nouveau les intervenants.
Comme tu n'as décidément toujours pas envie de changer de comportement, je t'invite une nouvelle fois à contribuer sur d'autres forums

cdt,
fatal_error
la vie est une fête :)

Avatar de l’utilisateur
fatal_error
Modérateur
Messages: 6610
Enregistré le: 22 Nov 2007, 13:00

Re: Course et ralentissement

par fatal_error » 14 Juin 2019, 12:46

A1..A4 on a legalite si on impose s=T/3

bon, j'ai un peu déliré en oubliant les conditions initiales sur A1 et A4 (+sur A2 et A3 pour le vecteur directeur). En vérifiant avec s = T/3, je trouve bien t=tau/T et je comprends alors mieux d'où sort la d_bezier.

j'ai pas pris la peine de vérifier l'égalité d_bezier, d_hermite en développant
je suis juste surpris qu'on l'obtienne pour avoir choisi s=T/3 en particulier (côté bézier)
la vie est une fête :)

GaBuZoMeu
Habitué(e)
Messages: 6020
Enregistré le: 05 Mai 2019, 10:07

Re: Course et ralentissement

par GaBuZoMeu » 14 Juin 2019, 12:58

Le fait de choisir (autrement dit, d'avoir les abscisses en progression arithmétique) fait que dans la paramétrisation de la courbe de Bézier l'abscisse est fonction affine (ici linéaire puisqu'on part à 0) du paramètre . Réciproquement est fonction affine de l'abscisse et donc l'ordonnée est polynôme de degré 3 en l'abscisse.
Les valeurs de ce polynôme (ordonnées de et ) et de sa dérivée (pentes de et ) aux extrémités de l'intervalle sont données (ce sont respectivement et ). Ce polynôme est donc l'unique solution du problème d'interpolation d'Hermite pour ces données. OK ?

Avatar de l’utilisateur
fatal_error
Modérateur
Messages: 6610
Enregistré le: 22 Nov 2007, 13:00

Re: Course et ralentissement

par fatal_error » 14 Juin 2019, 13:10

OK ?

oui,

oui mon raisonnement était un peu étrange:
sans bidouiller s, je partais du principe qu'on a un certain x(t) (donc avec s), et qu'en inversant x pour trouver t=x-1(tau) (en choisissant bien..), qu'en injectant dans P[1](t) on obtenait encore un polynome de degré 3. Vu que on avait déjà injecté les condo initiales, alors yavait plusieurs candidats pour l'égalité avec hermite

sauf qu'en fait le seul polynome de degré 3 avec bézier (en tau), il est obtenu pour t en rel linéaire avec tau
et seul s = T/3 satisfait la relation pour avoir t=a*tau
la vie est une fête :)

Avatar de l’utilisateur
Dattier
Membre Relatif
Messages: 105
Enregistré le: 06 Juin 2019, 01:55

Re: Course et ralentissement

par Dattier » 14 Juin 2019, 20:15

Bonjour,

A propos des courbes de Bézier :

https://www.youtube.com/watch?v=Ccxd6qz ... 0&index=21

 

Retourner vers ⚔ Défis et énigmes

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 5 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite