comportamientos

Páginas: 16 (3766 palabras) Publicado: 20 de noviembre de 2014
2. Comportamientos
‍2.1 Qué es un comportamiento
‍2.2 Añadir y eliminar comportamientos
‍2.3 Métodos de un comportamiento
‍2.4 Ejecución de los comportamientos
‍2.5 Flujo de control de un agente
‍2.6 Tipos de comportamiento
‍2.6.1 Comportamiento genérico
‍2.6.2 Comportamientos simples
‍2.6.3 Comportamientos compuestos
‍2.6.4 Comportamientos temporales
‍2.7 Ejercicios
‍/Comportamientos - Indice/Comportamientos - Indice
‍2.1 Qué es un comportamiento

Un comportamiento o behaviour hace referencia a una funcionalidad que incorpora el agente.

Los comportamientos especifican tareas o servicios que realiza un agente para lograr sus objetivos. Cada comportamiento puede realizar una tarea simple como "Envia este mensaje" o "compra X " aunque también se pueden crearcomportamientos compuestos.

Cada tarea del agente será una instancia de una clase que deber heredar de la clase Behaviour.


class MiComportamiento extends Behaviour{

}


Por este motivo, e código [[#|JAVA]] que implementa esa funcionalidad ha de importar el paquete:


jade.core.behaviours.*

Aunque bastaría con importar simplemente la clase Behaviour que seencuentra en:


jade.core.behaviours.Behaviour

Nota: En el siguiente enlace se encuentra una descripción de todos los métodos disponibles en la Clase Behaviour

Los agentes están programados en base a sus comportamientos. La programación basada en comportamientos debe realizar los siguientes pasos:

1 Determinar qué debe ser capaz de hacer el agente.
2 Asociarcada funcionalidad con un comportamiento.
3 Escoger el tipo de comportamientos
4 Dejar a JADE la tarea del scheduling (un solo comportamiento se está ejecutando en cada instante).

/Comportamientos - Indice/Comportamientos - Indice
‍2.2 Añadir y eliminar comportamientos

La clase Agent provee dos métodos para añadir y borrar comportamientos a un agente: addBehaviour(Behaviour) yremoveBehaviour(Behaviour). Estos métodos permiten gestionar la entrada y salida de los objetos Behaviour en la cola del planificador. El planificador va ejecutando según una política round-robin los objetos behaviour que se encuentran en una cola FIFO.

Los comportamientos pueden ser añadidos o eliminados en cualquier momento de la vida del agente, desde el método setup() o desde cualquier otrocomportamiento, incluso desde otros agentes.

Crear un comportamiento no es más que crear una clase privada dentro de la clase del agente y asociarlo a [[#|ese]] agente mediante el método addBehaviour(Behaviour). Añadir un comportamiento debe ser visto como la ejecución de un nuevo thread dentro del agente.

En el siguiente ejemplo se puede ver como se añade un comportamiento desde el método setup() delagente.


import jade.core.Agent;
import jade.core.behaviours.*;

public class MiAgente extends Agent{

protected void setup(){
//Aqui es donde se añade el comportamiento.
addBehaviour(new MiComportamiento1());
}
//Este es el comportamiento.
private class MiComportamiento1 extends Behaviour{
public void action(){
System.out.println("Minombre es: "+getName() );
System.out.println("Soy el comportamiento del agente");

}
public boolean done(){
return true;
}
}
}

En el siguiente ejemplo se muestra como se puede añadir un comportamiento desde otro comportamiento.

Para ello usaremos una variable de la clase Behaviour llamada myAgent que funciona como una referencia alagente que esta ejecutando el comportamiento, es decir, al agente al que pertenece el comportamiento.


import jade.core.Agent;
import jade.core.behaviours.*;

public class MiAgente extends Agent{

protected void setup(){
//Aqui es donde se añade el comportamiento.
addBehaviour(new MiComportamiento1());
}
//Este es el comportamiento.
private class...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Comportamiento
  • comportamientos
  • COMPORTAMIENTO
  • comportamiento
  • Comportamiento
  • Comportamiento
  • El comportamiento del yo
  • Comportamiento

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS