NetLogo User Community Models
## WHAT IS IT?
This project simulates the rise of a good as a best-seller in an enterprise. It makes use of consumer theory in Economics for some of the agent rules (e.g. preferences, utility, the Walras Law, etc.) specifically in the purchase of goods. This project also integrates a method for spreading information: word-of-mouth, to influence other consumers whether to buy a good or not.
## HOW IT WORKS
The consumers are initially scattered around the waiting area between the two orange tables where the goods are placed. The consumers decide which goods to buy according to their budget and levels of desire for the goods. The level of desire is represented by the value of the "level" property in the links between the goods and consumers.
A consumer would only buy a good if the "level" of desire for the good reaches a certain threshold. If they bought the good, then their desire for the good is diminished by one; buying it has quenched their desire for it. If for some situation they buy a good they have already bought during the day/tick, the desire for the good is penalized twice in the purchase. The consumer desires for the good less and less in application of the Economic theory of Diminishing Marginal Returns.
For every good they buy, their utility (or happiness) is increased by the value of their desire for that good for the current day/tick. Note that utility resets every day. A plot is included in the interface to keep tabs of the average utility of the consumers in the model.
They shop for the good(s) and travel back to a random spot in the waiting area once they have no more good they want to buy. If they decide not to buy anything at all, they just transfer to another blank spot in the waiting area.
At setup, a consumer is tagged with a good they like, and tagged with another good they dislike. Their preferences do not change for the duration of the simulation. If during the shopping spree for the day/tick the consumer's shopping basket does not include the good they like, they are inclined to desire for it, increasing their level of desire for the good by one, by a certain probability. For each tick, the consumers are inclined to hate the good they dislike, decreasing the level of desire for the good by one, by a certain probability.
After the shopping spree, a portion of the consumers discuss the goods which they like and dislike among the neighbors within a radius of influence. The influencer and the good they like turn green during this time if positive influence is being spread. On the other hand, the neighbor and the good they dislike turn red if negative influence is being spread. The neighbors within the radius of influence turn yellow. The neighbors then decide whether to take the word of the influencer, and have their desire for the discussed good be affected.
The model assumes that the consumers keep a certain level of budget primarily for this enterprise, but because of the desire threshold, it does not necessarily mean that the entire budget would be depleted for the goods shown in the model. It could be assumed however, that any left over budget per tick is used to buy other goods not presented in the model and so is not carried over to the next tick. This is in application of the Economic theory of Walras Law which states that the optimal choice of a bundle of goods is equal or less than the budget.
The enterprise showcases the best-seller as the good most bought in a certain period. The best-seller changes per period depending on which good sells the most during that time. The colors of the goods are scaled to reflect the number of times they became a best-seller: <strong> the darker shade of blue they are, the more times they have become a best-seller.</strong>
Notice the set of numbers separated by commas on each good. The first one is the number of consumers who like the good, the next is the number of consumers who dislike the good, and the last is the price set for the good. Note that the number of likes and dislikes per good does not affect decision making and is just shown for ease in analysis.
Similarly, a number is shown on top of each consumer. This shows the amount of money they can use to buy goods, and this diminishes for every purchase they make. This replenishes at the start of every tick.
## HOW TO USE IT
Click the SETUP button to set up the goods (boxes on the orange patches), and the consumers (tan people).
Click the GO button to start the simulation.
Click the RESET-TRANSACTIONS button to restart the simulation without changing the goods and consumers, as well as their properties from the previous setup like the price, budget, desire thresholds, likes, and dislikes.
The PRODUCTS slider controls how many goods are in the simulation. This can be set from from 2 to 30 (Note: Changes in the PRODUCTS slider does not take effect until the next SETUP)
The MAX-PRICE slider controls the possible prices tagged to the goods. The prices tagged would be between 50 and the MAX-PRICE, inclusive, at intervals of 5. (e.g. if set to 65, each of the goods are tagged randomly with one of the prices: 50, 55, 60 and 65). If you set the MAX-PRICE slider to 50, all the goods will be priced 50. The MAX-PRICE slider can be set from 50 to 1500 in increments of 5. (Note: Changes in the MAX-PRICE slider does not take effect until the next SETUP)
The CUSTOMERS slider controls how many consumers are in the simulation. The CUSTOMERS slider can be set from 1 to 300. (Note: Changes in the CUSTOMERS slider does not take effect until the next SETUP)
The MAX-BUDGET slider controls the possible budget values given to the consumers. The amount of budget would be between 50 and the MAX-BUDGET, inclusive, at intervals of 5. (e.g. if set to 65, each consumer is randomly assigned one of the values: 50, 55, 60 and 65, as their budget). If you set the MAX-BUDGET slider to 50, all the consumers will have a budget of 50. (Note: Changes in the MAX-BUDGET slider does not take effect until the next SETUP)
The INCLINATION-PROBABILITY slider controls the chances of a consumer's desires for their likes and dislikes to change intrinsically. It is the probability to have the level of desire for the good they like increase by one if they were not able to purchase it in the previous tick, as well as the probability to have the desire for the good they dislike decrease by one for every tick.
The MAX-DESIRE-TO-BUY-THRESHOLD slider controls the set of possible thresholds for each consumer to incline them to buy. (e.g. if set to 50, a consumer's threshold could be a value from 0 to 49). Their level of desire must exceed this value to qualify for a purchase. The MAX-DESIRE-TO-BUY-THRESHOLD slider can be set from 1 to 100 (Note: Changes in the MAX-DESIRE-TO-BUY-THRESHOLD slider does not take effect until the next SETUP)
The SHOW-DESIRES? switch makes the links (desires) between goods and consumers visible. (Note: Changes in the SHOW-DESIRES switch does not take effect until the next SETUP or RESET-TRANSACTIONS)'
The POSITIVE-INFLUENCERS slider controls the portion of the consumers that will spread good news about the goods they like. A different set of consumers are chosen per tick.
The NEGATIVE-INFLUENCERS slider controls the portion of the consumers that will spread bad news about the goods they dislike. A different set of consumers are chosen per tick.
The RADIUS-OF-INFLUENCE slider controls the size of the circle within which an influencer can spread news to other consumers regarding their preferences.
The BELIEF-PROBABILITY slider controls the probability that a consumer will believe an influencer once the former is within within the latter's radius of influence.
The PERIOD-IN-DAYS chooser controls how many days/ticks long an evaluation period for the best-seller is.
The SMOOTHING-WINDOW input takes in a number which would be the length of the span for the moving average in the average utility plot. This is for visualization of the utility property of the consumers in the model.
## THINGS TO NOTICE
With the varying parameters set in the model, would you expect a good to be hailed as a best-seller consistently through multiple periods of evaluation? If so, what are the properties evident for this good in the model? If not, what causes this variability such that no one good is consistently a best-seller?
Notice that the spread of information from one consumer to another is not through a network for this model. While creating a network is the more realistic approach in the spread of information, the version shown here returns properties for the best-seller that are quite appealing for Economic theories.
Despite not being a factor to answering the primary questions, a plot to show average utility is included. Notice how this is affected when you change the various parameters. Are the people getting too happy in this model? Or does it sustain over time?
## THINGS TO TRY
Included in the interface are three buttons (SCENARIO 1, SCENARIO 2, and SCENARIO 3) which lets you experiment on different levels of MAX-PRICE, while other parameters are held constant. The seed is set to 10 for these scenarios to maintain property values.
Click on a scenario to setup the model and press GO to start the simulation for each scenario.
For SCENARIO 1, the MAX-PRICE is set to 50. In this scenario we see that all goods are priced equally. Notice that the best-seller is unstable between GOOD 2 and GOOD 14. This is because the same number of people likes and dislikes them, and their price is equal each other.
For SCENARIO 2, we set the MAX-PRICE to 800, introducing a property that is different between GOOD 2 and GOOD 14. GOOD 14 becomes the best-seller for the most part since it is the cheaper choice of the two.
For SCENARIO 3, we set the MAX-PRICE to 1500. In this scenario, GOOD 2 and GOOD 14 have become too expensive for our population, and the best-seller came out to be GOOD 3.
A fourth scenario, SCENARIO 4, is included to help you experiment with the POSITIVE-INFLUENCERS. This has parameters similar to SCENARIO 3, but with the POSITIVE-INFLUENCERS slider set at 0.10. The choice for the best-seller is more variable for this scenario compared to the other 3, however, do note that if you ran this for a long time, GOOD 11 comes out to be the good that becomes the best-seller the most. Notice that GOOD 11 is much more expensive than GOOD 3, and GOOD 3 has more people liking it. What could be the reason for GOOD 11 rising as the best-seller often?
Try to experiment on the different parameters. You may use the RESET-TRANSACTIONS button to restart the simulation without changing the goods and consumers, as well as their properties from the previous setup like the price, budget, desire thresholds, likes, and dislikes. Ultimately, this is used to see how their position in the waiting area, the word-of-mouth variables, or their INCLINATION-PROBABILITY affects the outcome.
## EXTENDING THE MODEL
For the extension, the user may like to set the inclination to like and dislike goods different for each consumer. The usage of a network is also a property that could be introduced into the model.
Broadcast influence may be included as well--the enterprise sets out commercials for the goods that they have, or maybe just the best-seller from the previous period.
(back to the NetLogo User Community Models)