“The Naming Game is explained in chapter 5 of the Talking Heads book [1]. In the first assignment you are to implement a working naming game as in [1] with the difference that the objects do not need to consist of categories and of course it can be done fully artificial (i.e. no robots, no vision, etc). In short the world can just be a list of symbols, a context is a random subset of the world. The population is a list of agents (you should define an abstraction for an agent). An agent should be able to build up and maintain a lexicon of names for the symbols of the world. Agents need to be able to pick a random topic from the context and they can point to the topic. In this case pointing just means transfering the chosen symbol to the hearer at the end of the game. A word (name) always consists of two sides, a meaning (in this case a symbol) and a form (in this case a random string). Every association between form and meaning is also scored (and updated) between 0 and 1 as explained in the [1]. The endpoint should be a population with a shared lexicon of minimal size (i.e. without synonymy). So if there are n objects (symbols) in the world then the population should converge to a shared lexicon of n names.”
[1] Steels, L. (1999) The Talking Heads Experiment. Volume 1. Words and Meanings
[2] A. Baronchelli, V. Loreto and L. Steels In-depth analysis of the Naming Game dynamics: the homogeneous mixing case. Int. J. of Mod. Phys. C 19, 785, 2008.