Exemple #1
0
        self.expected_salary += 1

    def lower_salary(self):
        self.expected_salary = max(1, self.expected_salary - 1)

    def do_nothing(self):
        pass

    def balance(self):
        self.round_score = self.inventory['cakes'] + self.inventory['brownies'] + (self.cash * 0.2)
        self.inventory['cakes'] = 0
        self.inventory['brownies'] = 0
        Agents.SmartAgent.balance(self)
        return Agents.Consumer.balance(self)



terra = World(10)
market = Market.RetailStore(debug=False)
terra.make_agents(Plebian, 1000)
for item in ["flour", "milk", "eggs"]:
    for i in range(20):
        agent = Farm(item)
        terra.add_agent(agent)
for item in ["cakes", "brownies"]:
    for i in range(20):
        agent = Factory(item)
        terra.add_agent(agent)
terra.add_market(market)
terra.run_sim(10)
Exemple #2
0
    def expand(self):
        self.rate += 1

    def downsize(self):
        self.rate = max(1, self.rate - 1)


class Shopper(Agents.Consumer):
    def __init__(self, utility, mps=0.1):
        super().__init__(utility, mps)
        self.income = random.randint(50, 200)
        self.turns = {0: self.work, 3: self.shop, 4: self.consume}

    def work(self):
        self.cash += self.income

    def consume(self):
        for item in self.inventory.keys():
            self.inventory[item] = 0


market = Market.RetailStore()
world = World(5)
world.add_market(market)
world.make_agents(Shopper, 1000, Utility(UTILITY_FUNCTION))
world.make_agents(Shop, NUMBER_OF_FISH, "fish")
world.make_agents(Shop, NUMBER_OF_CHIPS, "chips")
world.run_sim(100)
world.show_data()