Example O-1 - Optimum Newspaper Inventory

Examples provided here are purely for illustrating software features and functionality.

Example O-1 – Optimum Newspaper Inventory

Download Example File for Version 10 (*.rsgz10) or Version 9 (*.rsr9)

Problem Statement:

A newsboy can purchase newspapers at 15 cents each and sell them for 25 cents. The demand is normally distributed with a mean of 100 and a standard deviation of 25. The problem is to determine how many newspapers to buy, given that if he buys too many he will lose money on the ones he does not sell; while if he buys too few he will lose money by not having enough newspapers to sell.

The exact algebraic solution to this problem is given by:

1-P(Q)=Cost/Sell
=0.6
=93.67

Define the Resources

Define a model to describe the demand for newspapers, as shown below.

Define a variable to represent the number of papers that the newspaper boy buys. This variable will be varied during simulation to estimate the optimum quantity of papers.
Define a RENO static function to calculate the newspaper boy’s supply cost, which depends on the quantity of papers purchased.

Build the Flowchart

The picture shown next presents an overview of how the final flowchart will work.

To construct this flowchart, follow these steps:

Step 1: Use a standard block to determine the demand for newspapers. In this example, the block uses the RENO internal function called “rvm” to return a random value based on the Demand model.

Step 2: Use a conditional block to check whether the supply meets the demand, as shown next.

If the demand is less than or equal to quantity of papers on hand, then the number of papers sold is equal to the demand. The block uses the RENO internal function called “in” to pass the value from the previous block (Demand) to the “true” path.

If the demand is greater than the quantity of papers on hand, then the number of papers sold is equal to number of papers on hand. The block will then pass the Quantity variable to the “false” path.

Step 3: Use two standard blocks to calculate the amount of revenue from the true and false paths. In these blocks, “in” indicates that the output of the previous block will be inserted into the equation.

Step 4: Use a result storage block to calculate the average revenue from both paths.

Simulation

For this example, a single simulation run will provide a single answer; thus, multiple runs will be needed to arrive at an optimum solution. This can be done by performing a sensitivity analysis.

On the General Settings page of the RENO Simulation window, specify 5,000 simulations. Enter a seed of 1 for repeatability, as shown next.

On the Sensitivity Analysis page, specify to vary the quantity of newspapers. Start by exploring the area from 50 to 150, with an increment of 10.

Based on these settings, RENO will perform multiple runs of 5,000 simulations each, with Quantity valued at 50 in the first run, again with it valued at 60, again at 70, and so on until it has reached the maximum value of 150.

When the simulation completes, close the RENO Simulation window and then generate a plot by choosing Simulation > Simulation Plot or by clicking the Plot icon on the diagram’s control panel.

The following plot shows that the optimum value lies somewhere between 80 and 100.

To further refine the results, increase the number of simulations to 50,000 and focus on the region between 90 and 96, incrementing by 1. The following plot shows the result (with the plot scaling adjusted to Y = 0 to 8 and X = 80 to 110).

Multiple Analyses

In addition to the manual technique described above, RENO can perform multiple analyses designed to automatically determine the optimum quantity that will maximize revenue.

To do this, specify 2,000 simulations, and then vary Quantity by 60 to 120 with an increment of 12. On the Multiple Analysis page of the Simulation window, use the settings shown below:

Based on these settings, RENO will perform up to three analyses (or fewer if the results converge to within 0.0001 of each other before the three analyses are complete) to find the maximum value of the result storage block called “Average Revenue.”

Each analysis will consist of the number of runs determined in the Sensitivity Analysis page. In addition, the number of simulations will be increased by 2,000 in each subsequent analysis to further refine the results. We’ve also specified to use only integers with a minimum increment of 2 to ensure that only multiples of 2 are used as RENO narrows the value range of Quantity over multiple analyses.

The following plot shows that the optimum number of newspapers that the newsboy may purchase is 92 (with the plot scaling adjusted to Y = 0 to 8 and X = 50 to 125).