In these experiments, we generated a population of 1000 consumers with Chuang-Sirbu valuations as described above. We constructed a monopolist producer which attempted to learn the optimal parameters for each of the five schedules described above using the two different learning algorithms. The producer had no explicit knowledge of the consumers, such as the items they purchased or the fact that they fit a Chuang-Sirbu valuation model. It merely chose a set of parameters and observed a resulting profit signal.
As noted above, there is no reason to believe that these learning methods are optimally efficient; gains in performance could be achieved by either introducing explicit knowledge about consumer preferences or by tuning these algorithms for use on these specific problems. However, the purpose of these experiments is not to show how quickly a given algorithm can learn a particular schedule, but to show the transitional profits of agents using these pricing schedules as the schedules are being learned.
While amoeba is always attempting find an optimum and therefore has no
explicit decision to make about whether it needs to acquire more
information, a producer using the neural network must decide whether
to use its currently optimal solution or to explore further. This
decision was made by exploiting with probability
found/possible, where found is the number of samples observed
so far and possible is the number of possible integer price
schedules
. The producer modified
this by pruning known parts of the profit landscape; for example, if a set of
parameters yielded zero profit, increasing one parameter while fixing
the others will also yield zero profit, and so that part of the space
need not be explored. If the producer exploited, it chose the
prices currently believed to be optimal; if it explored, it
randomly chose an unobserved set of prices. This choice of
exploration strategy is not necessarily optimal; the point was to
choose a simple strategy and hold it constant across the different
schedules.
In these experiments, as in the analysis above,
was drawn from
U[0, 0.7].
was fixed at 10. Experiments were conducted for
both N = 10 and N = 100 goods. The producer was given 1000
iterations to attempt to learn the optimal pricing parameters for this
static population. Results are averaged over 10 runs.
In order to produce a balanced comparison of amoeba and the neural network on
the different price schedules, a uniform search space was selected. For each
pricing parameter, an upper bound much larger than the optimal value was
chosen. For example, in linear pricing with
, the upper bound was
set at 25, where the optimal value is approximately 6.3. The neural net
randomly chose points from this space when exploring, reducing the bounds when
areas of zero profit were found. The amoeba algorithm began with a simplex at
the origin and at the point specified by the upper bound. This provided both
algorithms with approximately equivalent search spaces.