Syht / StochPong

1 stars 0 forks source link

Pilot Data #18

Open Syht opened 7 years ago

Syht commented 7 years ago

Aujourd'hui j'ai enregistré les pilotes sur deux personnes, en utilisant deux versions du jeu :

Suite au pilote je leur ai posé quelques questions dont une pour savoir s'ils ont remarqué quelque chose avec les briques. Les deux sujets ont remarqué les rebonds "particuliers" mais seul Rémi semble avoir senti le lien avec les couleurs de briques. Juliette a seulement pu identifier les briques normales et les anti-briques, mais pour ce qui est des couleurs entre-deux, elle les a toutes ressenties de la même manière.

PS : Les data sont enregistrées dans StochPong/datadir/pilot Elles sont au nombre de 36 fichiers .txt contenant les 3 data que l'on enregistre (Gaze, Ball, Paddle) sur les 6 niveaux fait par Juliette et les 6 niveaux fait par Rémi). On retrouve donc, par ordre chronologique des timeString composant les noms des fichiers, les 6 niveaux du jeu pour chaque sujet.

Syht commented 7 years ago

@laurentperrinet @bwicker Un soucis déjà ressentis lors de mes test s'est manifesté de manière beaucoup plus "violente" lors de l'enregistrement des pilotes : une chute massive de FPS. La balle perd jusqu'à 90% de sa vitesse (et devient donc particulièrement lente). Le ralentissement se fait déjà ressentir légèrement de manière aléatoire lorsque l'on joue sans Eye Tracker, mais lors du pilote les FPS ont subit des chutes jusqu'à 3 FPS et qui se sont maintenu sur un niveau presque entier. Je ne sais pas d'où vient le problème exactement, mais je me demande si ça ne vient pas de l'écriture des fichiers txt et je me demande si ça ne serait pas plus "rapide" de stocker les data (Gaze, Ball, Paddle) dans une array, puis de regrouper dans une dataframe pour ensuite écrire la dataframe dans un fichier. Je vais essayer de faire ça et vous tiens au courant !

bwicker commented 7 years ago

Aie oui il faut régler ça... C'est bon de faire des pilotes !

Le 29 juin 2017 12:30, "Thys Giaccone" notifications@github.com a écrit :

@laurentperrinet https://github.com/laurentperrinet @bwicker https://github.com/bwicker Un soucis déjà ressentis lors de mes test s'est manifesté de manière beaucoup plus "violente" lors de l'enregistrement des pilotes : une chute massive de FPS. La balle perd jusqu'à 90% de sa vitesse (et devient donc particulièrement lente). Le ralentissement se fait déjà ressentir légèrement de manière aléatoire lorsque l'on joue sans Eye Tracker, mais lors du pilote les FPS ont subit des chutes jusqu'à 3 FPS et qui se sont maintenu sur un niveau presque entier. Je ne sais pas d'où vient le problème exactement, mais je me demande si ça ne vient pas de l'écriture des fichiers txt et je me demande si ça ne serait pas plus "rapide" de stocker les data (Gaze, Ball, Paddle) dans une array, puis de regrouper dans une dataframe pour ensuite écrire la dataframe dans un fichier. Je vais essayer de faire ça et vous tiens au courant !

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Syht/StochPong/issues/18#issuecomment-311927354, or mute the thread https://github.com/notifications/unsubscribe-auth/AbPMZGEL7l9Gun5n27vWG4-a2PQ8--S5ks5sI3y5gaJpZM4OICsJ .

Syht commented 7 years ago

J'ai incorporé le dataframer dans le code du jeu et ai fait en sorte que le jeu stock les données dans des listes pour ensuite les dataframer et les écrire dans un fichier. Maintenant, l'enregistrement des données ne se fait que lorsque Eye Tribe est branché. Les chutes de FPS sont toujours présentes (surtout lorsque Eye Tribe fonctionne) mais ça semble aller mieux. A titre informatif : J'ai fixé les FPS à 50 et ai écris dans un fichier l'évolution des FPS véritables et le pattern est étrange -> ça commence proche de 50 pour rapidement se mettre à 30 FPS et y rester la plupart du temps avec des brèves chutes (très peu fréquentes) à 3 FPS.

bwicker commented 7 years ago

est ce que ca pourrait venir du fait que tu as beaucoup d'applications ouvertes ou est ce que tu as tout fermé ?

Le 29 juin 2017 à 16:38, Thys Giaccone notifications@github.com a écrit :

J'ai incorporé le dataframer dans le code du jeu et ai fait en sorte que le jeu stock les données dans des listes pour ensuite les dataframer et les écrire dans un fichier. Maintenant, l'enregistrement des données ne se fait que lorsque Eye Tribe est branché. Les chutes de FPS sont toujours présentes (surtout lorsque Eye Tribe fonctionne) mais ça semble aller mieux. A titre informatif : J'ai fixé les FPS à 50 et ai écris dans un fichier l'évolution des FPS véritables et le pattern est étrange -> ça commence proche de 50 pour rapidement se mettre à 30 FPS et y rester la plupart du temps avec des brèves chutes (très peu fréquentes) à 3 FPS.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Syht/StochPong/issues/18#issuecomment-311987002, or mute the thread https://github.com/notifications/unsubscribe-auth/AbPMZOMSTFEcTH5uJ7bTtLw47o5zvvnPks5sI7bXgaJpZM4OICsJ .

-- Bruno Wicker, PhD.

Laboratoire de Neurosciences Cognitives. CNRS & Aix-Marseille Université 3, place Victor Hugo 13331 Marseille cedex 3

Tel : +33(0)413550900 Fax : +33(0)413550958

Syht commented 7 years ago

Négatif :/ Aucune applis ne tournaient lors des pilots. Et je n'avais qu'une page internet sans onglet aujourd'hui

Le 29 juin 2017 à 19:03, bwicker notifications@github.com<mailto:notifications@github.com> a écrit :

est ce que ca pourrait venir du fait que tu as beaucoup d'applications ouvertes ou est ce que tu as tout fermé ?

Le 29 juin 2017 à 16:38, Thys Giaccone notifications@github.com<mailto:notifications@github.com> a écrit :

J'ai incorporé le dataframer dans le code du jeu et ai fait en sorte que le jeu stock les données dans des listes pour ensuite les dataframer et les écrire dans un fichier. Maintenant, l'enregistrement des données ne se fait que lorsque Eye Tribe est branché. Les chutes de FPS sont toujours présentes (surtout lorsque Eye Tribe fonctionne) mais ça semble aller mieux. A titre informatif : J'ai fixé les FPS à 50 et ai écris dans un fichier l'évolution des FPS véritables et le pattern est étrange -> ça commence proche de 50 pour rapidement se mettre à 30 FPS et y rester la plupart du temps avec des brèves chutes (très peu fréquentes) à 3 FPS.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Syht/StochPong/issues/18#issuecomment-311987002, or mute the thread https://github.com/notifications/unsubscribe-auth/AbPMZOMSTFEcTH5uJ7bTtLw47o5zvvnPks5sI7bXgaJpZM4OICsJ .

-- Bruno Wicker, PhD.

Laboratoire de Neurosciences Cognitives. CNRS & Aix-Marseille Université 3, place Victor Hugo 13331 Marseille cedex 3

Tel : +33(0)413550900 Fax : +33(0)413550958

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/Syht/StochPong/issues/18#issuecomment-312029723, or mute the threadhttps://github.com/notifications/unsubscribe-auth/Aah0zCOjMv7IUUUv5GGk0LDJfdsYTB4-ks5sI9jFgaJpZM4OICsJ.

Syht commented 7 years ago

Suite à quelques tests je pense pouvoir confirmer que le problème de ralentissement de la balle est "résolu". En premier lieu, le stockage dans des listes au lieu d'écrire directement des fichiers textes a définitivement aider à réduire la chute de FPS. Malgré ça, à 50 FPS on a toujours une chute qui stagne dans les 30 FPS, comme j'ai expliqué plus haut. Mais si l'on fixe les FPS à 30, les chutes de FPS "disparaissent" (Il y a toujours des petites chutes mais qui ne vont pas plus bas que 24 FPS - soit quasi aucune différence avec 30 FPS).

Edit: J'ai tenté plusieurs valeurs et les ai testé sur des niveaux complets et j'ai déterminer ce que je pense être le meilleur rapport vitesse de balle/FPS. -> dans config.ini : speed = 16 -> dans notre main programme, clock.tick(FPS) : FPS = 30

Ces valeurs permettent d'avoir une balle rapide mais qui ne passent pas à travers le paddle ou les bricks tout en conservant des FPS constants.

bwicker commented 7 years ago

Super Thys Est-il tout de même possible d'exploiter les données pilote qui ont été acquises ?

Le 30 juin 2017 12:18, "Thys Giaccone" notifications@github.com a écrit :

Suite à quelques tests je pense pouvoir confirmer que le problème de ralentissement de la balle est "résolu". En premier lieu, le stockage dans des listes au lieu d'écrire directement des fichiers textes a définitivement aider à réduire la chute de FPS. Malgré ça, à 50 FPS on a toujours une chute qui stagne dans les 30 FPS, comme j'ai expliqué plus haut. Mais si l'on fixe les FPS à 30, les chutes de FPS "disparaissent" (Il y a toujours des petites chutes mais qui ne vont pas plus bas que 24 FPS - soit quasi aucune différence avec 30 FPS).

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub https://github.com/Syht/StochPong/issues/18#issuecomment-312231453, or mute the thread https://github.com/notifications/unsubscribe-auth/AbPMZO8PqOE7EpzGKySLQHjSEp5gIFG_ks5sJMtjgaJpZM4OICsJ .

Syht commented 7 years ago

Les données sont totalement exploitables, le seul soucis étant le ralentissement de la balle.

J'ai par contre procédé à pas mal de correction et améliorations, notamment pour le fait que les données s'enregistrent directement en dataframe (ce qui réduit grandement le nombre de fichiers et évite de devoir utiliser dataframer.py en dehors du main) et me demande si l'on ne devrait pas refaire des données pilotes afin de mettre en évidence les éventuels écueils créés par mes modifications. Dites-moi ce que vous en pensez.

PS : Je n'ai pas eu le temps de commencer l'analyse de données car j'ai rencontré pas mal de soucis (vive l'informatique). Mais ils sont tous réglés et le jeu n'a jamais aussi bien marché !

laurentperrinet commented 7 years ago

OK - je peux pas tester car j'ai pas d'eyetribe mais ça semble correct niveau code... ce serait bien d'avoir une routine qui charge les données et montre des stats basiques pour chaque pilote (durée, plot de la position horizontale de la balle / paddle / oeil) pour avoir un début de validation que tout est là.

Syht commented 7 years ago

J'ai écris une routine sous le nom de analysis.py qui permet de faire ça ! Ça m'a pris du temps mais j'y suis arrivé et ça m'a appris à utiliser les dictionnaires - que je n'avais pas utilisés jusque là.

Ma routine affiche une liste contenant les durées des 36 niveaux fait par les joueurs, puis affiche 36 plots rendant compte des déplacements horizontaux de la balle, du paddle et de l'oeil.

laurentperrinet commented 7 years ago

Super Si tu l'as mis sur un notebook je pourrais même voir ce que ça donne direct sur github...

Le 7 juil. 2017 à 16:07, Thys Giaccone notifications@github.com a écrit :

J'ai écris une routine sous le nom de analysis.py qui permet de faire ça ! Ça m'a pris du temps mais j'y suis arrivé et ça m'a appris à utiliser les dictionnaires - que je n'avais pas utilisés jusque là.

Ma routine affiche une liste contenant les durées des 36 niveaux fait par les joueurs, puis affiche 36 plots rendant compte des déplacements horizontaux de la balle, du paddle et de l'oeil.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

Syht commented 7 years ago

C'est fait ! Mais il n'arrive pas à afficher autant de plots donc il faudrait, je pense, modifier la liste subjects (ne mettre qu'un des noms, par exemple) afin que la routine affiche moins de plots.