agent-based model simulation with twister bingjing zhang, [email protected]@indiana.edu...

13
Agent-based Model Simulation with Twister Bingjing Zhang, [email protected] Lilian Weng, [email protected] B649 Term Project Presentation

Upload: clyde-oliver

Post on 30-Dec-2015

224 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Agent-based Model Simulation with Twister Bingjing Zhang, zhangbj@indiana.eduzhangbj@indiana.edu Lilian Weng, weng@indiana.eduweng@indiana.edu B649 Term

Agent-based Model Simulationwith Twister

Bingjing Zhang, [email protected]

Lilian Weng, [email protected]

B649 Term Project Presentation

Page 2: Agent-based Model Simulation with Twister Bingjing Zhang, zhangbj@indiana.eduzhangbj@indiana.edu Lilian Weng, weng@indiana.eduweng@indiana.edu B649 Term

Problem Statement

• Run the agent-based modeling (ABM)[1] simulation in parallel.

• Reason: Sequential iterations on a single machine are too slow

[1] E. Bonabeau. Agent-based modeling: Methods and techniques for simulating human systems.

Proceedings of the National Academy of Sciences, 99:7280–7287, 2002.

Page 3: Agent-based Model Simulation with Twister Bingjing Zhang, zhangbj@indiana.eduzhangbj@indiana.edu Lilian Weng, weng@indiana.eduweng@indiana.edu B649 Term

Experiment

• A model simulating Twitter mechanism:– Users are connected through the social network– Each user has a screen of messages from neighbors,

and a memory of topics he is interested in.– Users send messages chosen from screen or memory

C - capacity of the screen and memory.Pn - probability to introduce a new topic.Pr - probability to re-post a message from the screen.α - the priority of topics in the memory compared to the screen messages, and therefore the probability of posting about the memory topics is αPr.

Page 4: Agent-based Model Simulation with Twister Bingjing Zhang, zhangbj@indiana.eduzhangbj@indiana.edu Lilian Weng, weng@indiana.eduweng@indiana.edu B649 Term

ArchitectureDesign of the Application

Page 5: Agent-based Model Simulation with Twister Bingjing Zhang, zhangbj@indiana.eduzhangbj@indiana.edu Lilian Weng, weng@indiana.eduweng@indiana.edu B649 Term

Broadcasting on Twister

• Broadcasting– Chain Broadcasting– All-to-all Minimum-spanning Tree

Page 6: Agent-based Model Simulation with Twister Bingjing Zhang, zhangbj@indiana.eduzhangbj@indiana.edu Lilian Weng, weng@indiana.eduweng@indiana.edu B649 Term

Chain Broadcasting Protocolsend

get ack

send

Driver Daemon 0receive

handle data

send

Daemon 1

ack receive

handle data

send

ack

receive

handle data

get ack

ack receive

handle data

get ack

send

send

get ack

Daemon 2

receive

handle data

ack

receive

handle data

ack

ack

get ack

get ack

“Handle data” is done by spawning another thread

“Send” and “Receive” are done in a manner of “buffer by buffer”

Page 7: Agent-based Model Simulation with Twister Bingjing Zhang, zhangbj@indiana.eduzhangbj@indiana.edu Lilian Weng, weng@indiana.eduweng@indiana.edu B649 Term

MST broadcasting

Driver sends data portions to different nodes

MST Leaf Node

MST Root Node

Twister Driver

All-to-all-MST Broadcasting Protocal

Page 8: Agent-based Model Simulation with Twister Bingjing Zhang, zhangbj@indiana.eduzhangbj@indiana.edu Lilian Weng, weng@indiana.eduweng@indiana.edu B649 Term

MST Broadcasting Protocol

[3] Ernie Chan et, al. Collective Communication: Theory, Practice, and Experience. Concurrency and

Computation: Practice and Experience. 2007

Page 9: Agent-based Model Simulation with Twister Bingjing Zhang, zhangbj@indiana.eduzhangbj@indiana.edu Lilian Weng, weng@indiana.eduweng@indiana.edu B649 Term

Implementation: Model Classes

Page 10: Agent-based Model Simulation with Twister Bingjing Zhang, zhangbj@indiana.eduzhangbj@indiana.edu Lilian Weng, weng@indiana.eduweng@indiana.edu B649 Term

Implementation: TwisterMessagepublic void fromTwisterMessage(TwisterMessage message) throws SerializationException {

message.writeInt(a);…

}

public void toTwisterMessage(TwisterMessage message) throws SerializationException {

this.a = message.readInt();…

}

Page 11: Agent-based Model Simulation with Twister Bingjing Zhang, zhangbj@indiana.eduzhangbj@indiana.edu Lilian Weng, weng@indiana.eduweng@indiana.edu B649 Term

Results: Broadcasting Efficiency 80 PG nodes, 2 switches, 50 Iterations, Data Size(Each Iteration) 200KB ~ 200MB, Data

Size(Total) 1GB ~ 5GB

Page 12: Agent-based Model Simulation with Twister Bingjing Zhang, zhangbj@indiana.eduzhangbj@indiana.edu Lilian Weng, weng@indiana.eduweng@indiana.edu B649 Term

Results: Simulation Result Validation

Memory Length – number of topics in memoryTopic Popularity – number of distinct user who have used a certain topicTopic Prevalence – number of posts containing a certain topic

Page 13: Agent-based Model Simulation with Twister Bingjing Zhang, zhangbj@indiana.eduzhangbj@indiana.edu Lilian Weng, weng@indiana.eduweng@indiana.edu B649 Term

Thank you! Question?