Released Version Record File for
Trade Network Game (TNG) Software

Last Updated: 16 January 2023

Site Maintained By:
Leigh Tesfatsion
Research Professor & Professor Emerita of Economics
Courtesy Research Professor of Electrical & Computer Engineering
Heady Hall 260
Iowa State University
Ames, Iowa 50011-1054
tesfatsi AT

Trade Network Game Lab (TNGLab) Home Page

Record of TNG and TNGLab Software Modifications

TNG Program Version 105c (October 20, 1999): (139K).

The fitness measure for each agent type has been changed from average payoff per payoff made to average payoff per trade cycle, that is, to total payoffs (profits) normalized by dividing through by the fixed number of trade cycles. Counts are also now kept and outputted for inactivity ("wallflower") and refusal payoffs, and the output formatting has been revised for increased clarity.

TNG Program Version 105b (July 29, 1998): (139K).

The range of the elite value has been extended (through a weakening of ASSERT statements in tngSim.cpp) to allow anywhere from 0 to 100 percent (inclusive) of the traders of each trader type (pure buyer, pure seller, buyer-seller) to be treated as elite agents in the application of genetic algorithm operations.

The fix-up for the bug in the print-out of average fitness scores that was incorporated into the previous program version has been improved so that all fix-up code changes are now encapsulated in the revised version of tngSimulation::Dump(void).

TNG Program Version 105a (July 22, 1998):

Bug fixed in tngSimulation::Dump(void) that caused the print-out of the average fitness score for each trader type to have a small systematic upward bias. This print-out bug did not affect any other aspect of the program outputs.

TNG Program Version 104c (April 7, 1998):

Additional call to the TNG qsort routine (qsort.c) added to tngTradeBot::Dump(void) in tngBot.cpp to improve output appearance. Although conceptually insignificant, this modification changes the number of calls to the TNG pseudo-random number generator because the TNG qsort routine randomly shuffles items of equal value prior to sorting.

TNG Program Version 104b (November 30, 1997):

Qsort routine (qsort.c) modified so that items equal in value are randomly shuffled prior to sorting to avoid incumbency effects.

TNG Program Version 104 (November 18, 1997):

Clarification of copyright information and terms of release.

Modified configuration file tng.ini for user inputs and modified defaults for print out.

TNG Program Version 103 (September 22, 1997):

Two bugs fixed with regard to tradeHistory indexing and FSM state updating that permitted unintended leakage of information across trade histories.

Incorporation of separate evolution of distinct trader types: (1) pure buyers; (2) buyer-sellers; and (3) pure sellers.

TNG Program Version 102 (February 22, 1997):

Modifications made to rand(), qsort(), and comparison operator in TNG program version 101 in order to ensure portability across 32-bit hardware.

TNG Program Version 101 (February 13, 1997):

Executable files tng.exe and tngshell.exe compiled on a Windows 95 machine. Compatible with Windows 3.11 and NT.

TNG Program Version 100 (February 6, 1997):

Executable files tng.exe and tngshell.exe compiled on a Windows NT 4.0 machine. Not compatible with Windows 3.11.