500 likes | 517 Views
Simulation-based Scheduling and Control. Richard A. Wysk IE 551 – Computer Control in Manufacturing. System vs. Simulation Modeling. Purpose of Modeling Fidelity: Level of Detail Constraints Cost Time Skilled People. System. Simulation Model.
E N D
Simulation-based Scheduling and Control Richard A. Wysk IE 551 – Computer Control in Manufacturing
System vs. Simulation Modeling • Purpose of Modeling • Fidelity: Level of Detail • Constraints • Cost • Time • Skilled People System Simulation Model
Different Uses of Manufacturing Simulation Sales (cost/completion time prediction) Product Design (DFM) Process Planning Maintenance MRP (planning) Facility Planning Production Planning System Design & Analysis Production Scheduling Production Control
Factory Control - Observations Most Analysis is for Processing Resources Only Almost all Scheduling considers Processing Resource Constraints Only There is no Material Handling Planning
Different Uses vs. Associated Simulation Models • Chronological Uses of Simulation • More specific and detailed, and higher fidelity • More expensive and time-consuming to develop • Shorter horizon (from months to seconds) System Design & Analysis Production Scheduling Production Control
Traditional Usage of Simulation Before/after existence of a real system In general, no or little material handling detail -- time/cost constraints Results may not be always reliable when MHs are scarce resources Reference: Smith et al., 1999 Simulation for Design & Analysis System Design & Analysis Production Scheduling Production Control
Planning Manufacturing Systems • Conceptualization • Preliminary Modeling • Systems Analysis • Detailing
Conceptualization • Aggregate Visualization of System • No. of milling machines • No. of turning machines • ... • ... • Arrangement of Machines • Layout • Location
Preliminary Modeling Operations Routing Summaries
Machine Requirements Analysis M1 PM1 PM2 MH M2 Mn PMn
Traditional Simulation Nj -- no. of machines of type j Qj -- Queueing character for machine j Wj -- Wait in j Ti -- Throughput time for part type i
Simulation for Scheduling System Design & Analysis Production Control Production Scheduling • Traditionally after a real system has been designed (and typically built) • Used for schedule generation or schedule evaluation • Depending on systems, scheduling results vary: • Static Environments - Exact starting times and ending times • Static/Dynamic Environments - “work to” schedules (lists) • Dynamic Environments - scheduling strategies for each decision points • With MH: more expensive, but more accurate results • Without MH: easier to model, but difficult to implement schedules
System Design & Analysis Production Scheduling Production Control Simulation for Control • Traditionally after a real system has been designed (and typically built) • Used for schedule generation or schedule evaluation • Depending on systems, scheduling results vary: • Static Environments - Exact starting times and ending times • Static/Dynamic Environments - “work to” schedules (lists) • Dynamic Environments - scheduling strategies for each decision points • With MH: more expensive, but more accurate results • Without MH: easier to model, but difficult to implement schedules
MH devices • Material Handling (MH) • MH affects schedules • MH is addressed every other process • MH is frequently flexibility constraint
Task Task Number Name 1 Pick L 2 Put M1 3 Process 1 4 Pick M1 5 Put M2 6 Process 2 7 Pick M2 8 Put UL RapidCIM view to IllustrateControl Simulation Requirements 3 6 4 5 2 7 1 M1 M2 R 8 UL L
Some Observations about this Perspective • Generic -- applies to any system • Other application specifics • Parts • Number • Routing • Buffers (none in our system)
Deadlock Related References • General deadlock discussions • Wysk et al., 1994 • Cho et al., 1995 • Deadlock detection for simulation • Venkatesh et al., 1998
Johnson’s Algorithm (1954) • Optimal sequence: P1 - P3 - P4 - P2 • Is the schedule actually optimal in reality?
Traditional schedule v.s. Realistic schedule (blocking effects) 1 3 4 2 M1 1 3 4 2 M2 Make-span: 25 M1 Can not begin 4 until 3 moves 1 3 4 2 M2 1 3 4 2 + Material Handling Make-span: 29
Actual optimal sequence M1 1 3 4 2 M2 1 3 4 2 Optimum by Johnson’s algorithm Make-span: 29 M1 1 2 3 4 M2 1 2 3 4 Actual optimum Make-span: 28
Things to be considered for higher fidelity of scheduling • Deadlocking and blocking related issues must be considered • Material handling must be considered • Buffers (and buffer transport time) must be considered
Jackson’s Algorithm (1956) • Optimal sequence: • M1: P1 - P2 - P3 • M2: P3 - P4 - P1 • Is the schedule actually optimal in reality?
Schedule Implementation • If no buffers exist, it is impossible to implement the schedule as the optimum schedule by Jackson’s rule • Even if buffers exist, several better schedules may exist including the following schedule: • M1: P1 - P2 - P3 • M2: P1 - P3 - P4
Simulation specifics • Very detailed simulation models that emulate the steps of parts through the system must be developed. • Caution must be taken to insure that the model behaves properly. • The simulation allocates resources (planning) and sequences activities (scheduling).
Why Acquire (seize) together?To avoid deadlock • If we acquire robot and machine separately • the robot will be acquired by the P2 • a deadlock situation will occur • If we acquire robot and machine at the same time • the robot will not be acquired until M2 becomes free P2 (M1-M2) P1 (M1-M2) M2 M1 :part, being processed Legend: :part, done
Time advancement:Simulation for Real-time Control • if runs in fast mode • time delay is based on the expected processing time (typically a statistical distribution) • Move to the next event as quickly as possible • simulation time is based on the computer clock time • time delay is based on the performance of a physical task (subject to machining parameters) • task contains parameters: task_name, part_id, op_id • real-time system monitoring (animation) • Reference: Smith et al., 1994
Simulation can be used for control • Traditionally run simulation in fast mode • Can be coordinated to physical system via HLA or messaging
M1 M2 R UL L Production Control ViewPart Perspective Controller determines what to do next.
Simulation-based Scheduling:methodologies • Combinatorial approach -- intractable • AI/Search algorithms • Simulated annealing • Tabu-search • Genetic algorithm • Neural networks (Cho and Wysk, 1993) • Extended dispatching heuristics • None of these guarantees optimization
Simulation-based Scheduling:multi-pass simulation • Simulation • real-time simulation - task generator • fast simulation - schedule evaluator • Who does the schedule “generation” then? • Look ahead manager • Scheduling: come up with a good combination of control strategies for the decision points
Machine2 Machine1 Machine3 Robot Part flow AS/RS M2 1 M1 R M3 1 1 Blocking Attribute 1: allowed 0: not allowed 1 AS Example system and associated connectivity graph
M2 Blocking attributes are set to 1: must be blocked 1 1 Robots Index R 1 Stations Index AS 1 M1 2 M2 3 M3 4 M1 R M3 1 Due to limited space, these two arrows are expanded in this figure 1 AS part_enter@1_sb rm_asrs@1_sb rm@1_bk at_loc@1_kb at_loc@1_bs I I O I O return_ok@1_bs ....... pick_ns#1@1_br pick_ns#1@1_sb delete@1 I O I T mv_to_asrs@1_sb arrive@1_bk arrive_ok@1_kb loc_ok@1_bs I O I O ....... put_ok#1@1_bs clear_ok#1@1_rb put_ns#1@1_br put_ns#1@1_sb O I O I Generated Execution model -- based on the rules, but manual yet
part_enter@1_sb rm_asrs@1_sb pick_ns#1@1_sb 0 1 2 3 return@1_sb mv_to_mach@2_sb put#1@2_sb process@2_sb 4 5 6 7 pick#1@2_sb mv_to_mach@3_sb put#1@3_sb process@3_sb 8 9 10 11 pick#1@3_sb mv_to_mach@4_sb put#1@4_sb process@4_sb 12 13 14 15 pick#1@4_sb mv_to_asrs@1_sb put_ns#1@1_sb return#1@1_sb 16 17 18 19 MPSG Summary
MPSG Summary 0 part_enter_sb 1 remove_kardex_sb 2 pick_ns_sb 3 return_sb move_to_mach_sb 7 move_to_kardex_sb 6 put_sb 5 move_to_mach_sb 4 put_ns_sb process_sb pick_sb 8 return_sb 9
Physical facility Physical facility Formal modeling & Database Instantiation Manual generation Shop level executor Resource model Automatic generation (Connectivity graph & rules) Manual generation Simulation (task generator) Shop level executor Automatic generation A simple procedure Planner Simulation (task generator) Heuristic-based planning Multi-pass Simulation Search-based Scheduling Planner Scheduler Associated with system development Associated with system operation (a) Conventional Approach (b) Proposed Approach Traditional system development vs. Models automation approach
Traditional Simulation ApproachFor the manufacturing system System to be simulated Manual Acquisition Detailed specification Programming Simulation model
Automation Modeling Approach System to be simulated Domain Knowledge Extraction Rules Detailed specification Target Language Knowledge Construction Rules Simulation model
System Description (extraction) Natural Language Graphical Formalism Detailed Description Dialog Monitor User Resource Model Process Model Resource Model Execution Model
Information in Simulation • Static information • something like an experiment file • resource information, shop layout • Dynamic information • part arrival process • part flow and resource interaction • Statistics needed • resource utilization, throughput, etc
Database Scheduler ARENA: real-time (Shop floor controller) Task Input Queue Task Output Queue Big Executor (Shop Level) ABB140 Kardex Man MT ABB 2400 VF 0E SL 20 Puma Equipment Controllers Penn State Simulation-based SFCS
Simulation-based Scheduling Order Details Remote Procedure Call Look-ahead Manager ARENA: Real-time Operating policy "fastmode.bat" file Dynamic Link Library Database ARENA: fast-mode Visual Basic Application Process plans Rule 1 Simulation Rule n Simulation Statistical Analysis Best Rule Selection
Flow shop (m machines and m+1 robots) - non-synchronous control • If no buffers exist, then we must allow blocking happen • If buffers exist, there are three possible policies when blocking occurs: • Not picking up • Picking up and waiting until the next machine becomes available, • Picking up and moving it to the buffer • Associated blocking control attributes are 1, 0, and 2, respectively • We can specify above blocking control strategies • Refer to the simulation construction rules in the next page
Information in Process Plans • For each part type • ID, operation code, description, resource_ID, Robot_location, NC_file_name • Reference: Lee et al., 1994 • Implementation • database representation • PSL (Process specification language) • IDEF 3 (ICAM Definition language) • etc
Process Plan vs. Simulation • Simulation in simulation based control • Process plans reside externally • Simulation in design and analysis • Process plans reside within the simulation model • Possible to include the alternative routings within the model
Conclusion • Structure and information • Simulation model • Resource model • Execution model • Simulation model generation - resource model and execution model (+blocking attributes) • % to be generated • Depends on the types of system • Pretty much for nothing
References • Cho, H., T. K., Kumaran, and R. A. Wysk, 1995, ”Graph-theoretic deadlock detection and resolution for flexible manufacturing systems". IEEE Transactions on Robotics and Automation, Vol. 11, No. 3, pp. 413-421. • Cho, H., and R. A. Wysk, 1993, "A Robust Adaptive Scheduler for an intelligent Workstation Controller". International Journal of Production Research, Vol. 31, No. 4, pp. 771-789. • Drake, G.R., J.S. Smith, and B.A. Peters, 1995, "Simulation as a planning and scheduling tool for flexible manufacturing systems". Proceedings of the 1995 Winter Simulation Conference. pp. 805-812. • Ferreira, Joao C. and Wysk, R. A., “An investigation of the influence of alternative process plans on equipment control”, Journal of Manufacturing Systems, Vol. 19, No. 6, pp. 393 – 406, 2001. • Ferreira, J. C. E., Steele, J., Wysk, R. A., and Pasi, D. A., “A Schema for Flexible Equipment Control in Manufacturing Systems”, International Journal of Advanced Manufacturing Technology, Vol 18, 410 - 421. • Lee, S., R. Wysk, and J. Smith, 1994, “Process Planning Interface for a Shop Floor Control Architecture for Computer-integrated Manufacturing," International Journal of Production Research, Vol. 9, No. 9, pp. 2415 - 2435. • Smith, J. and S. Joshi., 1992, “Message-based Part State Graphs (MPSG): A Formal Model for Shop Control”, ASME Journal of Engineering for Industry, (In review). • Smith, J., B. Peters, and A. Srinivasan, 1999, “Job Shop scheduling considering material handling”, International Journal of Production Research, Vol. 37, No. 7, 1541-1560
References • Son, Young-Jun and Wysk, R. A., “Automatic simulation model generation for simulation-based, real-time control”, Computers in Industry, vol. 45, pp 291 - 308, 2001. • Steele, Jay W., Son, Young-Jun and Wysk, R. A., “Resource Modeling for Integration of the Manufacturing Enterprise”, Journal of Manufacturing Systems, Vol. 19, No. 6, pp 407 – 426, 2001. • Moreno-Lizaranzu, Manuel J., Wysk, Richard A., Hong, Joonki and Prabhu, Vittaldas V., “A Hybrid Shop Floor Control System For Food Manufacturing”, Transactions of IIE, Vol. 33, No. 3, 193 –2003, March 2001. • Hong, Joonki, Prabhu Vittal and Wysk, R. A., “Real-time Batch Sequencing using arrival time control algorithm”, International Journal of Production Research, Vol 39, No. 17, pp 3863 – 3880, 2001. • Ferreira, J. C. E. and Wysk, R. A., “On the efficiency of alternative process plans”, Journal of the Brazilian Society of Mechanical Sciences, Vol. XXIII, No. 3, pp 285 – 302, 2001. • Smith, J. S., Wysk, R. A., Sturrok, D. T., Ramaswamy, S. E., Smith, G. D., and S. B. Joshi., 1994, “Discrete Event Simulation for Shop Floor Control” Proceedings of the 1994 Winter Simulation Conference, pp. 962-969. • Son, Y., H. Rodríguez-Rivera, and R. Wysk, 1999, “A Multi-pass Simulation-based, Real-time Scheduling and Shop Floor Control System," (Accepted) Transactions, The quarterly Journal of the Society for Computer Simulation International.
References • Steele, J., S. Lee, C. Narayanan, and R. Wysk, 1999, “Resource Models for Modeling Product, Process and Production Requirements in Engineering Environments," submitted to International Journal of Production Research. • Venkatesh, S., J. S. Smith, B. Deuermeyer, and G. Curry, 1998, ”Deadlock detection for discrete event simulation: Multiple-unit seizes". IIE Transactions, Vol. 30 No. 3, pp. 201-216 • Wu, S.D. and R.A. Wysk, 1988, "Multi-pass expert control system - A control / scheduling structure for flexible manufacturing cells". Journal of Manufacturing Systems, Vol. 7 No. 2, pp. 107-120 • Wu, S.D. and R.A. Wysk, 1989, "An application of discrete-event simulation to on-line control and scheduling in flexible manufacturing". International Journal of Production Research, Vol. 27, No. 9, pp. 1603-1623. • Wysk, R.A., Peters, B.A., and J.S. Smith, 1995, “A Formal Process Planning Schema for Shop Floor Control” Engineering Design and Automation Journal, Vol. 1, No. 1, pp. 3-19 • Wysk, R. A., N. Yang, S. Joshi, 1994, "Resolution of deadlocks in flexible manufacturing systems: avoidance and recovering approaches". Journal of Manufacturing Systems, Vol. 13, No. 2, pp. 128-138.