IBM Watson – An Automated Supply Chain Scenario

This articleby James Miller, the author of IBM Watson Projects, describes a use case project that will focus on analyzing how effective a supply chain is for a retail department store. This automated supply chain scenario will look to provide insights into an organization’s supply chain data and processes, in an attempt to isolate the cause of poor delivery performance.

Problem definition

For this article’s use case, let’s pretend there is an organization named Folly Surf located in South Carolina in the US, which distributes surfboards. Their supply chain group is responsible for the following:

  • Procurement of the fundamental components of the product (the various types of surfboards)

  • Assembly (which includes a process known as shaping)

  • Delivery to the customers, who in this case are various independent surf shops who have placed orders for the boards

In the years since its inception, born in some surfer’s garage, the company’s product has grown in popularity, driven by both the surfer’s reputation and a high level of satisfaction (the board performs as advertised). This has increased demand beyond the company’s ability to provide the product and is threatening not only short-term profitability but the company’s future plans to expand its store locations.

Various efforts to improve operational efficiencies have had undesirable results.

For example, when deliveries are all on time, overall product quality has suffered, resulting in unhappy consumers and returns. When it is ensured that quality levels are met or exceeded, deliveries have been late, again resulting in unhappy customers and lost sales. Finally, when assembly teams are expanded, ensuring quality as well as the ability to deliver on time, the assembly team runs out of materials and parts.

Before things get too far out of control or beyond a repairable situation, the Folly Surf group is interested in seeing what insights can be identified with their data and Watson Analytics.

Getting started

Surfboard construction starts with a dense foam core and stringer, which is then covered with several layers of an epoxy resin, fiberglass, paint, and then finished with a high-gloss protective layer. Assembly also includes attaching one or more fins.

So, the following list of materials defines the our supply chain:

  • Foam core
  • Stringer
  • Resin
  • Fiberglass
  • Paint
  • Protective treatment
  • Fins and fin assembly

The materials listed here are shipped by a number of suppliers to one of the two assembly facilities where the boards are fashioned and then sent to a warehouse where they are inventoried until ordered. Once an order is placed by the surf shop, the boards are picked, packed, and shipped, and voila! – We have a supply chain that describes the chain management:

ibmwatson

Although supply chain management has multiple objectives, this article focuses on one of the most fundamental objective: achieving efficient fulfillment. Efficient fulfillment is (perhaps loosely) described as making inventory readily available to the customer to fulfill demand.

However, readily available must also be accompanied by the most efficient use of cross-chain resources, maintaining minimal inventory levels, ensuring little or no waste, and permitting the lowest costs overall.

The next section explores the data from our imaginary surfboard scenario.

Gathering and reviewing data

Supply chain data is not singular in source, in that it is composed of a variety of informational data points and collections such as accounts payable, accounts receivable, manufacturing data, cost of goods sold, various vendor records, and so on.

Let’s say that this data has been compiled using numerous methods and means, and has been provided in the form of a file of supply chain data for analysis.

However, you don’t have a field-by-field description of the data; you only have a file of supply chain data, and you haven’t been offered any further details as to what specifically is in the data file. What to do?

Watson Analytics offers a really good exploration feature, so just go ahead and perform the steps to load the data.

Building the Watson project

Now, let’s see how to build this project. 

Loading your data

  1. In practice, the most common file exchange format is either an Excel file or a comma-separated (CSV) text file, and Watson Analytics is happy with both formats, as long as you understand that Watson wants lists of data, not formatted report files (files containing nested rows or column headings, or total and subtotal rows).
  2. In addition, there are different file size limits for each edition of Watson Analytics:ibmwatson2
  1. Additionally, when you upload (or add) a dataset in Excel worksheet form, Watson Analytics may ask you to provide additional details about your data file. For example, if a Microsoft Excel file contains several worksheets, you are prompted to select one worksheet to add; you might also be prompted to select a row to use as the column headings.

Reviewing the data

Datasets loaded into Watson Analytics are sometimes referred to as assets. The supply chain asset (a CSV file named SuperSupplyChain.csv) is now loaded and ready for review:

ibmwatson3

As you can see, Watson Analytics has already created the SuperSupplyChain panel.It starts the review by giving a data quality rating of (only) 67 percent. In Watson Analytics, you can start with an Explore.

Explore creates powerful visualizations on your data to help you discover patterns and relationships that may impact your business, find new insights, or help you identify new questions that you can ask of your data.

Click on the Explore image in the upper left of the Welcome page (as shown in the following screenshot):

ibmwatson4

After clicking Explore, you can locate and select your SuperSupplyChain file:

ibmwatson5

At this point, Watson Analytics explores your data and presents its findings as a page of entry points or prompts:

ibmwatson6

For example, Watson prompts What are the values of FullfillmentTime for each Month(CustomerDeliveryDate)?:

ibmwatson7

To see the answer to that question (or the results of running a query to retrieve these values), you can just click on the question; Watson runs the query for you and presents the results in an awesome visualization:

ibmwatson8

It appears that it takes longer on average to fulfill an order placed in December or November, which may make sense if you consider the fact that these months are known for holiday gifting.

You can clearly see the Watson Analytics added value here. Watson automates the process of having to do the following:

  1. Think of a question (query)
  2. Formulate a query based upon the question
  3. Execute the query
  4. Review resultant data
  5. Think of an appropriate visualization type
  6. Create the visualization using the query’s result
  7. Draw a conclusion

Although it is helpful for Watson to provide this insight, the conclusion that holiday months have longer fulfillment times seems common sense. How about some more exploring?Consider the theorythat the cause for the bottleneck in fulfillment is the assembly plants. To confirm this using Watson, you can create a new page by clicking on New:

ibmwatson9

You can enter a new question for Watson Analytics in several ways:

  • On the Welcome page, click a dataset and enter a question
  • On the Welcome page, click Explore, select a dataset, and enter a question
  • On the Welcome page, click Add, tap Exploration, select a dataset, and enter a question
  • In Explore, click New and enter a question

Next, back at the prompt page, you can enter your own question (or answer to the question: What do you want to explore next?) into the search bar:

doesassemblyid impact fullfillmenttime?

Notice that as you type, Watson auto fills the column names from the file and quickly generates a new list of exploration prompts related to the question (Watson Analytics matches the words you type in your question to the column headings in your dataset):

ibmwatson10

Right in the top left, there’s a Very relevant prompt: How do the values of FullfillmentTime compare byAssemblyID. Since FullfillmentTime is the performance statistic we’d want to improve on, and we have a notion that one or other assembly plants may be a problem, this prompt does seem relevant. Again, you can drill into the topic by clicking on it:

ibmwatson11

From this visualization, it appears that the assembly plants both impact fulfillment times pretty equally (or at least I don’t see a material difference between the two).

For the sake of brevity, I will tell you that exploring suppliers yielded a similar conclusion, as well as products. So, if the different suppliers, assemblers, or products do not uniquely impact fulfillment times, what does?

Well, it’s not too much of a stretch to consider that instead of comparing the performance of the different suppliers or the performance of the different assemblers, perhaps we should see if there is any disparity between the time it takes for materials to arrive from suppliers (to the assembly plants) and the time it takes for the assembled product to arrive from the assemblers (to the warehouse):

ibmwatson12

So, we might think of this question as follows: is there a difference between the time it takes for a supplier to ship materials to an assembly plant and the time it takes for an assembly plant to ship the assembled product to the warehouse? Thinking in Watson terms, since we have columns of data that contain these totals, we might type our query as follows:

how does daysfromsuppliertoassembly compare to daysfromassemblytowarehouse

The following screenshot shows the entered question:

ibmwatson13

From there, Watson Analytics gives us the following (Very relevant) prompt:

ibmwatson13

And if you drill into this prompt, Watson Analytics provides the following visualization:

ibmwatson15

After reviewing this visualization, we might conclude that the time required to ship materials from any supplier to either assembly plant can be (perhaps materially) longer than the time that required to ship the assembled product to the warehouse. But is this the case? Do all suppliers perform equally? Perhaps Watson can answer this.

Suppose we start by posing the question What is the value of DaysFromSupplierToAssembly? Watson Analytics produces the following (not very interesting) visualization:

ibmwatson16

Again, not a very interesting graphic, but if we click on + Add a column (under Columns Bars, shown here), we can improve our visualization:

ibmwatson17

At this point, Watson Analytics provides a list of the columns in our data file. We are concerned at this point with suppliers, and that column is not listed, so I can type the column name and search for it:

ibmwatson18

Once the column name SupplierID comes up, you can click on it to select it and have Watson Analytics add thatcolumn name to the visualization. Now, the graphic is much more interesting:

ibmwatson19

From this visualization, we may understand that supplier number 1 is typically slower in fulfilling its orders than supplier 2 and supplier 3. So, now we have become aware that the number of days it takes to fulfill a customer’s order (or the number of days the customer has to wait for the surfboard they ordered) is often affected by waiting for materials to be sent by suppliers to the assembly plants, not the time it takes to assemble the product, and there is a particular supplier that appears to have the most delays. Now, we have an actionable insight into improving supply chain performance.

As you can see, while you are performing data explorations, Watson Analytics helps you uncover not only answers in your data (which lead to making better decisions) but perhaps even more questions. Watson’s ability to quickly provide powerful visualizations is the key to recognizing patterns within the data you are exploring. Watson allows you to refine each of the visualizations in different ways and as you do so, Watson Analytics updates the graphic to relate to the new context that you are examining.

Once you become comfortable that you have gained an important insight through a particular visualization, you’ll probably want to share it later. You can set aside interesting or important visualizations created from Explore. You can then add the visualizations to the dashboards and stories that you create in Assemble (which we will cover in the Sharing section later in this chapter).

Visualizations saved from Explore remain interactive when you add them to a dashboard or story. You can also change the data that’s displayed in the visualization in Assemble in the same ways that you edit it in Explore.

To save a visualization, simply click on the Collection icon (as shown here) to add the visualization to the collection:

ibmwatson20

Creating a prediction

Obtaining analytical insights from data with Watson Analytics is accomplished with the Predict feature. The steps for creating a prediction are simple. These steps are referred to as a Prediction Workflow. This workflow is outlined in the Watson documentation and is worth reviewing here (at a higher level, perhaps):

  1. Add data.

  2. Click on Prediction.

  3. Select (up to five) target fields that you want to predict. A target is a variable from your dataset that you want to understand. The target field’s outcomes are influenced by other fields in the data.

  1. Click Create. Watson Analytics then automatically analyzes the data as it creates the prediction.

  2. When the analysis is completed, view the results. On the Top Predictors page, you can select a predictor that is interesting and open its visualization.

  3. On the Main Insight page (for the predictor that you chose in step 5), you can examine the top insights that were derived from the analysis.

  4. Go to the Details page to drill into the details for the individual fields and interactions.

Supply chain prediction

Now that we have explored our supply chain data and identified an insight that we think is worthwhile, let’s go ahead and use the data to create a Watson Analytics prediction, like so:

  1. From the Welcome page, click on Predict:

ibmwatson21png

  1. Choose the file:

ibmwatson22png

  1. On the Create a new analysis page (shown next), provide a name for our prediction, select the column named FullfillmentTime as our target, and then click Create:

ibmwatson23png

Watson Analytics creates our prediction for us:

ibmwatson24png

Predictors

It’s important to first settle on a definition for a predictor. Generally, the following is accepted.

A predictor variable is a variable that can be used to predict the value of another variable (as in statistical regression)

http://www.thefreedictionary.com/predictor+variable

When you open a prediction, the Top Predictors page appears. The spiral visualization you see shows you the top key drivers or predictors (in color, with other predictors in gray). The closer the predictor is to the center of the spiral, the stronger that predictor is.

There is a visualization generated for each key predictor, giving you information about what drives each behavior and outcome. If you click on one of the predictors (or hover over it), you can see some details about it. Each predictor has a corresponding snapshot visualization that contains information about the predictor and how it affects the target. The color of the circle in the spiral visualization is also found in the corresponding detailed visualization.

In our prediction, the blue circle in the spiral visualization for the DaysFromSupplierToAssembly predictor is included in the corresponding detailed visualization for DaysFromSupplierToAssembly (shown here) and if you click on the visualization, you can see it in more detail on the Main Insight page:

ibmwatson25png

Once Watson has created a prediction, you are not locked in to what you specified on the Create a New Analysispage. You can dive deeper using the prediction scenario selector (shown here) to specify how many fields you want to view that act as predictors for your target. In our prediction, what might we combine with DaysFromSupplierToAssembly to be a more exact predictor of fulfillment time?

ibmwatson26png

If you select Two Fields, you see a new set of visualizations and see how those two variables influence the target. If you select Combination, the visualizations provide a deeper and more predictive analysis, displaying how a combination of the variables influences the target.

Main insights

The results of predictions in Watson Analytics are presented as a combination of both visual and text insights. Text insights describe the results of the Watson Analytics analysis. Visual insights are visualizations that support the text insights. All of the insights are prearranged into insight sets to make them easier to digest.

In our supply chain prediction, we started with a presupposition that the cause of increasingly longer order delivery times was due to a problem at the assembly plants. After creating an exploration, we saw first that delivery times increased during November and December, but that was expected, due to higher order volumes. Next, we compared the performance of each assembly plant and found that they performed pretty much the same. From there, we checked for different performance levels of each supplier and also explored products, to see whether a specific product required additional lead time.

Finally, we found that there is a difference between the time it takes to ship materials from suppliers to the assembly plants and the time required to ship assembled product from the assembly plants to the warehouse.

With this awareness in mind, we then created a Watson Analytics prediction using the FullfillmentTime column as the target. In the following section, we will examine how to save and share the results in more detail.

If you enjoyed reading this article and want to learn more about IBM Watson, you can explore IBM Watson Projects. Featuring a unique, learn-as-you-do approach with eight exciting projects that put AI into practice for optimal business performance, the book is a must-read for data scientists, AI, NLP and ML engineers, and data analysts.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s