Calculates the Product purchased by each Customer based upon their Willingness To Pay (WTP). The node can be used to:
- Determine the Product preference of each Customer, as well as whether the Customer purchased the Product, the Customer’s first, second and last choice, and the Customer’s maximum and minimum Consumer Surplus of all Products in the Market; and
- Generate a Demand Curve for a selected Product by testing a range of Price sample points
The Profit Engine calculates the Product purchased by each Customer based upon their Willingness To Pay (WTP). Each Customer Distribution column in the input WTP Matrix represents the Willingness To Pay (WTP) for a Product. The rows represent each of the Virtual Customers making purchase decisions based upon their individual Willingness To Pay (WTP) for the Products in the Market.
The Profit Engine does not require configuration if a Demand Curve is not being generated. It assumes that each Product found in the ‘Input Product Array’ refers to a column in the WTP Matrix.
If the user sets the Profit Engine to generate a Demand Curve then additional configuration settings must be selected. In particular, the selected Product must have a value for Cost in the Product Input Array.
Generating a Demand Curve will require repeatedly running the model within Profit Engine, hence the Profit Engine will take much longer to complete. If the user selects 20 one-sided Price Sample Points for the Demand Curve then the Profit Engine will iterate 2n + 1 = 41 times in order to generate both sides of the Demand Curve.
#1 Simulate Market
The Input Product Array includes the set of Products that define the Market. Each row must have a unique Product name. If the same Product is sold by multiple Stores or at multiple Locations, then the Product name should include either the Store or Location as a unique qualifier.
Price is a required field as the Virtual Customers in the Market will be making purchase decisions based upon their residual Consumer Surplus. That is, their Willingness To Pay (WTP) minus the Price of the Product.
Cost is not a required field but should be included if Profit is to be calculated.
The Willingness To Pay (WTP) Customer Distribution matrix for each Product column in the Market by each Virtual Customer row. The total number of Virtual Available Customers is equal to the number of rows in the WTP Matrix.
The ‘Profit Engine’ node will predict how many Customers will purchase which Products based upon their Willingness To Pay (WTP) and the Price.
Unlike the ‘Simulate Market’ node, the ‘Profit Engine’ node cannot scale the Quantity sold to match the size of the actual, real-world Market.
Checking ‘Calculate Demand Curve’ will generate additional results but will slow the speed of calculation.
The Output Product Array includes a new predicted ‘Quantity’ column. The new ‘No Sale’ row summarizes the number of Customers who chose to make no purchase.
Unlike the ‘Simulate Market’ node, the ‘Profit Engine’ node does not calculate a ‘Quantity Error’ to compare the real-world Input Quantity with the predicted Output Quantity.
The Output WTP Matrix contains an additional ‘Purchase’ column with the name of the Product purchased by the Customer.
The ranked Customer Preferences are listed in the ‘First Choice’, ‘Second Choice’, … , ‘Last Choice’ columns.
The Consumer Surplus is calculated in the ‘Purchased Benefit’ column.
The relative Market Shares for each Product can be found in the node views. Right-click the node, then select ‘View: Market Share’.
#2 Demand Curve
Check the ‘Calculate Demand Curve’ box.
Select the Product for which a Demand Curve will be generated. The Product must have both a Price and Cost value in the ‘Input Product Array’. The other Products in the Market need only have Price values.
The number of Price Sample Points to test in order to generate one-side of the Demand Curve. Actual samples = 2n + 1.
The Output Demand Curve table is a small table with just the selected Demand Curve Product, along with the varying Price, Quantity sold, and Profit at each sample point.
The Demand Curve for the selected can be found in the node views. Right-click the node, then select ‘View: Demand Curve’.
#3 Optimize Product
Check to output the Optimized Price from the Demand Curve for the selected Product. The final ‘Output Product Array’ will be based upon the Profit Optimized Price.
Note that the ‘Calculate Demand Curve’ also needs to be checked.