|
OR/MS Today - August 2004 Software Review Flexsim 2.6 Serious simulation tool offers many benefits for users in a manufacturing and materials-handling environment, including speed and 3-D graphics. By ManMohan S. Sodhi If presentation to decision-makers in a manufacturing and materials-handling environment is your ultimate goal as regards simulation, Flexsim Simulation Software 2.6 should be a serious consideration. It is a drag-and-drop-style graphical program for discrete-event simulation on the Microsoft Windows platform that uses 3-D graphics. The user drags and drops such objects as a source, a sink, processors and queues from a palette onto a grid and then clicks on these objects to enter or modify their properties. The 3-D environment is not just pleasing to the eye; you may also find it to be critical in many materials-handling situations. Although there are many similarly motivated software packages (see the survey by Swain [1] for instance), Flexsim has four benefits that make it stand out: (1) speed, (2) extensibility, (3) presentation and graphics, and (4) visual objects to collect and display statistics. It has an object orientation and uses C++ and OpenGL to get these benefits. You also get control; for instance, you can make the simulation run as fast or as slow as you want by controlling the ratio of simulated and actual time. These features come at a price. First, it requires Microsoft Visual C++ installed on your computer and uses this in the background (Visual C++ comes with Flexsim). When you start the program, you need to press the "compile" button. After you build a model, you need to compile the model before you run it (in the background, C++ code is generated). Second, you need a computer that is essentially a gaming machine with 32 MB NVidia or Diamond video cards and a 1.8 GHz clock speed at a minimum. Such hardware is hardly state-of-the-art for developers, but it may be less common for the general user who simply wants to run a model as opposed to create one. For such users, a model developer could create a Windows video file (.avi format) based on a computer run. There are also a couple of quirks that some may like and others may not. Instead of using a soft security key or licensing file, it relies on a "dongle" that goes into a USB port on your computer. The software does not start without this dongle except in "evaluation mode." This means extra security for the user as well, although I am always nervous about misplacing things. Third, part of the data entry is in fields embedded in sentences rather than the usual text boxes that people are used to. On the other hand, this has the benefit of being able to view the data as part of a sentence without needing "help." Containers are VisualTools objects that can contain part of a model and then hide or display these details. These allow you to see your model at a high level and then drill down to see details. For instance, you may have a supply chain model at one level, but by clicking on the VisualTool you can drill in to one of the plants. Although the graphics are manufacturing and materials-handling oriented, they can be modified by modifying or extending the properties of existing objects. Flexsim can handle resources and paths that are two major constituents of service industry models for, say, healthcare or banks. For instance, consultants or engineering groups may build their own specific libraries and proprietary 3-D graphics. Then there are the objects that move through your model: parts, pallets, assemblies, paper or containers. Most flow-items have processes performed on them or are carried through the model by material-handling resources. Flow-items are generated in the "source" object and can have, among other properties, an item-type or a label. Views are another modeling feature. Flexsim uses OpenGL technology and provides both an orthographic (from the top, Figure 4) and a perspective one (Figure 7) with the latter view being best for presentation or visual proofs. Finally, the software ExpertFit from Averill M. Law & Associates (www.averill-law.com) comes bundled with Flexsim 2.6, enabling the user to determine the best-fitting probability distribution for simulation results. 1. Start the software. Once the software loads, you should see the Flexsim menu and toolbars, Object library or palette (on the left) and model view windows (on the right) (Figure 1). Select the "Compile" option on the toolbar before getting started. 2. Drag and drop a Source from the Object Library into the Model View window (Figure 2). 3. Drag and drop a queue object, processor objects, three conveyor objects and a sink object (Figure 3). 4. Connect these objects so that the flow-items can flow from the source to the sink via the other objects. Press and hold the "A" key, then drag the mouse with the left button pressed from one object to another to connect them. (There are other types of connections that you enable by pressing keys other than "A".) 5. Provide parameters for each object. For instance, we need to assign the arrival rate of flow-item objects. Double click on the Source in the model to bring up its user-interface (Figure 5a). To set the Inter-Arrival time to normal (10,2) as stated in the model description, select the down arrow on the Inter-Arrival time pick list and select the correct option (Figure 5b). There is a large number of probability distributions available. Then hit the button on the right to obtain a window with parameters as part of the text. Change parameters to 10 and 2 for mean and standard deviation respectively (Figure 5c). Next, to change the capacity of the Queue to hold up to 25 flow-items, double-click on the Queue to gets its user interface and type 25 for "maximum content (Figure 5d)." (In this particular example, you also have to select the Flow tab to set the flow options for the Queue in this case the jobs are of different types and they go to different processors accordingly but I will skip this step in the interest of brevity.) Next, set the operation times to the Processors by clicking on one of these to get its user interface (Figure 5e). In the "Process Time" pick list, select the option for "Exponential Distribution." Then click the box next to this field and change parameters of the distribution (Figure 5f) as we did for the interarrival times for the Source. Repeat this process for the other 2 Processors. 6. Compile the model by hitting the "Compile" button at the bottom. Essentially the model is C++ and certain Flexsim macros that are compiled by invoking Visual C++ behind the scenes. "Reset" the model and then press "run" (Figure 6). You should see flow-items flowing through this system. 7. The model is currently in a top-down orthographic view. It usually is better to view the running model in a perspective view in 3-D. You can also rotate the X-Y-Z plane to get a better view. Close the orthographic window and open the perspective view by selecting the "Perspective" button on the toolbar on the top to get a 3-D view (Figure 7). 8. View statistics. Select the setting menu on the model view window and unselect the option to "Hide Names" (Figure 8). The default in the "Ortho" view is to show the names, and in the "Persp" view the default is to hide the names. Likewise, Flexsim should be quite useful in the business world. Anyone who works in demonstrating the source of such problems as bottlenecks in manufacturing along with proposed solutions will find it easier to make the case with Flexsim than with a lot of analysis and numbers buried in slides. However, it is a serious package, and users would be well-advised to take the workshops held by the vendor and possibly even use their consultants. Once a model is built, it can be distributed to others provided they have a low-cost version (free within the customer's company) of the software whose main purpose is running models using different parameters rather than creating new ones. Still, I do have minor reservations. First, I was not able to run some examples that crashed my Windows 2000 system possibly due to the video card (mine is different from the two listed and has much less video memory). The required cards are popular ones, but given how quickly video cards are evolving, it raises the possibility of some machines having cards incompatible with OpenGL and hence Flexsim. Second, with the serious C++ horsepower, I was initially hoping that I could use the software to create standalone executables to distribute to users, but that was not the case. According to the vendor, it is possible to create standalone executables because all the generated code and libraries are in C++, but they do not recommend it. Instead, a low-cost/free restricted version of the software is available to others to run your models a reasonable option. Finally, I do not like dongles or similar hardware keys even though I understand that these are the easiest way to prevent the copying of software. It should be possible to use license files tied to the specific machine instead. There are many software packages addressing many different needs. (See Swain 2003 for the sixth biennial survey of discrete-event simulation software.) A majority of these, like Flexsim, are graphical, allowing the user to drag and drop icons. Among these, Flexsim is industrial-quality software that is extensible and allows the use of very convincing 3-D objects. Moreover, it has objects for displaying statistics as the model is running. It is not a beginner package and would require serious users to learn some C++. Despite the investment in time and learning, consultants and engineering, design groups of large manufacturing concerns and even service companies such as hospitals will find their investment worthwhile.
References
Dr. ManMohan S. Sodhi is an associate professor (senior lecturer) at Cass Business School, City University, London, where he teaches supply chain management and quantitative methods to MSc and MBA students. His research interests are in supply chain management especially in pertinent risks. He is the software editor for OR/MS Today and can be reached at m.sodhi@city.ac.uk. OR/MS Today copyright © 2004 by the Institute for Operations Research and the Management Sciences. All rights reserved. Lionheart Publishing, Inc. 506 Roswell Rd., Suite 220, Marietta, GA 30060 USA Phone: 770-431-0867 | Fax: 770-432-6969 E-mail: lpi@lionhrtpub.com URL: http://www.lionhrtpub.com Web Site © Copyright 2004 by Lionheart Publishing, Inc. All rights reserved. |