Difference between revisions of "CS382:Unit-compsoc"

From Earlham CS Department
Jump to navigation Jump to search
(Background reading, one or more pointers/documents and a brief synopsis of what's covered in them)
Line 1: Line 1:
= Computational Sociology with Agent Based Modeling =
+
----
 +
= Computational Sociology and Agent Based Modeling =  
 +
== Overview ==
 +
This unit showcases Agent Based Modeling techniques and allows students to investigate them in a computational sociology context.
  
== Background reading, one or more pointers/documents and a brief synopsis of what's covered in them ==
+
== Background Reading for Teachers and TAs ==
<font color="blue">You're missing the synopses on what these are about.</font>
+
* [http://en.wikipedia.org/wiki/Computational_sociology Computational Sociology (wikipedia)] Basic overview of computational sociology.
* [http://en.wikipedia.org/wiki/Computational_sociology Computational Sociology (wikipedia)]
+
* Tutorial on Agent Based Modeling [http://portal.acm.org/citation.cfm?id=1162708.1162712 ACM Digital Library] An in depth look at ABM theory and technologies.
* [http://ideas.repec.org/p/wpa/wuwpco/0405002.html The Structural Dynamics of Corruption: Artificial Society Approach] - <font color="blue">I have concerns about whether freshmen students will be able to sit down and read this.  This might be interesting to cover but as part of the lecture.</font>
 
* [http://ideas.repec.org/p/sce/cplx03/06.html Macro And Micro Dynamics In An Artificial Society: An Agent Based Approach] - <font color="blue">This link is broken</font>
 
* [http://www.swarthmore.edu/SocSci/tburke1/artsoc.html Artificial Societies, Virtual Worlds and the Shared Problems and Possibilities of Emergence] - <font color="blue">Not really sure how this fits in with ''modeling'' computational sociology, because these are player-controlled</font>
 
* [http://jasss.soc.surrey.ac.uk/JASSS.html Journal of Artificial Societies and Social Simulation] - <font color="blue">A list of articles isn't very helpful.  Sorry.</font> It's still a resource for background reading.
 
* [http://portal.acm.org/citation.cfm?id=261181 Growing Artificial Societies: Social Science From the Bottom Up] (book citation) <font color="blue">This is an entire book.  For students to read for this unit?</font>
 
* Tutorial on Agent Based Modeling [http://portal.acm.org/citation.cfm?id=1162708.1162712 ACM Digital Library]
 
* [http://www.casos.cs.cmu.edu/education/phd/classpapers/Macy_Factors_2001.pdf Computational Sociology and Agent Based Modeling] - <font color="blue">This is interesting but very long. Students are really going to sit down and read forty pages about something they don't know much about?</font>
 
  
== Lecture notes - outline form ==
+
== Reading Assignments for Students ==
 +
* [http://ideas.repec.org/p/wpa/wuwpco/0405002.html The Structural Dynamics of Corruption: Artificial Society Approach] It's a bit longwinded and technical, but I think 13 pages is reasonable. It's a "welcome to college" kind of text. I don't expect that they'll get any of the mathy stuff, though, so I think maybe just clipping out the parts about choosing rulesets and giving them that would be useful.
 +
* [http://www.swarthmore.edu/SocSci/tburke1/artsoc.html Artificial Societies, Virtual Worlds and the Shared Problems and Possibilities of Emergence] This is relevant because of its discussion of emergence. I think for students it will help to justify why they're learning agent based modeling (because the emergent behavior of the models mimics the emergent behavior of these virtual worlds)
 +
* [http://jasss.soc.surrey.ac.uk/12/1/7.html A Proximate Mechanism for Communities of Agents to Commemorate Long Dead Ancestors] Though possibly more computational anthropology, I think this is a softer intro than the corruption model, and arguably more interesting.
 +
* [http://jasss.soc.surrey.ac.uk/11/4/9.html Can Extremism Guarantee Pluralism?] Another very long one, but such a fascinating topic I think it would engage students (especially Earlhamites).
 +
* [http://www.casos.cs.cmu.edu/education/phd/classpapers/Macy_Factors_2001.pdf Computational Sociology and Agent Based Modeling] Too long to read in full, but the introductory prose is extremely illuminating.
 +
 
 +
 
 +
== Reference Material ==
 +
* An item and synopsis.
 +
 
 +
== Lecture Notes ==  
 
* What is Agent Based Modeling?
 
* What is Agent Based Modeling?
 
** Game of Life  
 
** Game of Life  
 
** Emergent Behavior  
 
** Emergent Behavior  
** Axtell and Epstein - Growing Artificial Societies
 
 
** What are its advantages and disadvantages?
 
** What are its advantages and disadvantages?
 
* Where is it useful?  
 
* Where is it useful?  
Line 25: Line 31:
 
* Some Examples  
 
* Some Examples  
 
** [http://en.wikipedia.org/wiki/Boids Boids]
 
** [http://en.wikipedia.org/wiki/Boids Boids]
** [http://www.cmol.nbi.dk/models/infoflow/infoflow.html Self Assembling of Information on networks]
+
* Computational Sociology
** [http://jasss.soc.surrey.ac.uk/12/1/6/appendixB/EpsteinAxtell1996.html Sugarscape]
+
** Who?
* <font color="blue">Is the focus of this unit computational sociology or agent-based modeling?  The reading makes it out to be computational sociology but the lecture is far more agent-based modeling.</font>
+
*** Axtell and Epstein - Growing Artificial Societies
** leave what i have here, expand for computational sociology
+
** Why?
 +
*** Perhaps distribute and discuss introductory materials from "Computational Sociology and Agent Based Modeling" article
 +
** Example models, demo in class
 +
*** [http://www.cmol.nbi.dk/models/infoflow/infoflow.html Self Assembling of Information on networks]
 +
*** [http://jasss.soc.surrey.ac.uk/12/1/6/appendixB/EpsteinAxtell1996.html Sugarscape]
  
== Classroom response questions - at least three ==
+
== Lab ==
 +
* Tie this in with facebook/myspace/<social network here (virtual or real)>. Who do you know? Draw a graph of your best friends, good friends, acquaintances, less-than-  acquaintances and follow the coloring/sizing of the model. Does this model resemble what emerges in the dynamic model (below)? Do several runs of the model and match their  emergent stages against your drawing. Discuss validity of model based on this. The key for the lab is "Does this model resemble what emerges in the dynamic model?" The  applet will run until it reaches a state of relative stasis. The static model that the students develop will, hopefully, have similar characteristics to the applet's  emerged results. The idea is that 'reality' - the static model - appears in the emergent behavior of the dynamic model
 +
** [http://www.cmol.nbi.dk/models/infoflow/infoflow.html Model]
 +
 
 +
* Say you want to model sitting patterns in Saga. Come up with a reasonable set of agents and agent relations that you would use to acccomplish this. What are their behaviors? Think beyond just people (eg tables, food [affects how long someone would stay).
 +
 
 +
==== Software ====
 +
Java. For applets. Only req I've encountered so far (I had to get it!)
 +
 
 +
==== Bill of Materials ====
 +
Nada. Paper and pencil.
 +
 
 +
== Evaluation ==
 +
==== CRS Questions ====  
 
* 1. What is Emergent Behavior?
 
* 1. What is Emergent Behavior?
 
** A. The complex outcome of the interaction of many simple rulesets
 
** A. The complex outcome of the interaction of many simple rulesets
Line 47: Line 70:
 
** D. BDroids
 
** D. BDroids
  
== Lab activity - materials, process and software ==
+
==== Quiz Questions ====  
=== Self Assembling of Information on networks ===
+
Explain how agent based modeling's concept of emergent behavior could be used to explain some natural phenomenon.
Tie this in with facebook/myspace/<social network here (virtual or real)>. Who do you know? Draw a graph of your best friends, good friends, acquaintances, less-than-acquaintances and follow the coloring/sizing of the model. Does this model resemble what emerges in the dynamic model? Do several runs of the model and match their emergent stages against your drawing. Discuss validity of model based on this.
+
 
* [http://www.cmol.nbi.dk/models/infoflow/infoflow.html Model]
+
= Agent Based Modeling and Computational Sociology Metadata =
<font color="blue">I like the idea of using students' own social networks and getting them involved with that, but I'm not entirely sure what you mean about them drawing the model.  Their drawing would be flat, whereas the model is constantly changing with information being moved around.  How does information move in the students' drawing?</font>
+
This unit introduces students to Agent Based Modeling through the use of examples and then has them work in a context of Computational Sociology to learn more
* The key for the lab is "Does this model resemble what emerges in the dynamic model?" The applet will run until it reaches a state of relative stasis. The static model that the students develop will, hopefully, have similar characteristics to the applet's emerged results. The idea is that 'reality' - the static model - appears in the emergent behavior of the dynamic model.
+
This section contains information about the goals of the unit and the approaches taken to meet them.
 +
 
 +
== Scheduling ==
 +
Should certainly come after mathematical modeling and before systems dynamics.
  
== Scheduling - early, late, dependencies on other units, length of unit ==
+
== Concepts and Techniques ==  
=== Timing ===
+
* Pedagogical
Should certainly come after mathematical modeling. Other than that I don't think it matters.
+
** Inquiry Based Learning
=== Length ===
+
** Degrees of open endedness
Two weeks. It's important and there's a lot of good stuff to do.
+
** uses science to illustrate complexity of world around us
 +
* Structural
 +
** CRS
 +
** largely platform independent
  
== Gen Ed ==
+
== General Education Alignment ==
=== Criterion 1 ===
+
* Analytical Reasoning Requirement
Develops students' understanding of the natural world.
+
** Abstract Reasoning - From the [[http://www.earlham.edu/curriculumguide/academics/analytical.html Catalog Description]] ''Courses qualifying for credit in Abstract Reasoning typically share these characteristics:''
* Unit develops students' ability to understand the natural world as a chaotic - but emergent - system.
+
*** They focus substantially on properties of classes of abstract models and operations that apply to them.
 +
**** Agents -> abstract models
 +
*** They provide experience in generalizing from specific instances to appropriate classes of abstract models.
 +
**** discussion of boids, sugarscape and agent based modeling as a whole
 +
*** They provide experience in solving concrete problems by a process of abstraction and manipulation at the abstract level. Typically this experience is provided by word problems which require students to formalize real-world problems in abstract terms, to solve them with techniques that apply at that abstract level, and to convert the solutions back into concrete results.
 +
**** the emergent behavior is a process of abstract manipulation; comparing emergent behavior back against the real world is "converting solutions back into concrete results"
 +
** Quantitative Reasoning - From the [[http://www.earlham.edu/curriculumguide/academics/analytical.html Catalog Description]] ''General Education courses in Quantitative Reasoning foster students' abilities to generate, interpret and evaluate quantitative information. In particular, Quantitative Reasoning courses help students develop abilities in such areas as:''
 +
*** Using and interpreting formulas, graphs and tables.
 +
**** Little of this - the point is to avoid formulas (initially), but graphs and tables come up when analyzing model results.
 +
*** Representing mathematical ideas symbolically, graphically, numerically and verbally.
 +
**** Little of this. We're working with people, not numbers.
 +
*** Using mathematical and statistical ideas to solve problems in a variety of contexts.
 +
**** Nada.
 +
*** Using simple models such as linear dependence, exponential growth or decay, or normal distribution.
 +
**** This could be worked in, but isn't there now.
 +
*** Understanding basic statistical ideas such as averages, variability and probability.
 +
**** Nope.
 +
*** Making estimates and checking the reasonableness of answers.
 +
**** In a more abstract way than most mathiness.
 +
*** Recognizing the limitations of mathematical and statistical methods.
 +
**** This is fulfilled - the point of ABM is the limitation of mathematical and statistical methods.
 +
* Scientific Inquiry Requirement - From the [[http://www.earlham.edu/curriculumguide/academics/scientific.html Catalog Description]] ''Scientific inquiry:''
 +
** Develops students' understanding of the natural world.
 +
*** Yes. Agent based methodology informs a way of thinking about natural processes that differs from more typical techniques - the ideas of emergent behavior are present in every day life.
 +
** Strengthens students' knowledge of the scientific way of knowing — the use of systematic observation and experimentation to develop theories and test hypotheses.
 +
*** None.
 +
** Emphasizes and provides first-hand experience with both theoretical analysis and the collection of empirical data.
 +
*** Yes. Models = theoretical. Analyzing one's own social circle, for example, is empirical collection.
  
=== Criterion 2 ===
+
== Scaffolded Learning ==
Strengthens students' knowledge of the scientific way of knowing — the use of systematic observation and experimentation to develop theories and test hypotheses.
+
None. The unit is lecture and work; neither fall into a set scaffolded structure.
* The lab requires the collection of data first-hand and its comparison to the results of a model. I'd say this nail is hit on the head.
 
  
=== Criterion 3 ===
 
Emphasizes and provides first-hand experience with both theoretical analysis and the collection of empirical data.
 
* The collection of empirical data: coming up with static models and, in a possible second lab, determining simple rulesets of some agentset. Theoretical analysis: all the models students interact with in the unit.
 
  
== Archived stuff ==
+
== Inquiry Based Learning ==  
* [http://www.personal.kent.edu/~bcastel3/ brian castellani sociology and complexity web]
+
The get to think creatively; they make a (static) model and get to think up their own agent based model (in an easy, but still interactive, way)
** [http://www.personal.kent.edu/%7emdball/Summit-Sim.htm Modeling social mobility. Paper, too]
 
* [http://www.cmol.nbi.dk/javaapp.php Center for Models of Life - CMOL: Models / Interactive Java Applets]
 
** [http://www.cmol.nbi.dk/models/ibattle/ibattle.html A model of information and dominance], [http://arxiv.org/abs/0708.0368 Related paper]
 
** [http://www.cmol.nbi.dk/models/inforew/inforew.html Modeling self organization of communication and topology in social networks]
 

Revision as of 16:14, 6 March 2009


Computational Sociology and Agent Based Modeling

Overview

This unit showcases Agent Based Modeling techniques and allows students to investigate them in a computational sociology context.

Background Reading for Teachers and TAs

Reading Assignments for Students


Reference Material

  • An item and synopsis.

Lecture Notes

  • What is Agent Based Modeling?
    • Game of Life
    • Emergent Behavior
    • What are its advantages and disadvantages?
  • Where is it useful?
    • Economics
    • Sociology
    • Biology
    • Information Science
  • Some Examples
  • Computational Sociology
    • Who?
      • Axtell and Epstein - Growing Artificial Societies
    • Why?
      • Perhaps distribute and discuss introductory materials from "Computational Sociology and Agent Based Modeling" article
    • Example models, demo in class

Lab

  • Tie this in with facebook/myspace/<social network here (virtual or real)>. Who do you know? Draw a graph of your best friends, good friends, acquaintances, less-than- acquaintances and follow the coloring/sizing of the model. Does this model resemble what emerges in the dynamic model (below)? Do several runs of the model and match their emergent stages against your drawing. Discuss validity of model based on this. The key for the lab is "Does this model resemble what emerges in the dynamic model?" The applet will run until it reaches a state of relative stasis. The static model that the students develop will, hopefully, have similar characteristics to the applet's emerged results. The idea is that 'reality' - the static model - appears in the emergent behavior of the dynamic model
  • Say you want to model sitting patterns in Saga. Come up with a reasonable set of agents and agent relations that you would use to acccomplish this. What are their behaviors? Think beyond just people (eg tables, food [affects how long someone would stay).

Software

Java. For applets. Only req I've encountered so far (I had to get it!)

Bill of Materials

Nada. Paper and pencil.

Evaluation

CRS Questions

  • 1. What is Emergent Behavior?
    • A. The complex outcome of the interaction of many simple rulesets
    • B. How we verify and validate Agent Based models
    • C. How we define rulesets for agents in an agent based model
    • D. How we determine the formulas we use in mathematical modeling
  • 2. Who wrote the seminal text on sociological agent-based modeling?
    • A. Peck & Rogers, et. al
    • B. Axtell and Epstein
    • C. Axeman and Edlefsen
    • D. Whitehall and North
  • 3. What is the name of the first agent-based biological model?
    • A. Droids
    • B. BirdBots
    • C. Boids
    • D. BDroids

Quiz Questions

Explain how agent based modeling's concept of emergent behavior could be used to explain some natural phenomenon.

Agent Based Modeling and Computational Sociology Metadata

This unit introduces students to Agent Based Modeling through the use of examples and then has them work in a context of Computational Sociology to learn more This section contains information about the goals of the unit and the approaches taken to meet them.

Scheduling

Should certainly come after mathematical modeling and before systems dynamics.

Concepts and Techniques

  • Pedagogical
    • Inquiry Based Learning
    • Degrees of open endedness
    • uses science to illustrate complexity of world around us
  • Structural
    • CRS
    • largely platform independent

General Education Alignment

  • Analytical Reasoning Requirement
    • Abstract Reasoning - From the [Catalog Description] Courses qualifying for credit in Abstract Reasoning typically share these characteristics:
      • They focus substantially on properties of classes of abstract models and operations that apply to them.
        • Agents -> abstract models
      • They provide experience in generalizing from specific instances to appropriate classes of abstract models.
        • discussion of boids, sugarscape and agent based modeling as a whole
      • They provide experience in solving concrete problems by a process of abstraction and manipulation at the abstract level. Typically this experience is provided by word problems which require students to formalize real-world problems in abstract terms, to solve them with techniques that apply at that abstract level, and to convert the solutions back into concrete results.
        • the emergent behavior is a process of abstract manipulation; comparing emergent behavior back against the real world is "converting solutions back into concrete results"
    • Quantitative Reasoning - From the [Catalog Description] General Education courses in Quantitative Reasoning foster students' abilities to generate, interpret and evaluate quantitative information. In particular, Quantitative Reasoning courses help students develop abilities in such areas as:
      • Using and interpreting formulas, graphs and tables.
        • Little of this - the point is to avoid formulas (initially), but graphs and tables come up when analyzing model results.
      • Representing mathematical ideas symbolically, graphically, numerically and verbally.
        • Little of this. We're working with people, not numbers.
      • Using mathematical and statistical ideas to solve problems in a variety of contexts.
        • Nada.
      • Using simple models such as linear dependence, exponential growth or decay, or normal distribution.
        • This could be worked in, but isn't there now.
      • Understanding basic statistical ideas such as averages, variability and probability.
        • Nope.
      • Making estimates and checking the reasonableness of answers.
        • In a more abstract way than most mathiness.
      • Recognizing the limitations of mathematical and statistical methods.
        • This is fulfilled - the point of ABM is the limitation of mathematical and statistical methods.
  • Scientific Inquiry Requirement - From the [Catalog Description] Scientific inquiry:
    • Develops students' understanding of the natural world.
      • Yes. Agent based methodology informs a way of thinking about natural processes that differs from more typical techniques - the ideas of emergent behavior are present in every day life.
    • Strengthens students' knowledge of the scientific way of knowing — the use of systematic observation and experimentation to develop theories and test hypotheses.
      • None.
    • Emphasizes and provides first-hand experience with both theoretical analysis and the collection of empirical data.
      • Yes. Models = theoretical. Analyzing one's own social circle, for example, is empirical collection.

Scaffolded Learning

None. The unit is lecture and work; neither fall into a set scaffolded structure.


Inquiry Based Learning

The get to think creatively; they make a (static) model and get to think up their own agent based model (in an easy, but still interactive, way)