modelagem baseada em agentes no terrame: estado atual pedro ribeiro de andrade feb/09

22
Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

Upload: michael-egan

Post on 26-Mar-2015

226 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

Modelagem Baseada em Agentes no TerraME: estado atual

Pedro Ribeiro de Andradefeb/09

Page 2: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

How to model these phenomena?

Page 3: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

Agent-based modelling (ABM)

flexibilitynatural approachemergence

Bottom-up approach for building complex systems, through the dynamical interaction of agents.

Page 4: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

How can geospatial data feed agent-based models?

Scientific question

?Jfddfjh gfsdfgdfssf fsdf fsdfsd sdfsdfJfddfjh gfsdfgdfssf fsdf fsdfsd sdfsdf

Jfddfjh gfsdfgdfssf fsdf fsdfsd sdfsdf

Page 5: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

Relations

Entities

How can geospatial data feed agent-based models?

Scientific question

Jfddfjh gfsdfgdfssf fsdf fsdfsd sdfsdfJfddfjh gfsdfgdfssf fsdf fsdfsd sdfsdf

Jfddfjh gfsdfgdfssf fsdf fsdfsd sdfsdf

Page 6: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

Citizens (points)Farmers

(polygons)

First Entity: Agent

Source: (Crooks, 2006); (Lim et al. 2002)

Page 7: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

Agents are computational systems placed in some environment.

(Jennings et al., 98)

Second Entity: Space

Discrete → cells

Dynamic

Page 8: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

Ag

en

t

C

ell

Cell Agent

Sources: (Benenson and Torrens, 2005; Samuelson and Macau, 2006)

From

To

Relations

Page 9: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

Cell→cell

Spatial neighbourhood between cells

Page 10: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

Cell→agent

“Which agents belong to this cell?”

Page 11: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

Agent→cell

Source: Adapted from (Lim et al. 2002)

“Which cells this agent controls, owns, targets?”

Page 12: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

Agent→agent

Agents can communicate, exchange goods, etc.

Agents are situated in space.

Page 13: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

GPM as a graphTo

Ag

en

t

Cell

a

b

a

b

c

c

Cell Agent

From

Page 14: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

CellAgent

ForEachAgent ForEachCell

ForEachCellForEachNeighbor ForEachNeighbor

ForEachAgent

CellularSpaceSociety

Group Trajectory

DBMS

Page 15: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

CellAgent

ForEachAgent ForEachCell

ForEachCellForEachNeighbor

ForEachAgent

CellularSpaceSociety

Group Trajectory

DBMS

Page 16: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

Society

上海宋ABC

ACA

AACCCC

BBC

CBB

CAC

BBA

CCB

CBA

AAA

BAB

Page 17: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

createAgent = function(capital_) return { capital = capital_, -- ... }end

data = {}data[1] = 100; data[2] = 50; data[3] = 25mag = Society(createAgent, data)

mag = Society(createAgent, 50)

Society

capital = 100 capital = 50 capital = 25

Page 18: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

Group

ABC

ACA

AACCCC

BBC

CBB

CAC

BBA

CCB

CBA

AAA

BAB

Page 19: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

g = Group(mag, function(agent) return agent. capital > 40 end, function(a1, a2) return a1.capital > a2.capital end)

Group

capital = 100 capital = 50 capital = 25

Page 20: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

ForEachAgent(mag, function(agent) agent.capital = agent.capital + 100end)

Transversing the Society

capital = 200 capital = 150 capital = 125

capital = 100 capital = 50 capital = 25

Page 21: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

InitAgents(cs)-- ...agents = GetAgents(cell)if table.getn(agents) == 0 then -- empty RemoveAgent(oldcell, agent) AddAgent(cell, agent)end

Agents within cells

Page 22: Modelagem Baseada em Agentes no TerraME: estado atual Pedro Ribeiro de Andrade feb/09

Modelagem Baseada em Agentes no TerraME: estado atual

Pedro Ribeiro de Andradefeb/09