You are on page 1of 10

S.P. JAIN INSTITUTE OF MANAGEMENT & RESEARCHS.P.

JAIN INSTITUTE OF MANAGEMENT & RESEARCH

Operations SchedulingOperations Scheduling


A Brief DiscussionA Brief Discussion
Academic Group 17Academic Group 17 9/17/20119/17/2011

Operations Scheduling 2011

This paper introduces you to the basic concepts of operations-scheduling. We will discuss few dynamic scheduling algorithms and introduce you to a unique bottle neck scheduling algorithm commonly used in the semiconductor industry. We would wrap our discussion with an interesting example of the video download servicesion with an interesting example of the video download serviceThis paper introduces you to the basic concepts of operations-scheduling. We will discuss few dynamic scheduling algorithms and introduce you to a unique bottle neck scheduling algorithm commonly used in the semiconductor industry. We would wrap our discus

Operations Scheduling 2011 Scheduling A Brief Introduction


Scheduling is an allocation decision. It establishes the timing and the use of resources within an organization. In the decision making hierarchy, scheduling is usually the final step in the transformation process. It occurs just before the output stage. How it all started Scheduling is not a new concept. Sun Tzu (ancient Chinese military strategist) wrote about scheduling and strategy 5000 years ago from a military perspective. The various historical monuments like pyramids, transcontinental railways etc. could not have been built without some form of scheduling. However there is limited evidence of any formal process regarding scheduling before 20th century. In 1917, Henry Gantt introduced his famous Gantt chart. It was used as a production control chart. The early charts were a static representation of the schedule. This was perhaps the inception of scheduling. Scheduling The Present Today scheduling is everywhere. From a hospital to a factory, scheduling plays a critical role. A manager in a hospital would typically like to schedule the usage of operating room, patient admission, security and many other facets. Planning the timetable and schedule of the instructors is an excellent example of scheduling in University. In the manufacturing industry, scheduling is present while planning the production of goods, purchase of raw materials and deciding on the number of workers. Scheduling techniques are found across various process types including both services and manufacturing. Front office has more customer interaction, customization and complex scheduling process while back office has low customer interaction, standardization and uses more line work flows. There is an increased demand for effective scheduling. The increasing popularity of JIT and lean manufacturing has contributed greatly to this demand of effective scheduling. Implications of Scheduling The immediate implications of scheduling are as follows: 1) Lower Costs: Scheduling allows companies to use their assets effectively and create greater capacity / value per dollar invested. This helps in lowering costs. 2) Customer Service: This added capacity and relative flexibility provides for better service delivery and therefore better customer service. 3) Dependable Delivery: Good scheduling is a competitive advantage that provides dependable delivery.

Operations Scheduling 2011


Scheduling occurs at different level. The different activities under capacity planning, aggregate scheduling, master scheduling and the short term scheduling is given below.

Capacity Planning [ Long Term] 1) Facility Size 2) Equipment Procurement

Aggregate Scheduling [ Intermediate]


1) Facility Utilization 2) Personnel needs 3) Subcontracting

Master Schedule [ Intermediate] 1) Disaggregation of master plan 2) MRP

Short Term Schedule [Intermediate] 1) Work Centre Loading 2) Job Sequencing

For our discussion today, we would be concentrating only on the short term scheduling process. Short term scheduling is generally done a daily basis. The basic goals of short term scheduling are as follows: 1) 2) 3) 4) Minimize Completion Time Maximize utilization Minimize Work In progress Inventory Minimize Customer Wait Time

A typical scheduling algorithm would aim to make effective use of labor and machinery to achieve maximize utilization.

Operations Scheduling 2011 Scheduling Algorithms


Scheduling algorithm is an algorithm which dictates the creation of a priority list on the basis of which processes are scheduled. There are several algorithms that are used today. The choice of scheduling algorithms is based on the following factors: Qualitative Factors: Number and variety of jobs Complexity of jobs Nature of jobs Quantitative Factors: Average completion time Percentage Utilization WIP inventory Average Lateness ( customer waiting in the system)

Among the common scheduling algorithms we have the First Come First Basis, Shortest Job First, Scheduling based on Slack time remaining (STR), and Critical Ratio (CR) etc. A vast majority of scheduling research efforts have concentrated on the development of workable predictive baseline schedules, assuming complete information and a static and deterministic environment. During execution, however, a project may be subject to numerous schedule disruptions. We present you with an algorithm that tries to cope up with these disruptions. Predictive (or proactive) Scheduling algorithm is a robust technique as it incorporates a safety time to incorporate safety time to absorb anticipated disruptions with a reactive procedure that is invoked when a schedule breakage occurs during project execution. Predictive Reactive scheduling The approach is a two-step process. In the first step, a set of schedules is built to follow a partial order. The flexibility introduced in step one is then used on-line to propose to the decision-maker a set of alternative when necessary. It starts with a set of flexible schedules that is released for execution. In the next step, if need be, a reactive algorithm is used, to adapt the original solutions to the shop floor reality. However in reality, unexpected events like machine breakdowns, material availability, etc. can make render the predictive schedule unfeasible or lead to a poor performing schedule. A set of schedules, therefore, takes care of this limitation. This takes care of having some flexibility in job sequencing. A desired range of performance values is accounted by the partial order computation. It can also be subject to technological constraints, company's preferences and other possible disruptions. A time window and the type of the schedules chosen provide temporal flexibility. In semi-active schedules, jobs cannot be scheduled to start earlier without changing any of job sequence, precedence constraints or release dates. Semi-active schedules allow the presence of idle times between the jobs. Thus, it would be possible to execute a job in a time window larger than its processing time allowing temporal flexibility.

Operations Scheduling 2011


If the flexibility induced by the partial order and the possible idle times absorbs all unforeseen perturbations, there is no need for rescheduling. Otherwise, a reactive algorithm that takes a convenient action with minimum changes on the partial order and minimum loss of performance is required. Rescheduling becomes necessary when the performance is considerably less than the desired performance. Labor & Cyclic Algorithms Labor Scheduling In a labor-limited environment, the resource constraint is the amount of labor available. Therefore, the scheduler must also assign the labor available to their next workstations. The available amount of labor can be allocated based on priority rules some of which are listed below. Allocate labor to the workstation which has the job that is in the system for the longest time. Allocate labor to the workstation which has most number of jobs waiting for processing. Allocate labor to the workstation which has the largest standard work content. Allocate labor to the workstation which has the job with the earliest due date.

Cyclic Scheduling In cyclic scheduling, a set of tasks is to be repeated many times (assumed infinite). These have periodic schedules. These are usually used in mass production scenarios. Other Algorithms Fewest operations remaining (FOR) It is a variant of SPT, wherein the jobs are scheduled based on the number of successive operations remaining before one can assume the job to be complete. The fewer the operations in that job that remain, the earlier the job is scheduled for production Minimum Planned Start Date A master schedule that has been already prepared is looked up to find a job that is scheduled to start first. The one that has the earliest start date is taken up first for processing. It is also called Earliest Start Date (ESD). Least setup (LSU) This rule aims at maximizing machine utilization. The job with the least setup time/changeover time is scheduled first. Performance of Common Scheduling algorithms A study conducted by Hughes Aircraft (LeGrande) indicates the following: Minimum Processing Time has the best efficiency and flow rate measures Minimum Slack Time per Operation meets the due dates best. First Come First Serve and Minimum Planned Start Date algorithms usually perform worse than Random selection in most of the cases.

Operations Scheduling 2011 Ant Colony Optimization Semi Conductor Industry


Ant Colony Optimization is a meta-heuristic technique which attempts to emulate the optimization mechanism of biological ants. The essential approach is to incorporate each ant agents feedback and then search for good solutions in a collaborative manner. In the semiconductor industry, specifically during the assembly and test manufacturing (ATM) phase, a station consists of a multiple machines (either similar or not) to complete a single operation step. It is vital to optimize the utilization of these ATM stations, especially the bottleneck station to improve productivity. Most ATM production facilities are designed based on Theory of Constraints (TOC) where the bottleneck station capacity limits the throughput of the production line. Thus, the focus of the solution is on scheduling production at bottleneck stations. As illustrated in the adjoining figure, the algorithm replicates a cooperative ant model, where ants search for the shortest path between their nest and the food source. Should no obstruction be encountered, the ants follow a straight line path to their destination. However, in the wake of an obstruction being encountered the initial set of ants split equally and starts walking around the obstruction. While doing so they communicate/collaborate with each other by depositing a chemical called pheromone on the ground. Since the chemical evaporates overtime, the concentration of pheromone along the longer path is less as against the shorter path, and the ants tend to follow the shorter path with higher concentration of the chemical. This particular methodology offers two distinct advantages over other heuristics. First, it can effectively integrate business rules and problem specific information (operational constraints) while searching for the appropriate solution. Secondly, this is a model-based algorithm and not an instance based algorithm The solution/underlying approach when implemented at an Intel Chip manufacturing facility resulted in significant savings on machine conversion time as compared with traditional scheduling approach. Specifically a 20% reduction in machine conversion time of the bottleneck station was achieved resulting in millions of dollars of cost savings for Intel

Operations Scheduling 2011

Operations Scheduling 2011


Example Video on Demand
Video on Demand (VOD) or Audio and Video on Demand (AVOD) are systems which allow users to select and watch/listen to video or audio content on demand. IPTV technology is often used to bring video on demand to televisions and personal computer Recent advancement in communication has given rise to video on demand applications. This business area is also facing a lot of competition. Owing to the plethora of such VOD applications, retaining customers has become an issue. Customers expect Quality of Service such as service latency, jitteriness, VCR like functionalities etc. To ensure a jitter free service the videos are retrieved from storage systems and carefully distributed. However, dedicating a stream to each viewer for downloading will exhaust the network I/O bandwidth of the video server. This problem of simultaneously supporting several users is faced by many existing systems. This creates a bottleneck like situation. Possible Solution #1: Increase the number of servers from where the videos are streamed. Issue with the solution: Cost of hardware increases tremendously as also the cost of hiring network administrators. Possible Solution #2: The batching process can be implemented. In this, users requesting the same videos can be served in batches. The arriving user is queued and is not served till the batch initiates. Issue with the solution: Service latency is experienced because of the waiting time between the request made and the request served. A substantial reduction in server capacity is experienced by batching but todays customer who is low on patience might not take the service latency very positively and cancel his request as the waiting time increases. Possible Solution #3: The batching approach does not take into account the difference between the arrival times of the successive requests. The Virtual Batching technique, connection of a group of requests by chaining, takes into account the difference in the arrival times of the requests and still allows the sharing of a single video.

Operations Scheduling 2011


In the Virtual Batching method, each client stores the video stream temporarily and transfers it at a later time to a geographically further client. This kind of mechanism allows users to share and download simultaneously. The Virtual Batch Scheduling Technique Say a video is divided into R-blocks (retrieval blocks) where each block is the minimum unit of data. Let the R-blocks be numbered from 1 to the length of the video depending on the position of the piece n the entire video. Let Am and An be two display stations which are playing the ith and the jth R-blocks of the same video. Say that An has requested the video first and has a buffer space of a (m, n), this request is followed by a request from Am. Now the number of blocks in between i and j blocks is given by (j-i) assuming j>i. If (j-i) is less or equal to a (m, n) then Am and An can be served by the same video. An has the buffer capacity to store a (m, n) which can be transferred at a later time to Am. To implement this, the existence of an isochronous channel between the sharing nodes is required. In this strategy, a receiving station considers the transmitting station as a server. Advantages of this technique: In this technique, every client station contributes to the community by using its own storage space and I/O communication channel. Arrival of a new request can be seen as a contributor rather than a burden to the server. The issue of scalability owing to scarcity of server space can be overcome by the Virtual batching technique.

Team (in alphabetical order) Amit Sarda (PGP-11-101) Nishank Sethi (PGP-11-131) Pooja Shrivastava (PGP-11-135) Priya Zacharia (PGP-11-142) Shouvik S Mazumdar (PGP-11-159) Swati Karle (PGP-11-168)