Replicating Berdahl et al (2013) "Emergent Sensing of Complex Environments by Mobile Animal Groups" with humans
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Experiment 1: direct replication of Berdahl et al (2013) reported in cogsci paper (note that large pre-rendered background file is needed to run this expt -- contact authors for details)

Experiment 2: single-player micro-experiments to directly test model with simulated bots

Experiment 3: multi-player experiment with single, smooth spotlight & binary reward

Note: This is an unofficial fork of MWERT, adapted to allow arbitrary numbers of players to join a single room and participate in a collective behavior task. This task was originally used by Ian Couzin's lab to investigate collective behavior in fish.

Local demo (from scratch)

  1. Git is a popular version control and source code management system. If you're new to git, you'll need to install the latest version by following the link for Mac or Windows and downloading the first option in the list. On Mac, this will give you a set of command-line tools (restart the terminal if the git command is still not found after installation). On Windows it will give you a shell to type commands into. For Linux users, more information can be found here.

  2. On Mac or Linux, use the Terminal to navigate to the location where you want to create your project, and enter

    git clone

    at the command line to create a local copy of this repository. On Windows, run this command in the shell you installed in the previous step.

  3. Install node and npm (the node package manager) on your machine. Node.js sponsors an official download for all systems. For an advanced installation, there are good instructions here.

  4. Navigate into the repository you created. You should see a file called package.json, which contains the dependencies. To install these dependencies, enter npm install at the command line. This may take a few minutes.

  5. Finally, to run the experiment, enter node app.js at the command line. You should expect to see the following message:

    info  - started
        :: Express :: Listening on port 8888

    This means that you've successfully created a 'server' that can be accessed by copying and pasting


    in one tab of your browser. You should see an avatar in a waiting room. To connect the other player in another tab for test purposes, open a new tab and use the same URL. Repeat as many times as you'd like!