The Price War node is designed to simulate how Competitors might dynamically respond to a changing competitive environment over multiple Rounds of Battle.
At the beginning of each Round of Battle, each Competitor will conduct Private Experiments by continuously changing the Price of a small set of Focus Products until a Maximization Goal is reached. Other Competitors cannot see these Private Experiments. The Maximization Goal can be to maximize Profit, Revenue, or Quantity Sold. While only the Competitor's selected 'Focus Products' will change Price, the Maximization Goal will be evaluated across all of the Competitor's Products. The Private Experiments always assume that the other Competitors in the Market maintain their existing Prices.
For example, a Retailer may wish to maximize Profitability across their entire Store by changing the Price of one or two Focus Products. The Retailer will first secretly conduct a series of Private Experiments by raising and lowering the Price of those selected Focus Products until the total Store Profit is maximized. The Retailer will then push these Maximizing Prices out to the rest of the Market with an Expected Result of increased Profits.
Unfortunately, each of the other Retailers in the Market are all following exactly the same methodology. Each Competitor secretly conducts their own Private Experiments, then all Competitors push out their Maximizing Prices to the rest of the Market at the same time. As a result, there will be a difference between the Expected Results of the Competitors and the Actual Results from the Market.
The Price War continues in this fashion for the number of 'Rounds of Battle' specified by the user. Competitors always following the same methodology and never anticipating that other Competitors might also change Prices.
A dynamic Price Equilibrium is often the outcome of the Price War node. For example, Competitors might drive Price down when the Expected Result is increased Profit, but will then increase Price after discovering the other Competitors have also set lower Prices. This orbiting chaotic decrease - increase - decrease - increase dynamic Price Equilibrium can carry on indefinitely.
But the Price War node can also be used to find a static Price Equilibrium across all Competitors. A static 'Price Equilibrium' is found after many Rounds of Battle when the allowed Price 'Adjustment Percentage' gets increasingly small. At this static equilibrium point, Competitors are generally as happy as can be expected given ever tightening Market dynamics - they neither wish to raise nor lower their Price.
To find a static 'Price Equilibrium' follow these steps:
(a) Set a high 'Starting Adjustment Percentage' of around 16%,
(b) Set a low 'Ending Adjustment Percentage' of around 0.25%,
(c) Set the 'Maximum Number of Tuning Adjustments' to '-1' (this is very important otherwise this static 'Price Equilibrium' methodology won't work),
(d) Set a high number of 'Rounds of Battle' of around 100 to give Competitors a chance to find their best Price points. As each Competitor makes just a single Private Experiment each Round, the algorithm should run reasonably quickly.
The Price War node can find the Price Equilibrium point even when Product Costs are changing dynamically. Dynamic Costs depend both upon how many Customers purchase the Product and which are the Customers who purchase. The average Cost To Make (CTM) a Product might decrease as the Quantity sold increases. Or Customers with a higher Cost To Serve (CTS) might start buying the Product if it starts getting very cheap. The Price Equilibrium point which maximizes Profitability takes into account these dynamically changing Costs.
You want to see the source code for this node? Click the following button and we’ll use our super-powers to find it for you.
To use this node in KNIME, install the extension Market Simulation nodes by Scientific Strategy for KNIME - Community Edition from the below update site following our NodePit Product and Node Installation Guide:
Do you have feedback, questions, comments about NodePit, want to support this platform, or want your own nodes or workflows listed here as well? Do you think, the search results could be improved or something is missing? Then please get in touch! Alternatively, you can send us an email to email@example.com, follow @NodePit on Twitter, or chat on Gitter!
Please note that this is only about NodePit. We do not provide general support for KNIME — please use the KNIME forums instead.