Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
SHARE:
Useful ideas for maximizing the power of Microsoft Excel for Supply
Chain Analysis, Part II
This is the second post in a three-part series that describes how toperform desktop network
optimization, job scheduling and vehicle routing with nothing but Microsoft Excel.
Future posts will focus on forecasting and supply chain finance. We hope you find these topics
interesting and encourage you to reach out to Hugh with any questions.
Introduction
In my previous post, I talked about performing a desktop transportation/ network optimization.
This was an interesting class of problems that produced valuable information and insights
regarding the cost and service components of a distribution network. These problems require a
good bit of pre-work related to data gathering and analysis, but the worksheet setup is fairly
straightforward, perhaps even intuitive.
The job scheduling problem requires less pre-work, but the set-up is more complicated and less
intuitive. This makes it more difficult to explainat least in my mind. However, the benefits are
much more tangible. If organized properly, the solution methodology can be used several times
per day to schedule and re-schedule work. Further, analyzing the results will reveal the location
of bottlenecks and opportunities to streamline operations.
At the simplest level, the objective of these problems is straightforward: schedule production to
get as much work done as possible in the shortest amount of time. However, we will modify the
objective slightly to make the problem more realistic. Production orders will be organized such
that groups are completed at approximately the same time. Think of this as a way to have specific
production orders completed by a certain cut-off time or cut-off date.
To solve this problem, I leverage the idea that solving an optimization problem consists of two
distinct but connected parts: problem set-up and solution search.
Like my other post, Microsoft Excel will be the tool for problem set-up and solution search.
However, since this class of program does not lend itself to searches based on linear
programming techniques, we will once again use the Evolutionary Solver in Excel (released in
version 2010) to search for the solution.
leadership, some of the lines can process work faster than others. You know what these process
speeds are and would like to include this information when developing schedules. The company
you work for has national contracts and every day you ship completed work all over the United
States. Lately, business has been good but this has resulted in a few problems:
A crowding problem where work sits on the floor waiting for a truckload quantity to be
assembled so that a truck can be brought in and loaded.
Carriers complaining that their drivers have to wait too long for a load and are starting to charge
penalties for the delay.
The job information is simple: it consists of the number of units and a group. The job index (idx)
is just used to keep track of the job. The line information shows the rate it takes to process one
unit in seconds. Thus, line 1 can process 1 unit in 1 second and line 8 can process one unit in .75
seconds.
The completed table shows the SEQ number which determines the Line Number and the Line
Sequence of the job. The Excel formulae are provided below:
The Duration, in minutes, determines how long the job will take given its assignment to a
particular line. Since different lines have different processing speeds, the duration will vary based
on line assignment. Each job starts immediately after the previous job ends. Thus, the Start
Time for a particular job on a line is the cumulative time for all the previous jobs on that line.
This time is measured in elapsed time from a base of zero. The Finish Time is the sum of
the Start Time plus the Duration.
In each case,
measurement is the elapsed time between the first job and the last job. The smaller the elapsed
time the better.
This
represents over a 2000 minute improvement in aggregate waiting time and after the initial set up;
it took the solver less than three minutes to arrive at this answer.
The total time did not improve dramatically. This result is in line with expectations since the
work is the work. However, the total production time did not increase, meaning that as a
solution was generated for one problem, it also improved the other. At this point, it is worth
mentioning that using the Evolutionary Solver comes with some drawbacks. Indeed, it is
incredibly powerful, but as problem sizes get larger, the Evolutionary Solver has a harder and
harder time finding good answers. Also, since the solver is stochastic in nature, the same answer
will not be achieved on a subsequent run of the solver. The main reason for this is that the search
space for the Evolutionary Solver grows geometrically as jobs are added and the starting location
of the search can vary. Five jobs can be ordered 5! or 120 ways. 100 jobs can have 100! or
9.3E157. Thats a lot bigger than google (1E100). In fact, since there are 2.5E9 seconds in an
average lifetime and if we had a computer that could test 1E9 solutions every second, it would
still take more than 1E140 lifetimes to test all possible combinations. The galaxy would burn out
before that. With a search space that size it is worth wondering if there are better solutions and
how the problem can be formulated to reduce the size of the search space.
In this setup the problem has been changed from sequencing a single string of 75 numbers to
sequencing 10 strings of varying length. This is dramatically easier for the solver because
contained within the formulation is an assumption that Group 1 jobs will be scheduled before
Group 2 jobs and so on. This results in a better solution in a faster search time.
In addition, the overall production time decreased only slightly. Again showing that group
elapsed time could be reduced without increasing the total production time.
In this article you have learned how to set up a multi-line production sequencing problem in
Microsoft Excel and solve it using the Evolutionary Solver. These solutions are not always
available with ERP packages and need to be developed outside the system. Understanding how to
set up and solve these problems can boost productivity, reduce cost, and increase
competitiveness.
Good production scheduling is a foundational requirement for efficient operations and effective
asset utilization. Centric would like to help you make the most of your assets by developing new
approaches to solve these types of problems. For a discussion or consultation, please contact me.
In my next article, I will show you how to conduct DIY vehicle routing to minimize distance and
transportation expense.
Useful ideas for maximizing the power of Microsoft Excel for supply
chain analysis, Part I
This is the first post in a three-part series that describes how to perform desktop network
optimization, job scheduling and vehicle routing with nothing but Microsoft Excel.
Future posts will focus on forecasting and supply chain finance. We hope you find these topics
interesting and encourage you to reach out to Hugh with any questions.
Introduction
Performing a network analysis is one of the bread and butter tasks for a supply chain consultant.
Typically, it takes specialized software, weeks of working with the data going into to the
software, and another couple of weeks working with the data that comes out of the software.
The most valuable pieces of information this analysis yields are warehouse locations and
approximate transportation spend. However, it can also be extended to understand the classic cost
service tradeoff that results from the cost of placing and operating more warehouses closer to
customers and the service benefits they receive because of faster response times.
Given that warehousing and transportation typically accounts for 60 percent to 90 percent of
logistics cost, maintaining a solid understanding of the relationship between location and
transportation expense is always a valuable exercise.
The problem is that there is seldom the time or the budget to retain a consultancy to do even a
small network analysis. Instead, there may only be two weeks, between other duties, for an inhouse supply chain analyst to develop a directionally correct, 80 percent solution that could be
understood, vetted, and evaluated by a larger audience. This is really like asking if there is a way
to do this in Microsoft Excel.
Getting Started
As of Microsoft Office 2010, the answer is yes, this can be done in Microsoft Excel, because of
the inclusion of a new algorithm in the Solver: the Evolutionary Solver. Without going into too
much detail, this algorithm is excellent for finding solutions to non-smooth, non-continuous,
optimization problems. For those with experience using the Excel Solver, you know setting up a
problem is as much science as craft. This is no different. The data that is required to perform this
analysis is:
To calculate the distance between two points on the surface of the Earth, one can use the
spherical law of cosines or the Haversine formula. I prefer the spherical law of cosines for its
simplicity in Excel. It looks like:
All of this information is organized to perform the optimization. In Excel, this uses the Solver
Optimization tool. Beginning with three warehouses located in Harrisburg, PA, Dallas, TX and
Las Vegas, NV, the annual shipping cost is just over $24M with more than 13M miles shipped.
Running
the Optimization
The solver is set to re-locate all three warehouses. Activating the solver finds three new
warehouse locations that eliminate about 4.5M miles and more than $8M in cost. Warehouse 1 is
close to Richmond, KS; Warehouse 2 is close to Pikeville, KY; Warehouse 3 is close to Pueblo,
CO.
The activity profile shows the most improvement. Now, more than 60 percent of the shipments
are within 1.5 days of the customer (9,300 of the 15,341).
In addition,
the number of customers that have been moved into the 1.5 day or less delivery lead time window
have increased from 752 to 1513. The number of shipments that can be delivered in 1.5 days or
less grew from 4,195 to 9,300.
In order to set up the parameters to maximize 1.5 day delivery lead time, the locations change to:
Warehouse 1 is close to Marshall, NC; Warehouse 2 is close to Matheson, CO; Warehouse 3 is
close to Greentop, MO. The warehouses have moved 100 to 200 miles from their previous
locations. This has added overall cost and distance, but it is less than 3 percent to the network.
However, the activity table reveals that a few more customers (14) and more than 600 additional
shipments are within 1.5 days of deliveryand example of the classic tradeoff between service
and cost.
Locating four warehouses in the network and minimizing cost reduces the transportation expense
from the comparable three warehouse model by more than $2M.
In addition, the average delivery lead time is well below 1.5 days. The number of shipments that
can be delivered in 1.5 days or less has increased by more than 2,200 and the number of
customers served in 1.5 days or less has increased by 227.
The natural question at this point is, can this be improved? By setting the solver to maximize
the number of shipments that can be delivered n 1.5 days or less, a different set of locations are
generated. Warehouse 1 is close to Matheson, CO; Warehouse 2 is close to Lockesburg, AK;
warehouse 3 is close to Washington, IA; warehouse 4 is close to Flag Pond, TN.
Locating four warehouses in the network and maximizing the number of shipments that can be
delivered in 1.5 days or less reduces the transportation expense from the comparable three
warehouse model by more than $2M, but adds $300K to the lowest cost four warehouse solution.
In addition, the average delivery lead time is well below 1.5 days. The number of shipments that
can be delivered in 1.5 days or less has increased by 1,985 from the best three warehouse solution
and the number of customers served in 1.5 days or less has increased by 217.
Unfortunately, it seems that it would be difficult to reduce the average delivery time from two
days to one. However, by relocating the warehouses and adding one additional (bringing the total
to five), the average delivery lead time can be reduced to less than 1.5 days while saving several
million dollars.
Of course, adding warehouses to the network adds additional cost and the model must be
augmented to address this cost increase.
This represents a relatively straightforward way to conduct a network analysis. The supply chain
analyst should be comfortable providing fact-based answers to questions regarding the benefits of
warehouse location and number. There are other things that need to be considered, such as the
availability of warehouse space in the locations identified, the cost of operating a new warehouse
and the cost of moving warehouse operations from one location to another. These are all very
significant activities that impact the value proposition.
In my next article, I will show you how to develop a solution for job shop scheduling, another
difficult optimization problem that can be solved in Excel using the appropriate framework. Until
then, keep modeling.
Introduction
In the last two articles Ive shown ways to develop solutions for some of the classic supply chain
problems. These problems can be characterized as facility location problems and production
scheduling problems.
This entry will follow that pattern leveraging the traveling salesman problem as an example.
However, we will call this the vehicle routing problem (VRP) to make it a bit more supply chain.
Fortunately, regardless of how you refer to it, people will know what you are talking about
because this is one of those classic problems in supply chain and operations research.
The idea is to create the shortest, closed-loop route, visiting each customer only once and
returning to the starting point. Many companies must solve this problem daily, and there are
multiple software providers that offer software solutions. Parcel delivery companies like UPS
have elevated this to an art form and even sell their own software. Unfortunately, this software is
expensive to license, expensive to set up and install, and expensive to operate. Thus, a business
case must be carefully constructed to justify the expense.
Constructing this business case should include a comparison to a reasonable alternative that
produces a satisfactory solution within a satisfactory timeframe at a satisfactory price point. By
developing a solution in Excel, the price point is free (assuming it was already purchased), the
length of time is 10 minutes and the solutions, while typically not optimal, are very reasonable.
If you have read the other blog entries you can probably guess that we will be using Microsoft
Excel and the Evolutionary Solver with the AllDifferent constraint. As in the other two blog
entries, we will extend the problem to make it a bit more realistic. The extension will result in
the three shortest routes, served by a single depot so that all the routes start and end at the depot.
Further, the routes need not have the same number of stops, but with each stop taking 10 minutes
and averaging a driving speed of 40 mph, each route should be close to the same duration.
The angular allocation results in a setup that places the cities in a numerically increasing order:
Solver Setup
The solver set up for sequencing a single route is straightforward.
Following the same procedure but combining all three routes in the solver simultaneously yields:
The solver has done an adequate job of producing the routes, but there is room for improvement.
To improve the results, a second optimization can be performed on the individual routes. Using
Route 1 it is possible to re-sequence the stops and reduce the distance by 80 units, a 20%
reduction. The results look like this:
Early in first article mentioned that there was a way to group the stops to speed up and simplify
the solver routine. One way to perform this grouping is to divide the stops into sections. One of
the simplest ways to do this is through an angular sweep of the stops produced by dividing the
graph into equal 120 deg sections. The stops that fall into each section can then be optimized
using the techniques similar to the ones discussed here to obtain faster solutions that are much
closer to optimal.
Vehicle routing is a core competency for many companies and improvements result in improved
asset efficiency, reduced cost, and improved customer deliveries. Some companies have produced
closed-loop routes over time, but never reviewed them in any systematic way to insure they
remain efficient as routes of deliveries are added or deleted. In some cases, these routes have
been run for years without a review to determine if there are opportunities to consolidate or
reorganize routes.
We believe this is a huge opportunity to save money and miles and would like to review the way
your organization performs its routing. Please contact me to discuss ways that Centric can help
you review your routes and determine opportunities for improvement.
In host country
Transit
Instead of purchasing all 5,000 shovels offshore, purchase 80 percent (4,000) offshore and 2,000
from the NEO company, deferring distribution to the time of need.
The result is a better in-stock position as products are distributed just before the time of need (a
weather forecast) and a 10 percent increase in gross margin dollars. Other intangible benefits
include happier customers and an increase in associated sales such as ice-melt.