Comparison of Agent-based platforms
Upcoming SlideShare
Loading in...5

Comparison of Agent-based platforms






Total Views
Views on SlideShare
Embed Views



1 Embed 8 8



Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

Comparison of Agent-based platforms Comparison of Agent-based platforms Presentation Transcript

  • Comparison of Three Agent-Based Platforms on the basis of a Simple Epidemiological Model Kishoj Bajracharya st111224 Examination Committee Dr. Raphael Duboz (Chairperson) Prof. Phan Minh Dung (Member) Dr. Sumanta Guha (Member) Asian Institute of Technology May 14, 2012 1 / 34
  • BACKGROUND Agent-Based System A system having 3 components: agent, behavior rules and enviroment. Components of Agent Agent-Based Modeling Modeling of system as a collection of agents inside environment with a set of rules. Agent-Based Simulation Simulation of agent-based model to perform experiments to study the behavior of complex system. 2 / 34
  • BACKGROUND (CONTD.) Agent-Based Platform Tools used for simulation and modeling of agent-based system. Environment to develop agents, agent-based components, behavior rules, etc. Agent-Based SIR Model Assumptions: 1 Each individual may be in one of three states: susceptible, infected, or recovered (removed). 2 Initally, two groups of individuals in population: suceptible and infected. 3 Infectious-Period is same for all the agents. 4 Recovered individuals cannot be infected. Each agent interacts with other agents and influence its behavior. With time, the state of an agent changes. 3 / 34
  • BACKGROUND (CONTD.) Parameters Output Population Size Number of Infected Susceptible Proportion Infectious-Period Infected Proportion probability of infection: Recovered Proportion Parameters and Outputs of Simulator Infectious-Period: Period of time in which agent is infected. After Infectious-Period, infected agents develop a permanent immunity to infection and recover from it. 4 / 34
  • BACKGROUND (CONTD.) Population Proportion Vs Time 5 / 34
  • PROBLEM STATEMENT Various agent-based platforms are available for agent-based modeling. 1 Can we trust the results obtained from them? Can we use platforms for making predictions or forecastings? 2 How can we choose platform suitable for beginner modelers? Simulation of ABM on different platforms 6 / 34
  • OBJECTIVES 1 To design and simulate the same agent-based SIR model using three agent-based platforms: NetLogo, Repast, and Cormas. 2 To compare these platforms by comparing their simulation results. 3 To suggest the platform suitable for beginners on the basis of comparison criterias based on implementation of SIR model. Research Objectives 7 / 34
  • AGENT BASED PLATFORMS NetLogo Very popular tool (educational purpose). Provides rich integrated modeling environment. Simple modeling language and easy to implement models. Feasible to deploy simulations as Java applets. Free to download and is open-source. Not object-oriented Repast ABMS library developed for social targets. Provides a core collection of classes for ABM. Programming Language: Java. Free and open-source Object-oriented 8 / 34
  • AGENT BASED PLATFORMS (Contd.) Cormas Cormas is developed to simulate agent based models of social and biological targets. Provides integrated modeling environment. Programming language: Smalltalk. Free to download but required registration with Cormas community for source code. Object-oriented 9 / 34
  • METHODOLOGY Proposed Approach Implement the same agent-based SIR model in all three platforms. Implementation of ABM on different platforms 10 / 34
  • SCHEDULING 1 Increment each day or tick. 2 Perform agent movement on space in random direction. 3 Perform agents interaction. Check the health state of neighborhood of each agent within their infection range. If health state of neighborhood of susceptible agent is ‘I’ then 1 Set Infected Days := 1. 2 Set the color of an susceptible agent as “red”. 3 Set the health state of susceptible agent as ‘I’. 4 Update the health state for each agent. If health state is I then increment the value of Infected-Days. If health state is I and Infected-Days is greater than or equal to Infectious-Period then 1 Set Infected Days := 0. 2 Set the color of an infected agent as “green”. 3 Set the health state of an infected agent as ‘R’. 5 Get the outputs from the model i.e. total simulation days, susceptible proportion, infected proportion, and recovered proportion. 6 Plot the graph of population proportion Vs Time. 11 / 34
  • SCHEDULING (CONTD.) State Diagram for State change in an Agent 12 / 34
  • METHODOLOGY (CONTD.) Perform simulations with the model for various scenarios and record the outcomes. Compute the mean and standard deviation of time series. Outputs from simulation of ABM 13 / 34
  • DATA FROM PLATFORMS Output data from the three platforms Yellow: Susceptible Red: Infected Green: Recovered Blue: Standard Plot of Time Series Data Deviation 14 / 34
  • COMPARISON OF PLATFORMS The mean time series data and their standard deviations of three agent-based platforms are plotted in the figure below. Red: NetLogo Green: Repast Blue: Cormas Blue line: Range of standard deviation Plot of Time Series Data from All Platforms 15 / 34
  • METHODOLOGY (CONTD.) Compare agent-based platforms based on the cross-correlation analysis and similarity using Manhattan distance. (a) (b) Comparison of Time series using (a) Cross-correlation and (b) Similarity using Manhattan distance. 16 / 34
  • CROSS-CORRELATION ANALYSIS Similarity Measure using Cross Correlation Method 17 / 34
  • RESULTS USING CROSS-CORRELATION Cross-correlation test between Three Platforms 18 / 34
  • MANHATTAN DISTANCE Similarity Test Sim(T1 , T2 ) is the similarity between two time series data and is defined by following equation. 1 Sim(T1 , T2 ) = i=n |(ai −bi )| i=1 1+ n 19 / 34
  • MANHATTAN DISTANCE (CONTD.) Similarity Measure using Manhattan Distance 20 / 34
  • RESULT OF MANHATTAN DISTANCE Result of Similarity Measure using Manhattan Distance 21 / 34
  • METHODOLOGY (CONTD.) Suggest the platforms based on the comparison criterias. 1 Popularity index of Platform 2 Documentation Availability 3 Modeling Speed 4 Ease to use 5 Programming Efforts 6 Choice of Programming Language 7 Simulation speed 8 GUI features 9 Ease of installation 10 License govern References: Nilolai and Madey, 2009 Tobias and Hofmann 22 / 34
  • COMPARISON OF PLATFORMS BASED ON CRITERIAS To support beginner modelers to choose the platform based on simplicity. Popularity of platforms: NetLogo > Repast > Cormas. Number of dated references in Google Scholar quoting the seminal paper of 6 ABS platforms. Documentation Availability: 1 NetLogo: Rich documentation and tutorials. 2 Repast: Comprehensive documentation and large community. 3 Cormas: Less documentation, offers training sessions and electronic forums. 23 / 34
  • COMPARISON OF PLATFORMS BASED ON CRITERIAS Modeling speed: 1 NetLogo: Second fastest. 2 Repast: Slow (programming). 3 Cormas: Fastest. Ease to use: NetLogo > Cormas > Repast. Programming Efforts: Lesser the programming efforts, platforms are more prefereable. 1 NetLogo: Less Programming 2 Repast: More programming (Less preferable) 3 Cormas: Least Programming (Object-oriented approach). Choice of Programming Language: It depends upon modeler’s choice. For beginners, NetLogo > Cormas > Repast. GUI features: NetLogo > Cormas > Repast. Licence Govern: NetLogo = Repast > Cormas. Ease of Installation: NetLogo > Repast > Cormas. 24 / 34
  • COMPARISON OF PLATFORMS BASED ON CRITERIAS Simulation Speed: From the following results, Repast > NetLogo > Cormas. Comparison on Simulation time between Platforms 25 / 34
  • COMPARISON OF PLATFORMS BASED ON CRITERIAS Following are the rating of platforms. 1 Very High: Platform is highly suitable with respect to given criteria. 2 High: Platform is suitable with respect to given criteria. 3 Low: Platform is less suitable with respect to given criteria. 4 Very Low: Platform is least suitable with respect to given criteria. Each criteria is assigned a weight factor depending upon the rating of that criteria.  1  for Very High;   0.8 for High; f = (2) 0.6 for Low;    0.4 for Very Low; 26 / 34
  • COMPARISON OF PLATFORMS BASED ON CRITERIAS Comparison Criteria NetLogo Repast Cormas Popularity index of Plat- Very High High Low form Documentation Availability Very High High Low Modeling Speed High Very Low Very High Ease to use Very High Very Low High Programming Efforts High Very Low Very High Choice of Programming Very High Very Low High Language Simulation speed High Very High Very Low GUI features Very High Very Low High Ease of installation Very High High Low License govern Very High Very High High Rating of Agent-based Platforms based on the features 27 / 34
  • RANK SUM Comparison Criteria Rank W=n-r+1 Normalized Weight(wi ) Popularity index of Platform 1 10 0.182 Documentation Availability 2 9 0.164 Modeling Speed 3 8 0.145 Ease to use 4 7 0.127 Programming Efforts 5 6 0.109 Choice of Prog. Language 6 5 0.091 Simulation speed 7 4 0.073 GUI 8 3 0.055 Ease of installation 9 2 0.036 License govern 10 1 0.018 n − ri + 1 wi = k=10 (3) n − rk + 1 k=1 28 / 34
  • CUMULATIVE WEIGHTAGE CALCULATION Comparison Criteria wi NetLogo Repast Cormas (wi × f ) (wi ×f ) (wi ×f ) Popularity index of Platform 0.182 0.182 0.1456 0.1116 Documentation Availability 0.164 0.164 0.1312 0.0984 Modeling Speed 0.145 0.116 0.058 0.145 Ease to use 0.127 0.127 0.0508 0.1016 Programming Efforts 0.109 0.0872 0.0436 0.109 Choice of Prog. Language 0.091 0.09 0.036 0.072 Simulation speed 0.073 0.0584 0.073 0.0292 GUI 0.055 0.055 0.022 0.044 Ease of installation 0.036 0.036 0.0288 0.0216 License govern 0.018 0.018 0.018 0.0144 Total Sum 1 0.934 0.607 0.7468 i=10 i=10 W = (wi × f )/( wi ) (4) i=1 i=1 29 / 34
  • COMPARISON OF PLATFORMS BASED ON CRITERIAS Outputs Greater the cumulative weightage of the platform, higher was the preference of the platform for ABM. The cumulative weightage of NetLogo, Repast and Cormas were 0.934, 0.607 and 0.7468 respectively. For the beginner modeler: NetLogo > Cormas > Repast. 30 / 34
  • CONCLUSION Agent-based SIR models were implemented on NetLogo, Repast, and Cormas. Using cross-correlation test and similarity test (Manhattan distance) Higher the threshold value, lower was the probability of similarity between the agent-based platforms. For the lower thresholds: Platforms NetLogo and Cormas were more similar than NetLogo and Repast. Platforms Repast and Cormas were dissimilar. For the higher thresholds, the results of the agent-based platforms are dissimilar. For beginner modeler, NetLogo > Cormas > Repast. 31 / 34
  • CONCLUSION (CONTD.) Platforms cannot be used for making prediction or forecasting Simulation results cannot be trusted. Not realistic in real practices. Platforms can be used as The framework to develop a model in easier way. Tool for educational purpose. Tool to analyse the behavior of the system with modeler’s own way of thinking. 32 / 34
  • FUTURE IMPLEMENTATION Use of several agent-based models for similarity measure of agent-based platforms. We can add more agent-based platforms. Our results showed that platforms showed different results even though shape or patterns were similar. How to choose the correct platform? 33 / 34