Registers a good that model agents can carry or trade. Agents will keep track of stocks of the good in the dict-like agent.stocks. Quantities of a good can be accessed with agent.stocks[good], and properties of the good with a two-argument index, e.g. agent.stocks[good, 'property'].
Parameters
name — str, required
The name of the good.
color — str, required
The color that ought to represent the good in the control panel and visualizations. Can take a hex string, a color name string (see the Matplotlib documentation for valid values), an RGB tuple with ranges from 0.0 to 1.0, or a Color object.
endowment — num|tuple|func(str), optional
Determines how much of the good agents begin the model with.
- If a number (int or float), agents instantiate with that amount of the good.
- Can also be a function that takes the breed as its only argument and returns a number.
- A two-int tuple will endow the agent with a random amount uniformly distributed between those two ints.
Default value: None
money — bool, optional
Sets the good as the medium of exchange for the purpose of functions such as
agent.buy(). Only one good can be declared the monetary good.Default value: False
props — dict{str: num|tuple|func(str)}, optional
A set of per-agent properties attached to the good. The values of the dict set the initial value of the property on agent instantiation, and have the same possibilities as the
endowmentargument, e.g. a number, a tuple, or a function.Default value: {}
Return Value — Good
The newly created Good object.
charwick
Jun 19, 2021 at 20:01In this example agents have a reserve quantity, a minimum price, and a surplus for each good:
This gives agents ‘reserve’, ‘price’, and ‘surplus’ properties for each of the two goods, and sets the initial values to a random integer between 1 and 2000, 1, and
False, respectively.The quantity of the good held by the agent can be accessed with
agent.stocks[good]. The other properties can be accessed with a two-argument index.agent.stocks['water', 'reserve'], for example, will return the value of the agent’s'reserve'property for water. Agents’ good properties can be set using the two-argument index as well.