Décélération progressive vers un point
Répondre à la discussion
Affichage des résultats 1 à 8 sur 8

Décélération progressive vers un point



  1. #1
    invite51addc0c

    Décélération progressive vers un point


    ------

    Bonjour (premier message ici ! ),

    Je me prend la tête sur une question bête... Est-ce que quelqu'un saurait m'aider ?
    Comment est-ce que je peux calculer de manière précise une décélération vers un endroit préétabli, de manière à être sûr que l'objet mouvant arrivera sur ce point avec une vélocité de zéro ?

    La question semble très bête mais j'ai du mal à trouver une solution convaincante...

    Merci !

    -----

  2. #2
    Jackyzgood

    Re : Décélération progressive vers un point

    Bonjour,

    comme ça a vu de nez ça me fait penser aux problèmes de mouvement dans un fluide, avec une force de frottement proportionnelle à la vitesse, ou à la charge d'un condensateur. Dans les 2 cas on se retrouve au final avec une équation contenant une exponentielle décroissante et donc une variation tendant vers 0 en s'approchant de la limite.

    Je ne sais pas exactement ce que tu cherche à faire, mais essaye une formule du genre :


    avec x étant la position, X la limite, t le temps et le temps après lequel on a parcouru la moitié de la distance.
    si c'est idiot mais que ca marche, c'est que ce n'est pas idiot

  3. #3
    doul11

    Re : Décélération progressive vers un point

    bonjour,

    l'accélération (ou décélération c'est pareil) c'est le taux de changement de la vitesse avec le temps

    si au point et si on veut au point :

    on suppose une décélération constante, donc la vitesse sera :

    ou calcule la pente de v :




    a est négatif on a donc bien un décélération, a chaque point t entre 10 et 100, v est diminué de 0.222
    La logique est une méthode systématique d’arriver en confiance à la mauvaise conclusion.

  4. #4
    invite51addc0c

    Re : Décélération progressive vers un point

    Merci beaucoup pour vos réponses (et de la qualité de celles-ci). Malheureusement je crois que ce n'est pas encore de mon niveau. Un peu ce que je craignais en fait.
    J'ai de relativement bonnes notions d'algorithmiques mais pour les maths je sèche un peu...

    C'est relativement frustrant, j'en suis à définir des hacks crados alors que je sais qu'une bonne maîtrise des maths me permettrait de résoudre le problème proprement.

    Rien que la notation m'échappe, pour vous dire (même si je pense saisir globalement vos explications).
    Ceci dit ça m'intéresse énormément, mais seulement il me semble que mes bases même en algèbre ne sont pas assez solides pour que je puisse aborder tout ça pour le moment.
    Il faudrait que je me procure des bouquins ou des bonnes ressources sur le net. Vous conseilleriez quoi ?

    Citation Envoyé par Jackyzgood Voir le message
    Je ne sais pas exactement ce que tu cherche à faire
    Je suis étudiant en art et je cherche à implémenter des algos de mouvements autonomes ('steering behaviours') en C++ pour une expérimentation en cours.

    Si vous pouvez expliquer en pseudo-code comment vous procéderiez ça m'aiderait plus je crois

  5. A voir en vidéo sur Futura
  6. #5
    doul11

    Re : Décélération progressive vers un point

    Citation Envoyé par Neewok Voir le message
    Merci beaucoup pour vos réponses (et de la qualité de celles-ci). Malheureusement je crois que ce n'est pas encore de mon niveau. Un peu ce que je craignais en fait.
    J'ai de relativement bonnes notions d'algorithmiques mais pour les maths je sèche un peu...

    C'est relativement frustrant, j'en suis à définir des hacks crados alors que je sais qu'une bonne maîtrise des maths me permettrait de résoudre le problème proprement.

    Rien que la notation m'échappe, pour vous dire (même si je pense saisir globalement vos explications).
    Ceci dit ça m'intéresse énormément, mais seulement il me semble que mes bases même en algèbre ne sont pas assez solides pour que je puisse aborder tout ça pour le moment.
    Il faudrait que je me procure des bouquins ou des bonnes ressources sur le net. Vous conseilleriez quoi ?


    Ah j'ai l'air malin avec mon intégrale !

    Tu est conscient de ton niveau et c'est bien, tu trouvera sur ce forum plein de gens compétant prêt a d'aider. A part pour l'algorithme, les forums physiques et mathématiques me semblent mieux pour poser tes questions sur les calculs que tu voudrai faire.

    Sur les maths appliqué tu peur aller voir cet excellent et très complet site : http://www.sciences.ch/htmlfr/accueil.php


    Pour en revenir au coeur du problème il faudrais en savoir un peut plus, quels mouvements ? quelle forme ?

    Par exemple la formule que je donne est pour une décélération progressive jusqu'à l'arrêt au point voulus, la formule de Jackyzgood fonctionne aussi mais ce n'est pas progressif, la décélération est rapide au début, puis lente a la fin.
    La logique est une méthode systématique d’arriver en confiance à la mauvaise conclusion.

  7. #6
    invite51addc0c

    Re : Décélération progressive vers un point

    Citation Envoyé par doul11 Voir le message
    Sur les maths appliqué tu peur aller voir cet excellent et très complet site : http://www.sciences.ch/htmlfr/accueil.php
    Ton site m'a l'air très bon, en ton cas son intro me séduit bien
    J'ai survolé l'intro de “Théorie de la démonstration” dans la partie Arithmétique, et ça parle de toutes sortes de choses qui m'intéressent beaucoup, et qui je pense sont assez essentielles de connaître (pour moi du moins).
    J'ai emprunté à la bibliothèque de mon école "Théorie et logique des automates" de John Von Neumann qui est précédé d'un texte introductif qui le contextualise et ça parle justement du théorème de Gödel et de la crise des fondements, qui ont entre autres choses influencé son départ du domaine des mathématiques pures vers les mathématiques appliquées.
    Je crois que je vais me lire tout ça, ça m'a l'air bien écrit et suffisamment didactique pour être accessible à un novice comme moi. La partie "Informatique théorique" a l'air très passionante aussi. Bookmarké, merci !

    Citation Envoyé par doul11 Voir le message
    Tu est conscient de ton niveau et c'est bien, tu trouvera sur ce forum plein de gens compétant prêt a d'aider. A part pour l'algorithme, les forums physiques et mathématiques me semblent mieux pour poser tes questions sur les calculs que tu voudrai faire.
    Je me suis pas inscrit ici pour rien


    Citation Envoyé par doul11 Voir le message
    Pour en revenir au coeur du problème il faudrais en savoir un peut plus, quels mouvements ? quelle forme ?

    Par exemple la formule que je donne est pour une décélération progressive jusqu'à l'arrêt au point voulus, la formule de Jackyzgood fonctionne aussi mais ce n'est pas progressif, la décélération est rapide au début, puis lente a la fin.
    Je vais essayer d'expliquer ça clairement

    Le but est d'implémenter ces différents comportements : http://www.red3d.com/cwr/steer/
    Je tiens à faire ça moi-même, un peu par défi.

    J'ai découplé mes algo qui permettent de définir le mouvement du reste.
    Grosso modo j'ai une classe abstraite 'SteeringBehavior', qui contient la méthode virtuelle "get()".
    Cette classe est étendue par d'autres classes comportant le nom des différents comportements désirés ("Seek", "Flee", "Pursue", "Evade", "Arrive", "Wander", etc...).
    get() retourne un objet Acceleration qui contient les variables 'linear et 'angular'.

    Les classes de type SteeringBehavior prennent en paramètre dans leur constructeur la structure de donnée MotionInfo qui contient les informations suivantes : vélocité linéaire, vélocité angulaire, position, oriention.

    Je définis à chacun de mes "personnages" un comportement (SteeringBehavior) et des info de positionnement et vélocité (MotionInfo) : characterBehavior.get() est appelé chaque frame et characterMotionInfo mis à jour selon (on ajoute simplement l'accéleration à la vélocité).

    On arrive à ma question. Le comportement de type “Arrive” induit que le personnage doit ralentir lorsqu'il arrive vers sa cible.
    J'ai donc défini une variable ‘slowDistance’ qui est la distance à partir de laquelle j'estime qu'il doit commencer à ralentir. Lorsque cette valeur est atteinte, il me faut échelonner sa vélocité de manière à ce qu'elle atteigne zéro à destination. Voilà !

  8. #7
    invite51addc0c

    Re : Décélération progressive vers un point

    J'ai oublié de dire un truc essentiel en fait.

    La classe SteeringBehavior prend en paramètre dans son constructeur non pas un, mais deux objets MotionInfo.

    Deux : celui du personnage, et celui de la cible à atteindre (ou à fuir, c'est selon).

  9. #8
    Ouk A Passi

    Re : Décélération progressive vers un point

    Bonjour, et bienvenue sur FS,

    ... calculer de manière précise une décélération vers un endroit préétabli, de manière à être sûr que l'objet mouvant arrivera sur ce point avec une vélocité de zéro
    Bin, des tas de lycéens auraient sans doute répondu, mas dans le forum "Physique".

    Paramètres
    V = vitesse
    a = accélération (ou accélération négative pour un talentissement)
    x = distance d'accélération (ou de freinage)

    Formule de base du paresseux
    V² = 2 . a . x

    Connaissant 2 des paramètres, il est très facile de trouver le troisième.
    Exemple:
    on connaît x et V; calculer a


    Pour les courageux,
    et pour une accélération (ou un ralentissement) variant entre les vitesses (V1) et (V2), la formule de base devient:
    (V2)² - (V1)² = 2 . a . x

Discussions similaires

  1. Normes, suites convergeant vers un meme point
    Par Vishnu dans le forum Mathématiques du supérieur
    Réponses: 6
    Dernier message: 19/09/2010, 13h04
  2. d'un point 2D vers un point 3D
    Par invite9778b14c dans le forum Mathématiques du supérieur
    Réponses: 7
    Dernier message: 18/08/2010, 19h18
  3. focalisation optique vers un point non central
    Par mecatronicien dans le forum Technologies
    Réponses: 49
    Dernier message: 30/06/2009, 11h12
  4. Réponses: 3
    Dernier message: 21/04/2009, 20h54