Models and Simulations in Epistemology and Philosophy of Science

Course Mechanics

Course Description

Recently, models and computer simulations have become important tools in epistemology and philosophy of science. For example, epistemologists have employed computer simulations to investigate (1) how an individual ought to revise her beliefs in light of what others tell her, (2) how she should change her opinions upon learning a reliable friend (or colleague) disagrees with her, (3) how certain she ought to be of a proposition before asserting it to others, and a variety of other questions. Similarly, philosophers of science have employed formal models to study (1') how often scientists ought to publish, (2') how credit ought to be allocated for discoveries, (3') whether scientific communities ought to embrace diverse research methodologies, and more. This course is an introduction to the various issues in epistemology and philosophy of science that are currently employing formal models and computer simulations. Questions (2) and (3') above will be the central focus of the course, but related issues will also be discussed.

The course is "practice-based" in the following sense. In addition to discussing contemporary philosophical papers, students will learn how to construct and analyze the types of models that are employed regularly in philosophical debates. To this end, students will learn how to program in NetLogo, a programming language designed for the construction of agent-based models (ABMs). No previous programming experience is required.

Course Goals

The course has three central goals. First, by the end of the semester, students should be able to explain the central questions in epistemology and philosophy of science that are being addressed with computer models, and they should be able to identify new questions that have not yet been asked. Second, students will learn to implement a formal model in NetLogo that addresses one such new question. Finally, students ought to be able to discuss the strengths and weaknesses of various models used to address philosophical questions.

Course Requirements

The central requirement is to design and implement an ABM with the purpose of addressing a question of current interest in either epistemology or philosophy of science. Students will write a final paper that (i) describes the question that model is intended to answer and (ii) the results they obtained from computer simulations of said model. Each student must submit a detailed proposal (about three pages) of his or her final project after two months. Further details about the final project can be found here and a sample proposal is available here

There will also be programming assignments due every week for the first six weeks of the course. One cannot learn to program without practicing regularly. The weekly assignments are designed to help you practice the skills and employ the concepts taught in class.

Turning in Assignments

The programming assignments are due a half hour before the start of class. Unless you are granted an extension (see below), late work will be penalized 10% for every day that it is late. You are permitted to work with other students on the assignments, and feel free to ask for my help as well. However, you should always finish your program alone; doing so ensures that you understand the material. If you collaborate with other students, please write the names of the other students with whom you worked in a comment at the top of your code.

Twice during the course of the semester, I will grant you a two-day an extension on your programming assignment, no questions asked. That is, instead of turning assignment in on Monday, you may turn upload it some time on Wednesday. If you need more than two additional days to complete an assignment, please talk to me.

To turn in assignments, please enroll in the Canvas course. Instructions for enrolling, as well as for uploading assignments are available here.


Your final grade will be calculated via a weighted average using the following weights:

Course Files


Below is a table indicating readings and assignments that are due each class. If you are a registered student in the class, then you can download the readings from the link in the "Course Files" section above.

Date Topic Readings Programming Concepts Assignment
7/4 Course Introduction

Lecture 1 Slides
None. NetLogo Interface NetLogo Tutorial 1 (In-Class)
14/4 Aims for Individual Learning

Lecture 2 Slides
Strevens. Notes on Bayesian Confirmation Theory. Sections 1-4 and 6.1-6.2.

Kelly. Logic of Reliable Inquiry. Chapter 1.
Data Types

Sample Code
NetLogo Tutorial 1 & 3
21/4 No class.
28/4 Peer Disagreement

Discussion Quesions
Feldman. "Reasonable Religious Disagreements"

White. "Epistemic Permissiveness"

Thomas Kelly. "Peer Disagreement and Higher-Order Evidence"
If-then Statements and Loops

Sample Code
Problem Set 1
5/5 Is Rational Disagreement Possible?

Lecture 4 Slides
Lehrer. "When Rational Disagreement is Impossible"

Aumann. "Agreeing to Disagree"
Procedures and Reporters, Writing Pseudo-code

Sample Code
Problem Set 2
12/5 ABMs of Peer Disagreement

Lecture 5 Slides
Douven. "Simulating Peer Disagreements"

Golub and Jackson. "Naive Learning in Social Networks and Wisdom of the Crowds"
World Commands, Patches, Agents, and Agentsets Problem Set 3
19/5 Catch up class. See readings from previous week. Agentsets None.
26/5 Individual vs. Group Rationality and Reward Schemes in Science

Discussion Questions
Kuhn. "Objectivity, value judgment, and theory choice"

Kitcher. "The Division of Cognitive Labor"
More World Commands Problem Set 4

Additional Code:
Degroot-Lehrer Model

Movie of Model: Degroot-Lehrer Movie
2/6 Methodological Pluralism and Standpoint Theory Wylie. "Standpoint Matters"

Longino. "Theoretical Pluralism and the Scientific Study of Behavior"
Recursion and NetLogo Extensions Problem Set 5

Additional Code:
Network Formation 1

Network Formation 2
9/6 No class. Problem Set 6

Additional Code:
Generate Subsets

Turtles of Hanoi
16/6 ABMs Investigating Diversity of Research Methodology

Lecture 8 Slides
Hong and Page. "Groups of diverse problem solvers can outperform groups of high-ability problem solvers"

Weisberg and Muldoon. "Epistemic Landscapes and the Division of Cognitive Labor"
Running Simulations: Plotting, Randomization, and the Behaviorspace None.
23/6 Communication and Diversity in Science

Lecture 9 Slides
Zollman. "The Epistemic Benefits of Transient Diversity"

Mayo-Wilson, Zollman, and Danks. "The Independence Thesis."
Debugging Problem Set 7
30/6 Epistemology of Testimony

Lackey. "Testimony: Acquiring Knowledge from Others"

Coady. "Testimony and Observation"

Fricker. "Second-Hand Knowledge"
None Work on Final Project.
7/7 ABMs and Testimony

Lecture 12 Slides
Zollman. "A Systems-Oriented Approach to the Problem of Testimony"

Mayo-Wilson. "The Reliability of Testimonial Norms in Scientific Communities"
None Final Project Proposal

Sample Proposal
28/7 Final Project Due for Graduating Students
Sample Final Project
19/9 Final Project Due