Result Description (Optimization - Markdown)

Once a model has been run, the Results step contains four tabs:

Impact

This tab displays comparisons between the values of the last historical period and the first forecasted one. There are seven portlets in the dashboard, described below.

The scope of the impact dashboard can be set using the user inputs in the left panel.

  • Overview portlet provides a summary of changes in the shelf prices using the optimized values.

  • Self Price Change portlet is a histogram showing how many prices increased or decreased.

  • Revenue Breakdown portlet outlines what are the levers that explain the revenue change.

  • Competition Positioning portlet is shown if the competition was defined. It displays the spread of the percentage difference of prices between the optimized shelf prices, by product and store for next period, and the competitor prices. It is useful to see how much the competition objectives set in the Configuration step could be reached by the Optimization Engine.

  • Stock portlet displays the evolution of the remaining stock.

  • Revenue and Margin portlet displays a historical chart, with a different color for the forecasted periods.

Details

The Details tab displays the results tables for the user to interact with. Different aggregations are provided: global, by product, by product and store, and by product, store, and period. The user inputs allow filtering of all the data provided in the tables.

Each table provides values for all the fields that are interesting at this level of granularity. The values provided are the last historical period and the earliest forecasted one, plus the delta between the next and the previous period. If needed, you can export these tables to Excel.

For the record:

  • previous period means the last historical period;

  • next period means the first forecasted period.

The forecasted waterfall for the next period is also displayed in this tab.

Specific Metric

Sales Push

In order to understand the dynamics on the sales side, there is a comparison with past periods in how much more the sales are requested to increase. Another metric “Sales Push Forecasted” shows how much the sales would increase following the model outputs.

So we get the following formula, adapted based on the stock target type:

So 100% of Sales Push Requested means an increase of sales of 100% (or doubling the sales) over the future period.

Glassbox

This tab’s target audience is Configuration Engineers, Business Analysts, and team members working on improving a new optimization model. The tab provides insights to understand how the Optimization Engine reached its final state. One needs to understand the main concepts of the Optimization Engine to benefit from this dashboard. Two interesting pages to help users are OE Glossary and Explainability (Glassbox).

There are three portlets about criteria satisfaction: Satisfaction, Satisfaction by Criteria Type, and Criteria Comparison. The whole goal of the Optimization Engine is to satisfy criteria. These charts enable the user to assess at a glance whether or not the engine was successful at it. Refer to https://pricefx.atlassian.net/wiki/spaces/ACCDEV/pages/4826497355 for more details.

Satisfaction pie chart

Drivers

This tab’s target audience is Configuration Engineers, Business Analysts, and team members working on improving a new optimization model. One needs to understand the main concepts of the Optimization Engine to benefit from this dashboard.

The user can select a value finder, knowing its dimensions coordinates. The chart displays information about the criteria in relationship with the selected value finder. The complete documentation is in Value Finder - Criterion Influence.

Evaluation

This tab simulates the evaluation logic that can be called from any other module. One row represents one visible element of the logic. The query that can be done from any other module of the partition is:

api.model("myModelName").evaluate( "query_results", [ product: "myProductId", period_start_date: "myDate", store: "myStore" ] )

Any of the second parameter keys are optional. The outputs depend on the provided keys. See the details.