Autre erreur dans demo

Autre erreur dans demo

par Théo Stanislaw Gieruc,
Number of replies: 4
En expérimentant avec des fichiers tests personnels, je me suis rendu compte d'un comportement particulier de demo.

Voici l'état initial :
Situation de départ

Directement, les joueurs vont se bloquer dans les coins et y restent indéfiniment.

situation de blocage

Voici le contenu de mon fichier test :
4

2

 -200 -300 2 2
 100 0 2 2
2

2 1
3 2
0

In reply to Théo Stanislaw Gieruc

Re: Autre erreur dans demo / corrigée /récupérer le nouveau programme de démo

par Ronan Boulic,

Le bug précédent et celui que vous signalez sont maintenent corrigés.

L'exécutable de démo vient d'être mis à jour sur moodle:

https://moodlearchive.epfl.ch/2018-2019/mod/resource/view.php?id=1016896

Nous utiliserons les fichiers de test ayant permis la détection de ces bugs pour l'évaluation du rendu final.


In reply to Ronan Boulic

Re: Autre erreur dans demo / corrigée /récupérer le nouveau programme de démo

par Josquin Pascal Tille,

Bonjour,

Après avoir tester la démo (nouvelle version) il me semble qu'elle ne respecte pas la consigne ("La matrice est initialisée avec les distances connues, c’est-à-dire la distance aux spots voisins : [...] racine de 2 selon la diagonale sauf si cette diagonale est tangente à un obstacle, auquel cas on met 3").

Avec le fichier ci-dessous, les joueurs ne prennent pas le chemin le plus court ( comme si la diagonale tangente à l'obstacle avait un poid de 2)

# Projet Dodgeball 2019
4
# Players
2
    -353 355 4 0
    372 -376 4 0
# Obstacles
4
    1 2
    1 1
    2 2
    3 0
# Balls
0

Les joueurs prennent un chemin de longeur 6 alors qu'il en existe un de longeur 5.46




Attachment image.png
In reply to Josquin Pascal Tille

Re: Autre erreur dans demo / corrigée /récupérer le nouveau programme de démo

par Ronan Boulic,

votre remarque est juste: le poids sur la diagonale est finalement de 2 car, même si on initialise avec 3, l'algorithme de Floyd remet cette valeur de 2 .

La donnée V 1.04 a été ajustée comme suit en section 3.2.2 (nouveau texte en bleu) :

- on initialise avec la valeur de 2 pour la diagonale tangente à un obstacle.

- on interdit le choix d'un spot selon la diagonale quand elle est tangente à un obstacle


In reply to Théo Stanislaw Gieruc

Re: Autre erreur dans demo

par Vincent Jonathan Philippoz,

J'ai aussi détecté l'erreur suivante dans la démo (qui est aussi dans le dernière version fournie):

Si les joueurs sont sur le bord de la carte, le programme effectue la lecture correctement puisque c'est une situation autorisée, mais il bloque indéfiniment dès que la simulation est lancée.

Voici deux images pour illustrer la situation:

Les fichiers de tests sont les suivants:

#Nombre de cellules
3
  #Nombre de joueurs
2 
  #Joueurs
0 -400 4 0
0 400 4 0
 #Nombre d'obstacles
1
 #Obstacles
1 1
 #Nombre de balles
0
 #Balles
#Fin de fichier
------------------------------------
#Nombre de cellules
3
  #Nombre de joueurs
2 
  #Joueurs
-400 -400 4 0
400 400 4 0
 #Nombre d'obstacles
1
 #Obstacles
1 1
 #Nombre de balles
0
 #Balles
#Fin de fichier

Attachment OnBorder1.png
Attachment OnBorder2.png