BOISSET Florian, ROUBILLE Mathis et THOUMIN Maxime
- Jeu vidéo.
- Intelligence Artificielle.
Utilisation du projeté orthogonal.
Déplacements aléatoires.
Quand la distance joueur-trou noir diminue, l'attraction augmente.
Mise en place du système de règles :
o Entrées :
[ Direction de la planète la plus proche, -> NO, NE, SE, SO, -1
Direction du mur le plus proche, -> NO, NE, SE, SO, 0, -1
Est-ce qu’il y a un mur entre le joueur et la planète ?, -> Oui, Non, -1
Direction du trou noir le plus proche, -> NO, NE, SE, SO, -1
Distance du trou noir le plus proche ] -> Proche, Moyen, Loin, -1
o Sorties :
[ Direction verticale, -> N, 0, S, -1
Direction horizontale ]-> O, 0, E, -1
o Priorité :
De 1 à 6
Algorithme de recherche locale :
o Problème :
Exécution plutôt lente qui ralentit l'entraînement de l'IA.
o Solution :
Optimisation de la fonction de gestion des collisions.
Réduction du nombre d'appels de la fonction de gestion des collisions.
Pour exécuter le programme plus rapidement et entraîner l'IA plus efficacement
o Problème :
Beaucoup d'appels de la fonction rand().
Or, rand() fait appel à une variable globale et la modifie.
Donc les threads devaient attendre que les autres aient terminé d'utiliser la variable globale.
o Solution :
Création d'un tableau d'entiers choisis aléatoirement.
Les threads ont juste à lire dans le tableau, pas d'incrémentation de la variable.