Roy Crosbie,
California State University, Chico
College of Engineering, Computer Science, and Technology,
Chico, CA 95929-0003,
E-mail: crosbie@csuchico.edu
Introduction.
Modeling and simulation (M&S) has been described as one of the key
enabling technologies of the 21st century. M&S has been
applied to a wide range of disciplines, including company operations. Supply
chain management (SCM) is one of the most important aspects of the operation
of modern companies and it is not surprising that M&S is being applied
increasingly to SCM problems. In this presentation we will seek the answers
to three questions. First: what is modeling and simulation; second what
is supply chain management; and third, how can modeling and simulation
help in solving supply chain management problems?
What is Modeling and Simulation?
Modeling is an essential process in understanding systems of all kinds. We continually study the behavior of systems by creating mental or conceptual models of them. For example, a model can consist of mathematical equations, procedural rules or graphical processes. The important point is that the model should describe the behavior of some aspect of the system in a precise way. Mathematical models are widely used, for example, in engineering. The dynamic, time-dependent changes in many engineering systems can be described using differential equations. Business systems are more likely to be based on queuing theory and discrete-event modeling. In a discrete-event model, the state of a system is assumed to remain unchanged with time until an event occurs that changes the state of the system.
Given a precisely defined model of a system, it is possible to produce computer programs that implement the model and allow the system to be simulated. Modeling and simulation (M&S) work hand-in-hand. The term "simulation" is normally used to describe the process of executing such a program with user-selected parameters and input data so as to simulate the system under prescribed conditions. John McLeod has defined simulation as "experimentation with models".
The first step, therefore, in the process of performing a computer simulation consists of developing a conceptual model that can adequately represent the behavior of the system. (Note that different models may be appropriate for different studies of the same system). This conceptual model must then be converted into a computer program that correctly solves its equations, or implements its rules or procedures. It must also be supplied with data in the form of coefficients, system constants, initial conditions etc. This can often be the most difficult aspect of producing a useful simulation.
The program can then be supplied with the specific parameter values and external inputs appropriate to the case of interest, and a simulation performed. The obvious question is, "How do we know that the outputs of the simulation program correctly represent the behavior of the real system?" The processes used to determine that the answer to this question is "Yes" are known as verification and validation, often abbreviated to V and V. Briefly, verification is the process of ensuring that the simulation program correctly represents the conceptual model. In other words, the simulation program is free from programming, data or logical errors. Validation is often more difficult. It is the process of ensuring that the conceptual model correctly represents the behavior of the real system. Given a verified simulation program, this is equivalent to determining that the simulation program correctly represents the behavior of the real system, since with a verified program, the equivalence of the program to the conceptual model has already been established.
Types of model Given the wide range of applications of M&S it is not surprising that several different types of model are used as the basis of simulation. Many of the differences between model types are based on the way time is handled in dynamic models. First, however, we should distinguish between steady state, or time-invariant, and dynamic, or time varying, models. Steady-state models occur in such applications as engineering field problems (partial differential equations in two or three space dimensions), process plant and power system load-flow simulation and stationary queuing systems. Dynamic models are, however, so common that the term simulation is often assumed to apply only to time-varying models, and the remainder of this presentation is confined to models of this type.
The most common distinction between dynamic models is drawn between so called continuous and discrete models. A continuous model is usually based on ordinary or partial differential equations with time as an independent variable. The state of the system is assumed to change in a continuous fashion so that at any particular instant in time the state of the system will be uniquely defined. A discrete model assumes that the state of the system changes only at specific times, often referred to as events, and that the state of the system is unchanged between these times. A digital electronic system is usually represented by a kind of discrete model. Most digital systems are synchronous and change state only at regular time intervals defined by a system clock. This leads to a kind of discrete model in which events are equally spaced in time and are predictable. This is a particularly simple kind of discrete system. More common are models in which the event times are determined by the state of the system at a particular time or by external randomly generated events, such as the arrival of a customer in a queue. In models of this type, the time-management process involves determining ahead of time when events are due to occur and maintaining an event queue. After processing an event, the model takes the next event from the event queue, advances the time clock to that time, and then processes the event, determining how the system state changes as a result of the event and updating the state, before moving to the next event. This is the approach often referred to as DEVS (Discrete EVent System Specification).
It is important to recognize that the foregoing descriptions refer to the models not to the systems themselves. It is not uncommon, even for those experienced in M&S, to refer to continuous systems and discrete systems. But it is the model of the system that is continuous or discrete. Although certain types of system are almost invariably simulated using a particular type of model, it is, in general, possible to use different types of model to simulate the same system. One could, for example, use a continuous electronic circuit-modeling program to represent the behavior of digital electronic systems. Road traffic can be simulated either using discrete event models or, particularly in the case of high-volume freeway traffic, traffic flow can be treated in the same way as fluid flow using a continuous model based on differential equations. This represents an extreme example of a process that is often used to simplify discrete models, aggregation. Aggregated models combine individual units together in groups and treat each group as a single entity rather than treating each individual vehicle, customer, part etc. as a separate entity.
There are other ways to distinguish different types of model. Real-time simulation is used when the simulation must be interfaced to real hardware or software, or to a human, such as occurs in flight simulators. In addition to operator training, real-time simulations can be used to test hardware or embedded software.
In recent years there has been increasing emphasis on distributed simulations in which simulation programs executing on different computing platforms interact with each other over a network. This can offer a convenient way of combining existing software to form more complex simulations. Because the emphasis in distributed simulation is often on the re-usability and interoperability of models, standards become important to ensure model compatibility. An IEEE Standard [1a,b,c] is currently in the final stages of approval for an approach to distributed simulation developed under the sponsorship of the Defense Modeling and Simulation Office (DMSO) of the US Department of Defense (DoD). This is known as the High Level Architecture or HLA.
Software Tools for M&S Over the years, simulation programs have been written in every conceivable programming language including assembly language, general-purpose high-level languages (HLLs) such as Fortran, Ada, Pascal, C and C++, and a variety of special-purpose simulation languages and packages. From the very early days of simulation, simulation languages have been available to facilitate the development of common types of model.
For example, continuous-system simulation languages (CSSLs) are used to simulate with continuous (differential equation) models. CSSLs relieve the programmer of much of the labor of developing a continuous simulation, allowing him or her to concentrate more on the details of he system to be simulated and less on the mechanics of the simulation process. Examples of CSSLs are ACSL (Advanced Continuous-System Simulation Language), ESL (European Simulation Language), DESIRE, MatLab/Simulink, and SIMPLE++. The same is true of discrete simulation languages (DSLs), which can be used to produce simulations using discrete models. Simscript, GPSS, Arena, Extend, Pro-Model and SLX are all examples of discrete simulation languages.
One of the problems with using CSSLs and DSLs is that they conform to
a particular worldview and the restrictions this imposes can render the
simulation language unsuitable for a particular application. As a result,
simulation languages and packages have been developed for specific applications,
such as SPICE for electrical circuits, Network for computer networks and
SimFactory for manufacturing plant. As we shall see, software is now becoming
available to facilitate the development of supply chain models.
What is Supply Chain Management?
M&S has been widely used to analyze and optimize business processes for many years. In the past few years much effort has been focused on supply chains and their management. Supply chains involve all aspects of the process of producing and supplying product to a customer, including the suppliers of basic materials and components; the manufacture of finished goods, customer ordering and order management, inventory control and transportation.
Supply chain management (SCM) has been defined as "a process-oriented approach to procuring, producing, and delivering products and services to customers. SCM has a broad scope that includes sub-suppliers, suppliers, internal operations, trade customers, retail customers, and end users. It covers the management of material, information, and funds flows."
This definition clearly delineates the wide scope of SCM and also draws attention to the importance of tracking material flow, information flow, and funds flow in creating SCM models.
SCM grew out of developments in logistics management. Interactions between warehousing and transportation were studied in the early 60s. The two functions were integrated to form physical distribution management, which yielded benefits in the shape of inventory reductions and shorter order response times through improvements in transportation and faster warehouse handling. Shortening the time for responding to orders also lessened the forecast period, which led to more accurate forecasting. These benefits of integrating the transportation and warehousing functions led to further efforts to integrate additional functions. This led to the integration of manufacturing, procurement, and order management. This logistics stage was further enhanced by improvements in communications and computer-based decision-support systems. The third stage has added suppliers and customers to produce the current developments in seven-process supply chains.
There is no lack of evidence that the effort that has gone into the study and analysis of supply chains has paid off handsomely. The literature is full of examples demonstrating the accomplishments of this field of study, such as [2]:
M&S Applications in SCM
Integrated supply chains are complex, dynamic systems and their behavior depends on the uncertainties of forecasting customer demand. They provide a natural application for M&S techniques. Perhaps the best way to present the scope of the interaction between M&S and SCM is to look at some particular case studies and applications using specific SCM simulation tools.
Because of the complexity and multi-faceted nature of SCM models, the preferred approach to developing simulation tools specifically for SCM systems has been to build upon existing discrete simulation languages, often with the addition of a conventional database system. This means that the SCM-specific software layer is confined to the user interface that describes the system under study in terms of SCM components and parameters. The simulation and data handling is performed respectively by the underlying simulation language and database system.
The IBM Supply Chain Analyzer was announced as an IBM product in June 1999, but it had been developed for internal use starting in 1993. It was first used to improve IBM’s own supply chain and this effort resulted in:
The IBM supply chain analyzer (SCA) is built upon SIMPROCESS, which is a product of CACI Products Company, developers of the SIMSCRIPT discrete simulation language. It runs on Windows NT platforms and provides modeling functions for seven different supply chain processes:
The SDI (Simulation Dynamics, Inc.) Industry Product Suite[4]contains five components for enterprise modeling. These are:
Compaq’s CSCAT Supply Chain Analysis Tool [5] is an internal product used by the Compaq Computer Corporation to manage its own supply chain. A CSCAT model is defined with 8 different structures:
The Compaq supply chain simulation generates results for Net Profit After Tax, Obsolescence, and Service Level. A number of scenarios are simulated, and each runs typically for 30 iterations. A range of results with 95% confidence limits is produced for each scenario, giving a field for both profit and risk associated with a particular scenario.
A different approach to creating SCM simulation software is that taken by [TC] ², the Tailored Clothing Technology Corporation (http://www.tc2.com) with its Sourcing Simulator [6]. This is an inexpensive ($750 for the fully featured version) PC-based tool that allows manufacturers and retailers to evaluate sourcing and replenishment strategies for seasonal and basic products at retail. It allows inputs to the simulation such as retail price, wholesale price, lead-time, product assortments, vendor reliability, forecast errors, consumer demand, markdowns and consumer reaction to the markdowns. Using alternative scenarios, the user can see the effects on financial, inventory and service level measures. Some examples of the outputs are: sales, lost sales, service level, in stock percent, gross margin, adjusted gross margin, inventory turns, and GMROI. It runs on Windows 95/98 and NT.
The work of Ziegler and collaborators in developing the Discrete Event
System Specification (DEVS) is well known. This fundamental approach defines
a sound formal modeling and simulation framework based on generic dynamic
systems concepts. Recent developments have studied design considerations
for a supply chain modeling and simulation environment that is capable
of executing in a parallel and distributed fashion [7]. This is based on
integrating the IBM Supply Chain Analyzer with a DEVS/CORBA (Common Object
Request Broker Architecture) run-time infrastructure (RTI). Two alternative
architectures are envisaged. One uses an existing DEVS/HLA (High-Level
Architecture) environment and provides the potential for distributed simulations
conforming to the HLA standards for interoperability. The alternative structure
replaces the HLA/RTI with a CORBA-based version.
Summary
The application of modeling and simulation to supply chain management systems is growing rapidly. It offers the prospect of critical increases in productivity and profitability for all kinds of corporations. Commercial products are beginning to emerge that are establishing impressive track records with a variety of customers in a range of industrial sectors. Most of these products are based on existing discrete event simulation languages and standard database products. It is likely that M&S products will continue to track the increasing demands as the scope of supply chain management systems continue to increase.
As with the development of continuous and discrete simulation languages
over the past 30 years, it is likely that in addition to powerful flexible
(and correspondingly expensive) software products capable of simulating
the supply chains of any kind of enterprise, there will also be a number
of special-purpose supply chain simulators focused more narrowly on a particular
sector of industry such as the Sourcing Simulator from by [TC] ².
References