Skip to content
Snippets Groups Projects
Commit 0e3dd7f1 authored by shinedday's avatar shinedday
Browse files

fix ant

parent 7bec58fb
No related branches found
No related tags found
No related merge requests found
"""
Init :
* Les fourmis partent toutes du centre de l'écran
Cycle :
Deplacement :
* la fourmie se deplace de maniere aléatoire
Perception :
* la fourmis connais les 5 fourmis les plus proches dans un rayon X
Couleur :
* Si la fourmie n'a pas de couleur elle prend la couleur majoritaire des 5 voisins (hors noir)
* Si il n'y a pas de couleur majoritaire elle a 1% de chance de prendre une couleur aléatoire
* si TOUT les voisins on la meme couleur qu'elle, elle meurt (hors noir)
"""
from random import randint
from math import sqrt
......
......@@ -21,11 +21,14 @@ class AntHillExample(AmasIHM):
self.set_execution_policy(ExecutionPolicy.TWO_PHASES)
self.set_do_log(True)
self.add_ignore_attribute("_CommunicatingAgent__mailbox")
self.add_ignore_attribute("_Agent__criticality")
self.add_ignore_attribute("_Agent__phase")
def on_initial_agents_creation(self) -> None:
for i in range(self.nbr_ants):
# self.add_agent(AntExampleV1(self, self.get_environment().xmax/2, self.get_environment().ymax/2))
# self.add_agent(AntExampleV2(self, self.get_environment().xmax/2, self.get_environment().ymax/2))
self.add_agent(CommunicatingAnt(self, self.get_environment().xmax / 2, self.get_environment().ymax / 2))
self.add_agent(AntExampleV2(self, self.get_environment().xmax/2, self.get_environment().ymax/2))
# self.add_agent(CommunicatingAnt(self, self.get_environment().xmax / 2, self.get_environment().ymax / 2))
# self.add_agent(AntTest(self, self.get_environment().xmax / 2, self.get_environment().ymax / 2))
......@@ -17,7 +17,7 @@ nbr_ants = 50
ToOverrideWarning.enable_warning(False)
fenetre = Fenetre("Prototype Ants")
env = WorldExample(0, fenetre.get_canvas_width(), 0, fenetre.get_canvas_height(), 50, 7)
env = WorldExample(0, fenetre.get_canvas_width(), 0, fenetre.get_canvas_height(), 5, 7)
amas = AntHillExample(env, nbr_ants)
controleur = ControleurAntsExample(fenetre, amas, nbr_ants)
......
V2 :
Init :
* Les fourmis partent toutes du centre de l'écran
Cycle :
Deplacement :
* la fourmie se deplace de maniere aléatoire
Perception :
* la fourmis connais les 5 fourmis les plus proches dans un rayon X
Couleur :
* Si la fourmie n'a pas de couleur elle prend la couleur majoritaire des 5 voisins (hors noir)
* Si il n'y a pas de couleur majoritaire elle a 1% de chance de prendre une couleur aléatoire
* si TOUT les voisins on la meme couleur qu'elle, elle meurt (hors noir)
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment