(toiminnot)

hwechtla-tl: Kuinka paljon resurssin vähyys suosii tuottajaa

Kierre.png

Mikä on WikiWiki?
nettipäiväkirja
koko wiki (etsi)
viime muutokset


Jos järjestetään resurssista huutokauppa, on mahdollista tarjoajien ylärajoista laskea, kuinka paljon huutokauppa tuottaa, kun kaupattavana on N samanlaista yksikköä. Se tuottaa jokaiselle yksikölle sen verran rahaa, kuin siitä tarvitsee huutaa, eli huutojen suuruusjärjestyksessä huudon numero (N+1) verran. Tästä vähennetään kunkin yksikön tuottamisen marginaalikustannukset.

Tällainen laskentatapa tuottaa joskus huisin epälineaarisia optimaalisia tuotantomääriä (marginaalikustannusten funktiona), varsinkin jos tarjoajien halu tarjota vaihtelee paljon. Mielenkiintoista on myös, että koskaan ei kannata tuottaa kaikille riittävästi (koska silloin kenenkään ei tarvitse tarjota mitään saadakseen tuotteen).

def scarcity_payoff(n, offers, margcost):
  if n >= len(offers): return 0
  return n * (offers[n] - margcost)

def optimal_scarcity(offers, margcost):
  optimal, profit = 0, 0
  for n in range(1, len(offers)):
    prof = scarcity_payoff(n, offers, margcost)
    if prof > profit:
      optimal, profit = n, prof
  return (optimal, profit)

def generate_offers(n, base, error):
  res = [base + error * random.random() for _ in range(n)]
  res.sort()
  res.reverse()
  return res

def show_line(offers, margcost):
  optimal, profit = optimal_scarcity(offers, margcost)
  print '%.2f %s* %.2f' % (margcost, ' ' * optimal, profit)

Tällaisia tuloksia siitä tulee:

>>> offers = generate_offers(20, 1, 1)
>>> for i in range(20): show_line(offers, i/10.)
... 
0.00                    * 19.47
0.10                    * 17.57
0.20                    * 15.67
0.30                    * 13.77
0.40                    * 11.87
0.50                    * 9.97
0.60                    * 8.07
0.70          * 6.40
0.80          * 5.50
0.90          * 4.60
1.00          * 3.70
1.10      * 2.86
1.20      * 2.36
1.30      * 1.86
1.40      * 1.36
1.50      * 0.86
1.60      * 0.36
1.70   * 0.10
1.80 * 0.00
1.90 * 0.00

* vapaan kilpailun huonoja puolia


kommentoi (viimeksi muutettu 08.01.2013 15:38)