Le Forum des Marins Virtuels
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le Deal du moment :
Manga Chainsaw Man : où acheter le Tome 17 ...
Voir le deal
19.99 €

Qu'est ce que le Routeur de SBS?

4 participants

Aller en bas

Qu'est ce que le Routeur de SBS? Empty Qu'est ce que le Routeur de SBS?

Message  sbsrouteur Dim 17 Oct 2010 - 22:05

Bonsoir,

Je vais essayer de vous faire une présentation synthétique claire de ce qu'est le routeur et ce que l'on peut faire avec.

Il s'agit d'un outil d'aide à la décision quand au choix de stratégie pour les courses de VLM (1). Le routeur prend la position en cours d'un bateau et en appliquant les règles de calcul de mouvement du bateau, calcule "la meilleure route" vers le point de destination. Les règles de calcul sont simples et calquent celles utilisées par le moteur de jeux de vlm:
- Utilisation de la meteo NOAA
- Utilisation de la polaire adéquate
- Utilisation des cartes GSHHS pour la gestion des collisions

(Ah oui j'ai oublié de préciser que le routeur tient compte des obstacles pour le calcul de la route).

Il y a actuellement dans le logiciel 2 modes de calculs:
- Le calcul par grille qui est très bon, mais très lent et généralement pas exploitable sur les grandes courses, car il utilise trop de mémoire, mais autrement il est capable de calculer LA route vers la victoire.
- Le calcul par isochrones, qui n'est pas mauvais, mais ne donne pas la meilleure route à tous le coups (mais j'ai bon espoir d'améliorer ça), il permet par contre de visualiser au fil du temps les points accessibles et donc de bâtir une stratégie

Pour ce qui est du calcul de "LA" meilleure route, le programme n'a aucune intelligence météo. Il se contente de prendre en compte les prévisions de la NOAA, telles qu'elles sont disponibles. En cas de grosse MAJ, on se retrouve le bec dans l'eau comme tout le monde.

Afin de ne pas devoir utiliser 3 ou 4 outils en même temps, j'ai commencé d'ajouter des fonctions de pilotage. Il est donc possible de programmer le pilototo depuis le routeur, ainsi que de piloter directement le bateau depuis l'interface du routeur. Mais il manque encore quelques fonctions de pilotage.

Concernant le pilototo, le routeur affiche la route prévisionnelle du bateau, ainsi en dehors des variations meteo de la mise à jour, il est possible de réaliser des programmations pilototo assez complexe de façon fiable.

Voila c'est un peu rapide et lapidaire, mais je peux élaborer les points qui vous intéressent s'il y en a. Autrement, il y a le wiki du routeur sur VLM :
Wiki routeur






(1) : Historiquement le routeur à commencé sur VR et permettait aussi de faire les photos satellites que je postais sur le forum. Comme je ne l'utilise que sur VLM, la gestion de la connexion est prévue pour jouer sur les courses de VLM, mais le principe est extensible à tous les jeux (et éventuellement à de la navigation réelle) sans trop d'efforts.

sbsrouteur
Aspirant
Aspirant

Messages : 28
Date d'inscription : 15/10/2010

Revenir en haut Aller en bas

Qu'est ce que le Routeur de SBS? Empty Re: Qu'est ce que le Routeur de SBS?

Message  kiki Dim 17 Oct 2010 - 22:24

Merci pour cette présentation !

sbsrouteur a écrit:Les règles de calcul sont simples et calquent celles utilisées par le moteur de jeux de vlm:
- Utilisation de la meteo NOAA
- Utilisation de la polaire adéquate
- Utilisation des cartes GSHHS pour la gestion des collisions
(Ah oui j'ai oublié de préciser que le routeur tient compte des obstacles pour le calcul de la route).
Ah ben oui, simple en effet !!! scratch Laughing Laughing
Mais pour le programmer, ça doit être moins simple ! A ce propos, c'est écrit en quel langage, et pourquoi tu n'as pas choisi la même base que qtVlm (qt) ?

sbsrouteur a écrit:
Il y a actuellement dans le logiciel 2 modes de calculs:
- Le calcul par grille qui est très bon, mais très lent et généralement pas exploitable sur les grandes courses, car il utilise trop de mémoire, mais autrement il est capable de calculer LA route vers la victoire.
- Le calcul par isochrones, qui n'est pas mauvais, mais ne donne pas la meilleure route à tous le coups (mais j'ai bon espoir d'améliorer ça), il permet par contre de visualiser au fil du temps les points accessibles et donc de bâtir une stratégie
Le calcul par isochrones, c'est celui qu'on voit le plus souvent (Maxsea ?), mais celui par grille connais pas .... tu pourrais nous expliquer la différence entre les 2 ?
kiki
kiki
Modérateur
Modérateur

Messages : 2925
Date d'inscription : 22/05/2009
Age : 70
Localisation : Loire

Revenir en haut Aller en bas

Qu'est ce que le Routeur de SBS? Empty Re: Qu'est ce que le Routeur de SBS?

Message  happinessistheroad Dim 17 Oct 2010 - 22:52

Super intéressant! Outre les questions de kiki, j'en ai une autre (pour l'instant)...

sbsrouteur a écrit:Mais il manque encore quelques fonctions de pilotage.

Lesquelles?

En fait j'en ai une autre...
Quand tu parles de "Le calcul par grille qui est très bon, mais très lent", c'est quoi l'ordre d'idée de cette lenteur?
Sur l'utilisation de la mémoire, je comprends bien que c'est un sacré problème, effectivement...

Avant même de tout comprendre sur ton routeur que je me promets d'essayer prochainement en test pour en vérifier l'efficacité, je te félicite de ce boulot incroyable.
happinessistheroad
happinessistheroad
Administrateur
Administrateur

Messages : 5806
Date d'inscription : 17/04/2009
Age : 55
Localisation : 92

Revenir en haut Aller en bas

Qu'est ce que le Routeur de SBS? Empty Re: Qu'est ce que le Routeur de SBS?

Message  sbsrouteur Dim 17 Oct 2010 - 23:00

kiki a écrit:Merci pour cette présentation !

Ah ben oui, simple en effet !!! scratch Laughing Laughing
Mais pour le programmer, ça doit être moins simple ! A ce propos, c'est écrit en quel langage, et pourquoi tu n'as pas choisi la même base que qtVlm (qt) ?

C'est tout écrit en VB.Net, sauf l'extraction des données meteo NOAA, qui est un prog fourni par la NOAA qui doit être écrit en C(je suppose) et tourne sous CYGWIN.
Je n'ai pas choisi la même base que QT parce que:
- Quand j'ai commencé sur VR, je ne savais pas que QTVLM existait
- Quand je suis arrivé sur VLM, j'ai commencé par modifier ce que j'avais pour l'adapter et je me suis interressé à l'existant et QT est en environnement cygwin, que je n'affectionne pas
- J'ai bien coder les choses moi même pour me rendre compte de comment ça fonctionne

kiki a écrit:
Le calcul par isochrones, c'est celui qu'on voit le plus souvent (Maxsea ?), mais celui par grille connais pas .... tu pourrais nous expliquer la différence entre les 2 ?

Le principe de routage par grille est simplissime. Tu imagines que la zone de navigation est découpée en petits carrés dont les intersections sont des points de ta grille. Tu prend ta position actuelle et tu calcules le temps d'arrivée au N points de la grille qui sont autour de toi. Pour chaque point, tu notes la date d'arrivée et comme tu as noté la date d'arrivée, tu mets le points dans la liste des points à recalculer. Ensuite, tu recommences la même opération pour tous les points que tu à mis dans la liste des points à recalculer. Une fois que tu as dis ça, tu as un programme qui va calculer les routes vers tous les points de l'océan, donc il y a quelques règles qui permettent de limiter les points pour lesquels on va effectivement faire le calcul. Une fois que tu as fini de calculer tous les points, tu as une route qui va du point de départ au point d'arrivée le plus rapidement possible. c'est LA meilleure route. Sauf qu'actuellement, y a souvent pas assez de mémoire et de temps pour calculer cette route, donc il faut calculer une route un peu moins optimale et réfléchir Wink

Le principe de l'isochrone est assez différent, il consiste à tracer les courbes de points qui peuvent être atteint dans un même temps. Tu prends ton point de départ et calcule par exemple l'ensemble des points que tu peux atteindre en 1H en cap fixe. 9 va donner une courbe autour de ta position qui à la forme de la polaire. Ensuite pour chacune des points de la courbe 1h, tu va recommencer pour trouver la courbe des points accessibles en 2h. Et ainsi de suite jusqu'à atteindre l'arrivée. Le "truc" de l'isochrone c'est d'évaluer quel point est meilleur que l'autre. Au début j'avais naïvement utilisé uniquement la distance restante donc ça donnait des trajectoire optimisant la VMG, et ce n'est pas toujours la bonne solution. Donc pour le moment je pondère la VMG par la vitesse moyenne, de façon à prendre en compte les routes plus longues, mais avec une meilleure vitesse. Le calcul par isochrone est celui utilisé par la plupart des routeurs commerciaux (à ma connaissance) car il permet de calculer vite. Mais je n'ai aucune idée sur leur mode d'évaluation des routes et je n'en ai aucun pour comparer à mon routeur.


sbsrouteur
Aspirant
Aspirant

Messages : 28
Date d'inscription : 15/10/2010

Revenir en haut Aller en bas

Qu'est ce que le Routeur de SBS? Empty Re: Qu'est ce que le Routeur de SBS?

Message  sbsrouteur Dim 17 Oct 2010 - 23:08

happinessistheroad a écrit:Super intéressant! Outre les questions de kiki, j'en ai une autre (pour l'instant)...

sbsrouteur a écrit:Mais il manque encore quelques fonctions de pilotage.

Lesquelles?

En fait j'en ai une autre...
Quand tu parles de "Le calcul par grille qui est très bon, mais très lent", c'est quoi l'ordre d'idée de cette lenteur?
Sur l'utilisation de la mémoire, je comprends bien que c'est un sacré problème, effectivement...

Avant même de tout comprendre sur ton routeur que je me promets d'essayer prochainement en test pour en vérifier l'efficacité, je te félicite de ce boulot incroyable.

Les fonctions qui manquent sont toutes bêtes, mais il n'est par exemple pas possible de saisir un cap (ça ce n'est pas une grosse contrainte, à la souris, on peut toujours y arriver) il n'est pas non plus possible de saisir directement une allure (et ça me manque souvent).

Très lent pour le calcul par grille c'est de 1h à plusieurs heures. Ce qui siginifie qu'une fois en course, si ta route diverge de la bonne, il te faut tellement de temps pour t'en apercevoir que tu ne peux pas simplement corriger, il faut relancer un calcul, mais le temps de l'avoir tu es tellement loin qu'il te faut relancer.... Et donc il faut lance le premier calcul suffisamment tôt pour connaitre la route dès le départ et ne pas trop s'en écarter.

Pour avoir discuté avec des joueurs qui ont maxsea ou adrena, ces routeurs te pondent une route pour une course comme la BHL en 2 minutes. Je suis encore loin de ça, mais en mettant un routage façon maxsea (5° et pas de 15'), je route dans un temps raisonnable (<5'). Ensuite, en affinant les paramètres j'arrive à router en ~30 minutes ce qui est acceptable pour moi.

sbsrouteur
Aspirant
Aspirant

Messages : 28
Date d'inscription : 15/10/2010

Revenir en haut Aller en bas

Qu'est ce que le Routeur de SBS? Empty Re: Qu'est ce que le Routeur de SBS?

Message  happinessistheroad Lun 25 Oct 2010 - 19:37

Tiens, sbs, j'ai une question qui me vient...
Sur une course comme la BHL où tu fais un aller, tu tapes une porte très large, puis tu reviens, suppose que tu es au large de l'Argentine, avant la porte... Tu veux calculer une route aller-retour, porte comprise... C'est possible? Autrement dit est-ce qu'un routeur (et même question pour le tien) est capable de calculer à quel endroit précis il faut aller taper la porte avant de faire demi-tour?
happinessistheroad
happinessistheroad
Administrateur
Administrateur

Messages : 5806
Date d'inscription : 17/04/2009
Age : 55
Localisation : 92

Revenir en haut Aller en bas

Qu'est ce que le Routeur de SBS? Empty Re: Qu'est ce que le Routeur de SBS?

Message  kiki Lun 25 Oct 2010 - 19:49

happinessistheroad a écrit:Autrement dit est-ce qu'un routeur (et même question pour le tien) est capable de calculer à quel endroit précis il faut aller taper la porte avant de faire demi-tour?
Maxsea sait le faire, on peut lui indiquer plusieurs wpts à passer dans le même calcul. Mais ça oblige à tester plusieurs routages.


kiki
kiki
Modérateur
Modérateur

Messages : 2925
Date d'inscription : 22/05/2009
Age : 70
Localisation : Loire

Revenir en haut Aller en bas

Qu'est ce que le Routeur de SBS? Empty Re: Qu'est ce que le Routeur de SBS?

Message  sbsrouteur Lun 25 Oct 2010 - 21:04

happinessistheroad a écrit:Tiens, sbs, j'ai une question qui me vient...
Sur une course comme la BHL où tu fais un aller, tu tapes une porte très large, puis tu reviens, suppose que tu es au large de l'Argentine, avant la porte... Tu veux calculer une route aller-retour, porte comprise... C'est possible? Autrement dit est-ce qu'un routeur (et même question pour le tien) est capable de calculer à quel endroit précis il faut aller taper la porte avant de faire demi-tour?

Oui c'est possible, il faut faire un routage "a étape", ou ta route continue automatiquement vers l'étape suivante, une fois première passée. Mais ça complique sensiblement la gestion du routage. Pour le mien c'est pas (encore) à l'ordre du jour. Une fois que tu as mis en place ce style de routage, ça va calculer tout seul le meilleur point de passage, puisque tu feras la route jusqu'à l'arrivée, donc la meilleure route à l'arrivée et celle qui a le meilleyr point de passage à la porte.

Mais, sauf à faire des courses très courtes, les variations de la météo rendent ces calculs caduques au delà de 3-4j de routage.

sbsrouteur
Aspirant
Aspirant

Messages : 28
Date d'inscription : 15/10/2010

Revenir en haut Aller en bas

Qu'est ce que le Routeur de SBS? Empty Re: Qu'est ce que le Routeur de SBS?

Message  Manuréva Lun 25 Oct 2010 - 23:23

Bonsoir

Je voudrais poser une question : Si on a la ligne des isochrone jusqu'à 7 jours mais sans itinéraire programmé, peux-t-on déterminer nous-même plus facilement la route à suivre ?
Manuréva
Manuréva
Amiral
Amiral

Messages : 11200
Date d'inscription : 15/07/2009
Age : 78
Localisation : Nièvre

Revenir en haut Aller en bas

Qu'est ce que le Routeur de SBS? Empty Re: Qu'est ce que le Routeur de SBS?

Message  sbsrouteur Mar 26 Oct 2010 - 7:30

Manuréva a écrit:Bonsoir

Je voudrais poser une question : Si on a la ligne des isochrone jusqu'à 7 jours mais sans itinéraire programmé, peux-t-on déterminer nous-même plus facilement la route à suivre ?

Oui en mettant la souris sur le ligne, juste au dessus d'un des points de la ligne, la route vers ce point apparait. Je te concède que dans ta version, arriver à se positionner à moi d'un mile du bon point est loin d'être chose facile sur les grandes courses. En plus dès que tu t'éloignes la route se "barre".

Donc j'ai fais une nouvelle version qui permet de plus facilement afficher la route à chaque point, et je suis en train de travailller sur un enregitrement de routes, qui permettra de choisir sa route et de l'optimiser, mais ces choses là prennent un peu de temps.

sbsrouteur
Aspirant
Aspirant

Messages : 28
Date d'inscription : 15/10/2010

Revenir en haut Aller en bas

Qu'est ce que le Routeur de SBS? Empty Re: Qu'est ce que le Routeur de SBS?

Message  Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum