Programmation orientée agents

(FMIN108-Université de Montpellier - Département Informatique)

Resp: Jacques Ferber,

 

TP 8 - Warbot (Warlogo) #3

Dernière mise à jour : Novembre 2020

 

 

Dans ce TP nous allons intégrer des notions de tactiques et de stratégies.

Utilisez la version 2.9 de Warlogo, téléchargeable >>ici <<.

 

1. Engagement

Les techniques vues dans le précédent TP conduisent des agents à suivre les demandes d'où qu'elles viennent : il n'y a pas d'engagement. De ce fait les agents vont et viennent et épuisent leur énergie et perdent docn en efficacité.

1. Implémentez un modèle d'engagement des lanceurs de missiles à l'aide d'une FSM

Un attaquant est soit libre soit engagé dans une attaque. Il ne s'arrête de faire cette attaque que si la cible est détruite ou plus accessible... Il redevient alors libre. On utilsera une FSM pour modéliser le mode de fonctionnement des attaquants. Ecrivez la FSM et ensuite implémentez la.

 

2. Attaque coordonnée

1. Flocking

En reprenant l'algorithme de flocking vu en cours, développer un mode d'action des Lanceurs de missiles qui avancent groupés (en troupeau) pour attaquer la base, quand cela leur ait demandé. Cet algorithme de flocking doit prendre en compte les percepts des robots (les primitives in-radius et in-cone sont interdites).

2. Aveugle et paralytique

Attaque d'un lanceur de missile en utilisant un explorateur. Les lanceurs de missiles attaquent en formation en se déployant autour de la cible. Les lanceurs de missile ne voient pas la cible qui leur est désignée par l'explorateur.

Ils sont délivrés de leur engagement par l'explorateur qui est le seul qui peut voir la cible.

3. Utilisez une stratégie

Est ce que vous attaquez tout de suite? Est ce que vous préférez rester en défense d'abord avant d'attaquer? Est ce que vous choisissez de faire la chasse à tous les lanceurs de missile ennemis avant d'attaquer la base adverse?

Ce sont toutes ces décisions que vous devez prendre pour créer une IA collective qui permette de remporter la compétition contre d'autres équipes...

A vous de jouer maintenant !!