• Keine Ergebnisse gefunden

Modeling Multiple Shopper Behaviors

Im Dokument Agent-Based Modeling (Seite 155-158)

A simple shop/customer model can be used to depict five different kinds of customers with different abilities, to study their behavior on the market.

The agent description is as follows:

Agent - Shops. The shop agent sets new selling price of goods and posts to the message board. The customers would then buy these goods and, depending on the profit made by the shop, it would either raise or reduce the selling price in the next iteration. The shop keeps track of the income it receives after selling goods.

Agent - Customers. There are five different kinds of customers:

• Random shoppers (Type A): This type of customer will buy from any shop on random, without any previous knowledge.

• Customers who go to a favorite shop (Type B): These customers depend on old values while buying from one shop. If they are satis-fied from the shop, they will go to the same shops to buy, else they choose another shop randomly.

• Customers who go to favorite shops of others (Type C): These customers depend on messages being posted by other customers.

They then choose those shops and buy from those.

• Shoplifters (Type D): These customers are shoplifters who choose from any one shop and shoplift products.

• Customers who only buy from cheap shops (Type E): These cus-tomers will sort the shop list to find the cheapest shops and then buy from it.

The algorithm of the model during the simulation is:

1. Shop checks profits, sets good’s selling prices and posts message ‘open for business’. The customers calculate their wages and add these to their savings.

2. Customers then spend their savings, buying goods based on the shop price, stock message, and send updated stock message to shops.

3. Shops collect profits and add income on sold goods.

Based on the model description above, functions are as follows:

Function - Shop 1: • Check the amount of stock sold in last iteration.

• If the stock sold is more that 5, increase the selling price by a random amount; else reduce it, check price does not go below zero.

• Post message of good’s price.

• Post message of stock left in shop. Stock is by default started from 100.

Function - Customer types (A-E) 1: • Calculate and set random wage.

Function - CustA 2: • Calculate a random shop.

• Check if it has savings, buy goods from the shop.

• Post out new stock of the shop.

• Set new satisfied value if more than 0.5, post out message of satis-faction of the shop bought from.

Function - CustB 2: • Check the satisfying value (past) of this cus-tomer. If more that 0.5, then the customer will buy from the past shop. Else calculate a shop on random and buy from that shop.

• Checks if savings exist, buy goods from the shop.

• Post out new stock of the shop.

• Set new satisfied value, if more than 0.5, post out message of sat-isfaction of shop bought from.

Function - CustC 2: • Check the posted satisfied messages, get the first message and choose to go to that shop.

• Check if savings, buy goods from the shop.

• Post out new stock of the shop.

• Set new satisfied value if more than 0.5, post out message of satis-faction of this shop bought from.

Function - CustD 2: • Choose a shop randomly.

• Check if shop has stock. If it does, then shoplift.

• Post out new stock of the shop.

Function - CustE 2: • Choose 5 shops at random.

• Sort the shop list in order of cheapest.

• Check if savings, buy goods from the shop on top (cheapest shop).

• Post out new stock of the shop.

• Set new satisfied value if more than 0.5, post out message of satis-faction of this shop bought from.

Function - Shop 3: • Find the latest stock message of shop agent and calculate how much stock was sold in this iteration.

• According to the stock sold and price, calculate income shop col-lected.

0

(a) Savings of the customers with all cus-tomer types to be of a population 10 each.

0

(b) Comparing the average income of the shops with 10 and 30 shoplifters.

0

(c) Comparing the average income of the shops with 10 and 30 random buyers.

0

10 favourite shop buyers, 10 others favourite shop buyers 20 favourite shop buyers, 10 others favourite shop buyers 30 favourite shop buyers, 10 others favourite shop buyers 10 favourite shop buyers, 20 others favourite shop buyers 10 favourite shop buyers, 30 others favourite shop buyers

(d) Comparing the average income of the shops by varying the number of cus-tomers who go to their own favorite shops and those who go to shops recommended by others.

FIGURE 6.4: Different shoppers in the same simulation.

Figure 6.4(a) shows the average savings of all customer types. The shoplifters, since not spending save vast amounts compared to the others. The customers who keep buying from their favorite shop, despite of price increases, save the least in all five types. The other three customer types seems to save equally, even if they buy from cheap shops, randomly or buy from other rec-ommended shops. Figure 6.4(b) compares the average income of shops with number of shoplifters in the system. The shops earn and save money with lesser shoplifters, than with more shoplifters. Figure 6.4(c) compares the av-erage income of shops with number of random buyers. When there are more customers who buy at random, the average income of the shops is seen to in-crease. Figure 6.4(d) compares the average income of shops, if the customers who buy from their favorite or recommended by others is varied. If customers keep buying from their favorite shops, the shops are seen to earn more as the prices increase. But customers who buy on recommendations, seem to be loos-ing the most. This shows shops profit more by beloos-ing recommended by other customers.

Im Dokument Agent-Based Modeling (Seite 155-158)