3

I am beginner in Jason(Agentspeak), working on social simulation project using Multi-agent simulation in Jason. I just started Jason, so a beginner in this declarative type language. I want to simulate the people behavior that changes over time.

// the code statement might be
Like an agent have characteristics
Age=30 years
Marital status = unmarried
education= college
employment= unemployed
etc etc

now I want to simulate multiple agents virtually and simulate for 20 years. so that based on already defined criteria I want to know which transitions (unmarried toward married OR education from college to university OR employment from unemployed to employment etc) in agent life has taken place.

I need guidance about Simulation in Jason, how to handle ?

Thanking you all

Cleber Jorge Amaral
  • 1,316
  • 13
  • 26
Amigo
  • 31
  • 2

1 Answers1

2

In Jason you define what agent believes in and what goals agent has. There is also a concept of plan to achieve those goals. Beliefs represent the information available to an agent. For example agent's age is 30 according to agents own information.

age(30)[Source(self)].
Status(single)[Source(self)].

or for example agent believes that it likes some other agent:

likes(anotherAgent).

Goals represent states of affairs the agent wants to achieve, for example your agent might want to write a book or find a job :

!write(book).
!find(job).

in addition to these goals , we can define test goals which checks if a condition is met:

?married(A). 

An AgentSpeak plan has the following general structure:

triggering_event : context <- body.

• where:

  • the triggering event denotes the events that the plan is meant to handle;
  • the context represent the circumstances in which the plan can be used;
  • the body is the course of action to be used to handle the event if the context is believed true at the time a plan is being chosen to handle the event.

You should define plans which can help change the status of agent from single to married or from unemployed to find a job. for example agent might need to check first if it knows someone, or if already knows, agent should check if it likes someone, or any other rules that you need to define as preference of agents for choosing a partner.

There is a book which can help you to get started: There is also an active mailing list available on the Jason website.

Marzy
  • 1,884
  • 16
  • 24