Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.Sign up
Table of Contents
ConG is no longer maintained by the LEEPS lab. The ConG source code and wiki is maintained here for reference, but LEEPS has not supported ConG since 2015. LEEPS has moved all of its experiments to the oTree experiment framework.
ConG is a suite of programs for running experiments with human subjects who interact strategically in real time. It uses graphics intensively to create a variety of strategic environments, and allows subjects to continuously change and adapt their strategies. ConG permits several different ways to specify payoff functions, including arbitrary symmetric bimatrix games. Innovative strategy selectors give the option to display a wide variety of information in a compact manner. Finally, ConG has support for running games in both continuous and discrete time, allowing a direct comparison between the two treatments.
ConG is developed by the LEEPS Lab, and funded through NSF grant SES-0925039. It is easy to use for experimenters as well as subjects. Experimenters write specifications in a human editable CSV file, loadable in any spreadsheet editor. No installation is required, and a demo experiment can be launched within minutes. We invite you to try it for yourself, to download the current version, and run some of the examples below. Then you will be prepared to design and run your own experiment.
"Software for continuous game experiments" by James Pettit, Daniel Friedman, Curtis Kephart, and Ryan Oprea. Experimental Economics, December 2014, Volume 17, Issue 4, pp 631-648
The following are test experiments we invite you to run on a single (non-networked) computer. With these examples we hope to give you a feel for how ConG client and control windows work, and how the config CSV files control the experiment.
- Prisoner's Dilemma - A demonstration inspired by the paper "A Continuous Dilemma" (Friedman & Oprea 2012) - 2x2 Bi-Matrix Game, Heat Map, Continuous & Discrete Time Treatments.
- Hawk Dove - A demonstration inspired by the paper "Separating the Hawks from the Doves" 2x2 Matrix Payoffs, Pure & Mixed Actions, Heat-Map, Group Size & Population Matching.
- Public Goods Game (Voluntary Contribution Mechanism) - A public goods game under various experimental configurations, including chat-window communication, "canned-response" communication and no communication. It also illustrates discrete time & continuous time with the "Bubbles" selector.
- Deployment of ConG in Your Lab - Production Deployment: Steps to run a ConG experiment among networked computers.
Config Files are CSV spreadsheet files - easily editable with any spreadsheet software - that control ConG Experiments. This file defines the number of periods, period lengths, whether or not periods are to be run in discreteor continuous time, the payoff function and its parameters, and other parameters specifying whatsubjects will see and how they interact in the game.
- Config Files & ConG - This page discusses a number of examples of ConG Configuration files.
- Time Modes & Settings
Payoff Functions - A Payoff Function is a mapping between subjects' action profile and a single floating point number, their payoff. ConG currently supports the tractable configuration of the following payoff functions. Additional payoff functions and the ability to write arbitrary payoff functions are possible via the Extensibility feature.
- 2x2 Matrix Games - symmetric two-by-two matrix game.
- [SumPayoffFunction|Aggregative]] - games in which subjects payoffs are a function on one's own strategy choice, and sum of other players' strategy choices. Currently include voluntary contribution mechanism and Cournot.
- Arbitrary Payoff Functions - see Extensibility below.
Selectors - A Selector is the interface for an experiment. Each selector allows subjects to change their game action and receive information about the game state. Different experiments lend themselves to using particular selectors, while some selectors may be illogical for a given experiment. Below is a list of all the selectors currently available.
- Heatmap "heatmap2d" - subject selects from a bounded one-dimensional spectrum of possible actions. Employs a heatmap to display potential payoff information. Subject action choices are displayed and selected on the Y-axis, competing group strategy(ies) are displayed on the X-axis. Payoffs displayed by "heat" color.
- One-Dimension Slider "bubbles" - subject selects from a bounded one-dimensional spectrum of possible actions. Subjects selection actions by moving a slider along the bottom X-axis. Current payoffs are reflected in "bubble" height, via the Y-axis.
- Radio Button "pure" - actions are chosen via a radio buttons. Payoffs are displayed in a matrix next to the selector.
- Arbitrary Selectors and Display Environments - see Extensibility below.
- Selector-Payoff Function Compatibility
Additional Config File Features & Options
- Matching and Groups - options for configuring subjects into groups. Matching options. Population games. Blocks of randomization. Arbitrary group and match assignments.
- Communication - options for Chat during an experiment.
- Subject Action Speed Limit - instantaneous & delayed action change options. Controls how quickly a subjects' actions move from preexisting to newly selected action (only for continuous time). Percent change per second.
Paying Subjects - ConG has several options in the control window that assist with paying subjects. Via the "Show Payout Table" in the control window, the experimenter can set a show-up fee, game-points conversion rate, and a threshold above which points are converted into cash. Discussion of payouts.csv file.
ConG generates five files during an experiment.
These files are placed in the same folder as the Control.jar or Test.jar file that ran the experiment, (Linux machines may place output files in the home directory).
- "payouts.csv" A log of period by period points earned for each subject.
- "Ticks.mm.dd.yyyy.hh.mm.AM.csv" Experiment Data & Analysis - Tick Reports. This .csv file logs subject activity as the experiment session progresses.
- client_errors.txt, and server_errors.txt', In the event the server or client program crashes, the error files might contain useful hints as to the source of the crash. For example, in the event the server is overloaded with strategy changes, the server errors files may contain message as such.
- ip_address.txt The ip_address.txt is automatically created by the server. It is placed adjacent (in the same folder) to the client.jar file. This file contains necessary information for clients to know the location of the host server.
Here, we discuss how ConG may be used to create experiments not implementable via existing configuration file settings. This requires a syntactically correct .java file describing the experiment's payoff function and graphic display (requiring some java programming experience), and a properly formatted config file. A good way to get started with such an endeavor is to work off one of the examples of ConG's extensibility feature we've prepared.
- ConG Extensibility - overview of extensibility with ConG.
Tricky Config File Fields - list of, and detailed explanation of tricky config CSV file fields.
- The "name" column - useful for organizing experiment output data.
- "Speed Limit" of Action Changes - the percentChangePerSecond column of the configuration file.
- Note on Grouping and Matching -
- Subject's First Action Choice - What action are subjects started off with in a ConG experiment? Also, the "initial" column.
- Known Issues
- ConG User License & Citation Info - Users of ConG must submit to our license, and cite the Working Paper (Pettit et al. 2012).
- Agents - pre-experiment stress testing of your config.
See our page on System Requirements