University of Arkansas – CSCE Department RFID Agent Middleware – Final Report – Spring 2007 Simulation featuring ARENA Chad Eskew Abstract The purpose of this project is to set the groundwork for future projects based on simulation. ARENA is used as a basis for simulation and its strengths are discussed. A simulation program is built in order to represent a RFID reader agent and used to show what capabilities ARENA has that make it ideal for situations where timing is an issue. ARENA is not the best simulation software for locating products on a service floor without use of its additional animation software. Problem The problem that is focused on is tracking of a hospital’s inventory. It would be nice for hospital staff to be able to bring up a program that could show based on a 2-D or 3-D diagram where exactly certain inventory items are. ARENA is a powerful simulation software suite used to simulate discrete-events, in the case of RFID our discrete events are tag reads. There is no such program that can track inventory in this way. A reader agent will need to be simulated in ARENA. This will be used to show ARENA’s strengths when it comes to supply chain simulation. Also to be discussed is how this agent can be used to create a situation where multiple readers can be used with one another to simulate a tracking system. If ARENA cannot be used to implement this then the problem changes to that of finding other simulation software packages that could be used. Those with GUIs are preferable but any that can diagram a floor plan, either 2-D or 3-D, will suffice. Objective The objective of this project is to discuss the ARENA software package, including strengths and how it is used. It will include a simulation of a RFID reader and a diagram of how readers could be used in tandem with an assembly line or supply chain situation. Then, there is a list of other open source software recommendation as well as those discussed by M. S. Seppanen and others[1]. Page 1 – May 9, 2007 Simulation featuring ARENA Design Background ARENA is a discrete-event simulation software environment. Dr. Dennis Pegden developed a simulation tool known as SIMAN in 1982 [1]. He created this simulation tool while teaching Industrial Engineering at Pennsylvania State University. SIMAN has been updated since then to allow new capabilities to take advantage of improvements in both hardware and software. Those early SIMAN models developed back in 1982 are remarkably still able to run on ARENA’s current software version. The developers have made sure that the software updates with time but still maintains that older simulation models can still run. There are two parts to SIMAN model development: flow logic and control data. Visio data structures can be used to model flow logic and Excel spreadsheets for control data. The process for getting ARENA for use academically is expensive. The current version of ARENA being currently shipped is ARENA 11.0. It must be purchased on a university purchase order and licensed to a professor. The current textbook can be purchased through McGraw-Hill either over the internet or over the phone; the textbook includes the academic version which has limitations. ARENA can only be used for research purposes only. For a single ARENA PE Educational copy it is $1,850 or for a 20 SeatLicense it is $3,000. The animation software is an additional $650, single, or $2,750 for the 20 Seat-License. Requirements Learn about ARENA simulator. Include how to get a copy of ARENA including cost and licensing. Build a model reader agent. Explain how ARENA relates to TagCentric. Give other examples of discrete-event simulators to research. High Level Design First, ARENA is based on flow logic. You can either import a flow logic chart designed in Visio or you can create one using the ARENA environment. ARENA is designed for queuing simulation, something arrives in the queue and a server distributes it and performs some action on it and then departs. The process simulation task is diagramed as follows: 1. Create a Simple Process Model. 3. Simulate the Model 2. Refine the Model. 4. Analyze Simulation Results. 2 5. Select the Best Alternative. Simulation featuring ARENA An ARENA simulation uses template panel modules. These modules include but are not limited to the following: Create module, used to bring entities into the simulation environment via some input file or arrival simulation; Process module, models service or a time delay in a process is taking place; Dispose module, where the entity leaves the simulation environment. Queues, entities, resources, and variables can all be stored in a spreadsheet but must be separated. Statistic Collection Tools includes counters, time persistent, output, frequency, and tallies which can be used in various post simulation calculations. Crystal Reports Statistic Output is where the statistics collected on a simulation are calculated and can be view after the simulation. Input types that are supported are Microsoft Excel, Microsoft Access, and ActiveX Data Objects Access Types. XML tags are also accepted as input. Tasks 1. Understand/gain background 2. Design 3. Implementation 4. Test 5. Demonstrate 6. Document Schedule Spring 2007 1. Understanding 2. Design 3. Implement 4. Test 5. Demonstrate 6. Document Risks The only thing tested is the reader agent. Anything else presented is only an idea of how it could be implemented. Further testing and research in this subject will be the only way to reduce this risk. Implementation The flow logic for a reader agent is very simple. First, you start with your arrival or source and put each into a queue. Then, by either using a single server, M/M/1, or a triple server, M/M/3, then you can push these read items through the simulation and output the desired results. The flow logic for a reader agent is as follows: 3 Simulation featuring ARENA Arrival/Source Queue Server Departure The server is where the process takes place and the departure is when we output our results to a spreadsheet. My theorized design for a multiple level reader process includes the reader design chained together where the output of one is the input of another process; this is theorized because I am not certain whether or not it is possible for a spreadsheet to serve as both an input and an output. I tried to contact and meet with an expert on this and did not have sufficient time for testing. Results and Analysis ARENA is a powerful software simulation product. However, it is too reliant on timing for it to be of any use in the hospital inventory location problem. It is my thought that one could solve the problem using Java to create a GUI that can use 2-D mapping and sections to code a program such that it searches through tag reads and finds the last read for each item based on a day-by-day basis that is maintained over long periods of time. For instance, if something is not read at all that day it still has a read at the beginning of the day that records its last read and subsequent changes based on reads throughout the day. What should be left for the next day is a list of all current inventory items, with unique IDs for each item, and its last known read/location. This can then be used to map the hospital using floor plans. Conclusions ARENA relates to TagCentric through the spreadsheet data gathered by a reader. This data can be used as input into ARENA to power a simulation process. The output that ARENA creates can then be used to evaluate a given process and that subsequent data can be used to determine how one can improve on the current process. Data can then be reread and enter and then reevaluated by the ARENA software many times until a desired conclusion is the result. Future Work I would like to see more in depth work on this subject. I highly recommend that this be either a big team project either in SDC/Capstone or Middleware. Simulation software packages are so deep and complicated that it will take some time for one to be able to use this correctly. Models can be designed but as the simulation becomes more complex the harder and longer the debugging and remodeling can take, may even be exponential increase in time. Also, a recommendation would be for one to take a simulation class offered by the Industrial Engineering department and taught by Dr. Rossetti. Seppanen and others suggested that those seeking ARENA simulation capabilities should also look at ProModel, Witness, AutoMod, and Flexsim as their capabilities are similar to ARENA’s [1]. I also searched on SourceForge.net and found that the following open source simulators might be worth studying and why they might be worth it: OMNeT++, Java based but not downloaded often; SimPy Simulation Package, 4 Simulation featuring ARENA downloaded a lot and works on both Windows and Linux; Fungus Agent Simulator, simulation by multi-agents; SimTool, Java based and XML based script languages. Deliverables ARENA Reader Simulation – Built to show how data can be read by a reader agent and used to power a simulation process using ARENA. Final Report – Show my results and includes background information, price and licensing information, conclusion that shows how ARENA relates to TagCentric, and some suggestion on future work. Key Personnel Chad Eskew – Eskew is a senior Computer Science student at the University of Arkansas. He was a summer intern at Wal-Mart ISD in the summer of 2003. He worked at Sam’s Furniture and was a technical assistant for their database system. He plans on graduating with a B.S. and has a job at Hewlett Packard in Houston, TX. References [1] M. S. Seppanen, S. Kumar, C. Chandra , Process Analysis and Improvement: Tools and Techniques, McGraw-Hill, 2005. [2] ARENA Simulation, Rockwell Automation – ARENA Simulation Software, www.arenasimulation.com, Rockwell Automation, 2007. 5