Workflow Overview

This workflow develops very simple Dynamic Competition around a Commodity Market between two Competitors selling identical Products.

The workflow builds upon the earlier Building Blocks workflow BB-111 Commodity Static Competition. But the assumption of Static Competition, that a Competitor will not react to a change in the Market, is no longer held.

This workflow follows an action-reaction-reaction model. That is, each Competitor independently sets a Profit Maximizing Price (each assuming the other Competitor will maintain their existing Price). After the Competitors see the combined results, each again tries to independently set a new Profit Maximizing Price.

After many such rounds of Competition the Prices in the Market are expected to reach Marginal Costs. At that point, neither Competitor would be profitable.

See also (advanced users only): MO-111 Commodity Price War

This Building Blocks example assumes you have already downloaded the open-source KNIME analytics platform and installed the free Market Simulation (Community Edition) plugin. If not, start by returning to Getting Started.

Dynamic Commodity Market

This Commodity Market comprises of two Competitor each selling the exact same Product.

Dynamic competition occurs over many rounds of competitive action-and-reaction. Here, both Competitors simultaneously try to set their Profit Maximizing Price. Neither expects the other Competitor to be doing the same.

This competitive dynamic is repeated twice.

Product Generator

As before, the ‘Product Generator’ node creates two identical Products by aggregating the list of Product Features and the set of Feature Customer Distributions for each.

Product Array

The two Competitive Products (Spacely Sprockets and Cogswell Cogs), along with their WTP Customer Distributions, are now completely defined.

Optimize #1

Spacely Sprockets looks at the Demand Curve and sets their Profit Maximizing Price.

Set Price

Spacely Sprockets assumes that Cogswell Cogs will maintain their existing Prices.

Demand Curve

The Spacely Sprockets Demand Curve says that $105 is the Profit Maximizing Price.

Expected Results

Spacely Sprockets expects that by setting their Price to $105 they will win 4,540 Customers and make a Profit of $249,700.

Optimize #2

At the same time, Cogswell Cogs is also looking at their Demand Curve and setting their Profit Maximizing Price.

Set Price

Cogswell Cogs also assumes that Spacely Sprockets will maintain their existing Prices.

Demand Curve

As the Products are identical, the Cogswell Cogs Demand Curve also says that $105 is the Profit Maximizing Price.

Expected Results

Cogswell Cogs expects that by setting their Price to $105 they will win 4,540 Customers and make a Profit of $249,700.

Recreate Market

The new Market can be re-created by filtering out the new Prices for Spacely Sprockets and Cogswell Cogs.

New Price #1

The ‘Row Filter’ node can filter on the ‘Spacely Sprockets’ Product.

New Price #2

The second ‘Row Filter’ can similarly get the Price for the ‘Cogswell Cogs’ Product.

New Market

Concatenating the two filtered Product rows creates the new Product Array.

New Prices

Both Spacely Sprockets and Cogswell Cogs are now Priced at $105.

Optimize #3 / #4

The same dynamic repeats once more, with Spacely Sprockets and Cogswell Cogs both setting a new Profit Maximizing Price.

Set Price

Both Competitors again assume that the other will maintain their Price at the old $105. Note that the original WTP Matrix does not change as Willingness To Pay is not related to Price (it is Consumer Surplus that takes Price into account).

Expected Results

Both expect that the new Profit Maximizing Price of $102.25 they will win 4,767 Customers and make a Profit of $249,076 (down from the last round of expectations).

Final Market Conditions

Final Results

The results after two rounds of Dynamic Competition are bringing the Competitors closer to Price = Marginal Cost where Profitability would drop to $0.

Quantity & Profit

At a Price of $102.25, both Competitors get around 2,400 Customers and have a Profitability of about $125,000.