dynamic scheduling of aperiodic jobs in project management

18
SOUTH –ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1 Published By: Universal Multidisciplinary Research Institute Pvt Ltd Dynamic Scheduling of Aperiodic Jobs in Project Management ABSTRACT The research article is meant to propose a solution for the scheduling problem that many industries face. With a large number of machines involved in the each process and task dependencies becoming more and more complex, the scheduling needs better models to represent the system. The authors have created a model that will help in the simplifying the problem and help in allocation by keeping a tab on resource utilization and overall time of completion. Through this authors have proposed an innovative approach towards job scheduling and its status representation. As the transportation time plays an important role in an industry, the article emphasizes on its representation in the model. It also gives a methodology of allocation which will help in best utilization of resources and also giving preference to critical ones. It gives various alternative solutions depending on the overlap time, utilization time and total time for a job and user will be given the choice to select the alternative best suited for its production environment. In today’s scenario Process scheduling is facing major challenges in every sector. One of the reason is the excessive dependency on the intuition based scheduling that still dominates many industry. The other reason is that less research is happening in this area especially for the processes where depend activities exist. Industry wise, scheduling plays more critical role in manufacturing industries where 100% machine utilization is a critical issue. But modelling the real time system can only be achieved through few option like Gantt chart, Activity Diagram etc. These models have a lot of constraint and aren’t applicable in each and every scenario.

Upload: universal-multidisciplinary-research-institute-pvt

Post on 13-Sep-2015

219 views

Category:

Documents


0 download

DESCRIPTION

The research article is meant to propose a solution for the scheduling problem that many industriesface. With a large number of machines involved in the each process and task dependencies becomingmore and more complex, the scheduling needs better models to represent the system. The authorshave created a model that will help in the simplifying the problem and help in allocation by keeping atab on resource utilization and overall time of completion. Through this authors have proposed aninnovative approach towards job scheduling and its status representation. As the transportation timeplays an important role in an industry, the article emphasizes on its representation in the model. Italso gives a methodology of allocation which will help in best utilization of resources and also givingpreference to critical ones. It gives various alternative solutions depending on the overlap time,utilization time and total time for a job and user will be given the choice to select the alternative bestsuited for its production environment.

TRANSCRIPT

  • SOUTH ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1

    Published By: Universal Multidisciplinary Research Institute Pvt Ltd

    Dynamic Scheduling of Aperiodic Jobs in Project Management

    ABSTRACT

    The research article is meant to propose a solution for the scheduling problem that many industries

    face. With a large number of machines involved in the each process and task dependencies becoming

    more and more complex, the scheduling needs better models to represent the system. The authors

    have created a model that will help in the simplifying the problem and help in allocation by keeping a

    tab on resource utilization and overall time of completion. Through this authors have proposed an

    innovative approach towards job scheduling and its status representation. As the transportation time

    plays an important role in an industry, the article emphasizes on its representation in the model. It

    also gives a methodology of allocation which will help in best utilization of resources and also giving

    preference to critical ones. It gives various alternative solutions depending on the overlap time,

    utilization time and total time for a job and user will be given the choice to select the alternative best

    suited for its production environment.

    In todays scenario Process scheduling is facing major challenges in every sector. One of the reason

    is the excessive dependency on the intuition based scheduling that still dominates many industry.

    The other reason is that less research is happening in this area especially for the processes where

    depend activities exist.

    Industry wise, scheduling plays more critical role in manufacturing industries where 100% machine

    utilization is a critical issue. But modelling the real time system can only be achieved through few

    option like Gantt chart, Activity Diagram etc. These models have a lot of constraint and arent

    applicable in each and every scenario.

  • SOUTH ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1

    The scheduling is about maintaining a production rate on each machines so that the waiting time or

    makespan (total time taken to complete the entire job) is minimized [1].

    A typical scheduling solutionneeds following information to be defined properly:

    Machine environment: Number of machines available, time required to finish a job on the

    machine, scheduling environment i.e. pre-emptive or non- pre-emptive.

    Optimality criterion: Minimizing Waiting time/Makespan time, Maximizing the number of jobs

    executed

    Set of constraints: Deadline for each task, Precedence constraint, Number of resources

    available(Man/Machine), number of working hours a day

    Shortcomings of various existing Scheduling Models are:

    GANTT chart: Cant be used for dynamic scheduling, need detailed breakdown of project

    activities before developing the chart. Slightest change in dependencies

    may cause a new chart to be formed[2]

    CPM/PERT Chart: Difficult to understand and follow if the project has complex dependencies

    Which Activity to be to schedule

    When to be to schedule

    Best and Worst time taken to complete the job

    Represent all current projects

    Represent all activities under

    each projectCurrent Status of the project and their activities

    Fig.2. Scheduling Model output

    Fig.1. Scheduling Algorithm output

  • SOUTH ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1

    Published By: Universal Multidisciplinary Research Institute Pvt Ltd

    and simultaneous activities. It is difficult to solve resource conflict under

    the unclear precedence relations among project activities [4]

    ACTIVITY Diagram: Cant be used for more than one project activities at a time.

    TASK Calendars: Not easy to see Connections, dependencies, difficultto use for large teams.

    Network Diagram Deals with time aspect without considering resource constraints [3]

    DISJUNCTIVE Graph:

    This is useful to find an optimal order of all activities on a machine to find

    out a schedule with minimal length. Cant be used for very complex

    system.

    Scheduling Algorithm:

    Scheduling algorithms have always been an important subject of interest for mathematicians but

    with advent of computer, algorithms needed for CPU scheduling started dominating this field. But

    the production process scheduling algorithms are very different from CPU scheduling algorithms in

    the sense that precedence constraint exist in this area and activities cant be abruptly stopped till

    the activity releases the ownership of the resource after completion. Based upon these criteria,

    following are the prominent algorithms that are used for scheduling (source Wikipedia):

  • SOUTH ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1

    Published By: Universal Multidisciplinary Research Institute Pvt Ltd

    Earliest Deadline First [8]: Dynamic scheduling algorithm used in real-time scheduling based

    on the deadline of thetasks. The one which is closest to the deadline will be executed first.

    Least Slack time algorithm [9]: In this algorithm priority will be given to the task which is

    having the least slack time i.e. the time required to complete the remaining job

    Horns Algorithm [10]: Dynamic scheduling algorithm that executes the task with earliest

    deadline first to minimize the maximum lateness

    Bratleys Algorithm[3]: The algorithm uses branch and bound method to find the best

    solution based on backtracking in the tree of all solutions

    Spring Algorithm: Scheduling algorithm that constructs guaranteed schedules based on

    various constraints

    Greedy Approach[11]: greedy algorithms make decisions incrementally in small steps based

    on improving local or current state

    Heuristic Algorithm[4] : This Approachuses a heuristic function H to guide the search until a

    feasible schedule is found, otherwise backtrack: add a new node in the search tree if the

    node has smallest value according to H

    Above is the research done in the field of scheduling but in terms of models for representing the

    dynamic status of the activities there is very less research which is done till now.

    Our solution will use a new model to represent the underlying system which is different from the

    existing model such as Gantt chart, activity diagram etc. After the system will be modelled like this,

    we will use our algorithm to schedule the tasks. The algorithm will uses the concept of both static

    and dynamic scheduling. The algorithm will start allocating the resources based on the static

    algorithm used in initial scheduling. After the initial allocation, for each incoming job, dynamic

  • SOUTH ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1

    Published By: Universal Multidisciplinary Research Institute Pvt Ltd

    scheduling algorithm will be used. The algorithm uses the concept of project management such as

    PERT/ CPM to come up with the alternative solutions. The user can choose the best solution from

    these alternatives according to its need.

    Once we represent the present state of the system in this model we can use any pre-emption

    constrained aperiodic scheduling algorithm to get the schedules. In our case we have used FCFS in

    initial case. After that we have taken input from user for prioritizing the tasks. So this model will

    offer you the flexibility of using different algorithms to get the best schedule for your system.

    The model will help in visualizing the status of more than one projects in a typical process industry

    as against the earlier models where progress of only one project can be seen at a time. This will be a

    one stop solution for employees at all level. Low level manger can use this model for scheduling.

    Higher level manger will use it to keep an eye on the current status of the projects under its

    management. For individual employee this will serve as the model to keep track of the work

    assigned to them.

    Same model will be useful for different department. For example Production department will use it

    for assembly line scheduling, Procurement people will use it for keeping track of the order status,

    and Sales department will use it for checking the status of sales target met by different people

    under different regions. The model is very useful in complex systems where there are n number of

    machines and n number of projects happening simultaneously. In that scenario the model will give

    you a birds eye view of the status of the system.

    Modelling Framework

    Lets assume that there is a customer order Job J1. Each Job requires certain activities to be

    performed in order to complete the Job. This list of activities can be chosen from the total set of A1

    to An activities. The chosen activities need to be then allotted its time and preceding activities so as

    to define the project. A typical industrial scenario has various such activities superimposing on each

    other.

  • SOUTH ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1

    Published By: Universal Multidisciplinary Research Institute Pvt Ltd

    Algorithm to define a Job:

    Step 1: Receive order

    Step 2: Select Activities from the activity selection table.

    Fig.3.Job Allotment

    Step 3: The selected activities are shown in the Allotment table. Now define Preceding

    Activity and allot time for activity with its respective variation (Optimistic and Pessimistic)

    Activity Facility Time(n1) Previous Activity

    A1 F3 15 -A2 F5 120 A2A3 F2 5 A3A4 F7 35 A4A5 F1 82 A4; A2

    Add New F5

    Job J1 Allotment Table

    Time(n1)

    A1-A2

    A2-A3

    A2-A5

    A3-A4

    An-Ak

    Transport Table

  • SOUTH ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1

    Published By: Universal Multidisciplinary Research Institute Pvt Ltd

    Fig.4.Transport Table

    Step 4: The display comes in a flow chart fashion, now fill the time for transport time

    transport table. This will complete the data for a project.

    With this input all the details about projects median time with deviation can be displayed. This data

    will now be integrated with already current status of already existing projects with the firm. As all

    the activities require a particular workshop or a division for service industry, the time is allotted

    accordingly. The critical facility is determined by the percentage of its overlap and usage. In the

    same way various other Jobs are entered.

    Multiple Job handling and optimization:

    Now what the model does here is to define a criticality of facilities depending on their usage and

    overlap. This Criticality is then used to prioritize and thus produce different possible solutions. The

    user has an option to choose between these solutions by analysing the displayed criticality of usage

    and overlap and the overall time of completion. At the same time user also gets to see how

    particular allotment effects other jobs. This process is described as follows:

    Let J define the Jobs. There are numerous projects J1 to Jn. For each project uses come facilities

    from F1 to Fn, The time taken to travel between to facilities is tn,m. There may be a slack time after

    Jn using a facility and before Jm starts using the facility.

  • SOUTH ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1

    Published By: Universal Multidisciplinary Research Institute Pvt Ltd

    Fig.5.Facility Allocation for various jobs

    The concept here is to find critical facilities. The critical facilities are those facilities which are most

    loaded. These are the facilities that define the speed of the total system. Identifying this will help in

    finding bottlenecks easily and will help determine capacity of which facility to be increased or which

    similar facilities to be added.

    The job function can be defined as:

    Job:

    = nth activity of job x

    = Time by nth activity

    Es = Early start time of job on particular activity Ef = Early finish time of job on particular activity = Actual start time of job on particular activity

    = Actual finish time of job on particular activity

    = Late start time of job on particular activity

    `t 2t 3t 4t 5t 6t 7t 8t 9t

    J1F1 J2

    J3F2 J4

    F3

    F4

    Fn

    Time Line

  • SOUTH ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1

    Published By: Universal Multidisciplinary Research Institute Pvt Ltd

    = Late finish time of job on particular activity

    = Previous Activities (let there be I activities)

    Facility used:

    Connecting Activities function:

    = Connect activity p to q for job x

    = From activity

    = to activity

    = time

    Facility Variables ()function:

    s = Start of mth activity on Facility y = Finish of mth activity on Facility y

    = Criticality rating of this facility

    Assumption:

    Machine process not more than 1 item at a time

    Fixed processing time of the jobs is known

    criteria for optimization is minimizing the maximum flow time

    Algorithm to add new job to Time Line:

    Step 1: Take data from new Job.

    Step 2: Fill the first activity in front its facility y. Find an empty slot in Let it be the mth job

    using this facility. If this slot is in between some other jobs using this facility, then insert it in

    between by changing () = . Thus shifting all by 1 to make numbering consistent. Assign:

  • SOUTH ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1

    Published By: Universal Multidisciplinary Research Institute Pvt Ltd

    Es = () +1 = Es s = Ef = Es + = Ef f =

    Step 2: Fill travelling time shown by angled lines. Assign:

    Es = + Similarly do the same for all connecting activities as a continuous process

    Es = + Ef = Es +

    Step 3: If the facility to be used by , say is busy i.e.:

    Time period between Es and Ef clashes with any period between sf [m varying from 1 to end covering all usages of ] then find an empty slot in the ahead. Let this time

    slot be denoted by and .

    Step 4: Repeat step 2 & 3 till the allotment completes.

    Step 5: The initial allotment is complete.

    Step 6: For critical facility (most loaded) and for all facilities after that:

    = = Step 7: For activities before start with nearest to critical and define subtract its time

    from (as say for example here m is next to n). Then define = . Repeat this step to cover all activities before critical activity. Step 8: Allotment completed on basis of FCFS.

  • SOUTH ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1

    Published By: Universal Multidisciplinary Research Institute Pvt Ltd

    Finding Critical Activity:

    Step 1: find time taken on all facilities (sum times of all activities using that facility)

    Step 2: Rank all facilities by their usage Criticality ranking (first rate according to overlaps

    then according to no of activities in that facility)

    Step 3: Critical activity for a job is the job using facility with highest usage rank among those

    used by that job.

    Optimization of Allotment:

    Step 1: Find the most critical facility for the job

    Step 2: If for critical facility (Max for all used) there is any empty slot and Es of any

    activity using that facility is before start of empty slot. Then use this slot by filling this

    activity. If there are multiple such activities, then choose one*.

    Step 3: Re-allot all activities

    Step 4: Confirm with user on acceptance of new allotment. For taking decision show

    percentage utilization and change of top 20% utilized facilities. Show job completion time

    and change due to new allotment.

    Step 5: If there are multiple such activities* choose the next one and repeat steps 3 & 4 till

    trial is complete with all.

    Step 6: Repeat steps 2, 3, 4, and 5 by choosing next level of critical activities. In step 3 re-

    allotment to be done without disturbing the allotment of facility with higher criticality.

    Select the one chosen by user and update in the system

    Experiment 1:

  • SOUTH ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1

    Published By: Universal Multidisciplinary Research Institute Pvt Ltd

    Fig.6. Current Status of facility Allocation Example 1 The above time line shows the above current status of usage of facilities. This shows current plan for

    coming days. The vertical red line shows the current time. Anything happened before it cannot be

    changed. And the system keeps on updating the present status. There are 4 jobs going on. There is

    overlap on milling facility from time 13:00 to 14:00, 01.04.13 and on packaging and dispatch facility

    from 9:00 to 10:00, 02.04.13. In this overlap period one of the jobs has to wait. The allotment done

    here is on first come first serve basis.

    Now critical rating is as follows:

    1st: Milling overlap: 13 % usage = 40%

    2nd: Packaging and dispatch overlap: 13% usage = 33.33%

    3rd Grinding 53.84%

    Now suppose a new job comes with following requirements:

    A1: Entry and allotment- 1 hr => even though order may arrive at 10:00 slot but its confirmation can

    only be given at 13:00

    T1: Travel time to milling- 1hr

    A2: Milling- 2hrs

    T2: Travel time to grinding- 1hr

    `09:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00 18:00 09:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00 18:00

    Entry and allotment

    Milling

    Grinding

    Surface Finishing

    Primer and Painting

    Packaging and dispatch

    01.04.13 02.04.13

    Time Line

  • SOUTH ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1

    Published By: Universal Multidisciplinary Research Institute Pvt Ltd

    A3: Grinding- 2hrs

    T3: Travel time to Packaging and dispatch- 1hr

    A4: Packaging and dispatch- 2hr

    Now the program does and initial allotment on the FCFS basis without disturbing the previous

    schedules. This is displayed as follows:

    Fig.7.Allotment on FCFS basis

    1st: Packaging and dispatch overlap: 23.5% usage = 53.84%

    2nd: Milling overlap: 23.5 % usage = 47%

    3rd Grinding overlap: 5.8% usage =52.9%

    And total time by new activity = 17 hrs

    Another suggestion the program may give is:

    `09:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00 18:00 09:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00 18:00

    Entry and allotment

    Milling

    Grinding

    Surface Finishing

    Primer and Painting

    Packaging and dispatch

    Time Line

    01.04.13 02.04.13

  • SOUTH ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1

    Fig.8.Alternative allocation

    1st: Milling overlap: 23.5 % usage = 50%

    2nd: Packaging and dispatch overlap: 18.75% usage = 43.75%

    3rd Grinding overlap: 6.2% usage =56.2%

    And total time by new activity = 14 hrs

    If the user is ok with this suggestion he may accept this and when approved this will be updated in

    the system.

    Experiment 2:

    This is an example from a company which is into testing of electrical equipment. The equipment

    arrive and are to go through various

    Fig.9.Current allotment status Example 2

    `09:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00 18:00 09:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00 18:00

    Entry and allotment

    Milling

    Grinding

    Surface Finishing

    Primer and Painting

    Packaging and dispatch

    Time Line

    01.04.13 02.04.13

  • SOUTH ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1

    At 11AM criticality rating is as follows:

    1st: Final report

    2nd: Pre-test MC-1; Short circuit MC-2; Impulse gen test; Jammer test

    Say suppose we are to accept a new job now with following requirements:

    Taking order 1 hour

    HV test 1 hour: requires HV test facility

    Travel from HV Facility to Power electronics room: 1hr

    Impulse gen test at Power electronics room: 1hr

    Generation and compiling of report: 1hr

    This is the solution in FCFS

    Fig.10.FCFS allocation

    Now critical rating is as follows:

    1st: Final report overlap: 84% usage = 69.2%

    2nd: Impulse gen overlap: 7.7 % usage = 30.7%

    3rd HV room overlap: 7.7% usage = 15.4%

    And total time by new activity = 13 hrs

    The other option given to user can be:

  • SOUTH ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1

    Fig.11 Alternative solution for Example 2

    Now critical rating is as follows:

    1st: Final report overlap: 50% usage = 75%

    2nd: Impulse gen overlap: 8.3% usage = 33.33%

    3rd HV room overlap: 8.3% usage = 16.66%

    And total time by new activity = 7 hrs

    User may choose this one also based on the performance.

    CONCLUSION

    There are various constraints while doing scheduling. These constraints keep on changing. In a

    typical industry a lot of time is spent in travelling from one facility to other. How to represent the

    facility in usage, travelling time and optimize in order to get best usage and at the same time

    intuitively representing resources, jobs and their relationships has been the key factor.

    This article describes new way of presenting resource constrained and travel time bounded

    scheduling. The proposed model can display facility utilization by different jobs going on

    simultaneously. These simultaneous jobs are not only displayed but also optimized while allocation.

  • SOUTH ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1

    Published By: Universal Multidisciplinary Research Institute Pvt Ltd

    The user is given various options and depending on priority these can be chosen depending on the

    figures of the percentage usage, the percentage overlap and the total time.

    REFERENCES

    [1]. Herrmann, J.W.(2006) A History of Production Scheduling. Handbook of Production Scheduling.

    International Series in Operation Research & Management Science, Vol. 89

    [2]. Geraldi,J. &Lechter,T.(2008) Gantt charts revisited: A critical analysis of its roots and implications

    to the management of projects today. [Online] Emerald .International Journal of Managing

    Projects in Business Vol. 5 Iss 4, pp.578-594. Available from: http://www.emeraldinsight.com

    [Accessed: 26th February 2014]

    [3]. Mohanty.R. P.(1988) Project Scheduling Methods: An Evaluation. Management Research News,

    vol. 11, no. 2, pp. 19-31.

    [4]. Cui N. F., & Liu .J.A Heuristic Algorithm of Critical Chain Based on Project 2003. Industrial

    Engineering and Management, vol. 14, no. 3, pp. 60-64, 2009.

    [5]. Pinedo.M.L (1995).Scheduling - Theory, Algorithms, and Systems. Springer

    [6]. Buttazzo.G.C(2011).Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and

    Applications (Real-Time Systems Series).pp. 53-76

    [7]. Stankovic.J.A&Spuri.M&Ramamritham.K&Buttazzo.G.C(1998).Deadline scheduling for Real-Time

    Systems: EDF and Related Algorithms. Springer

    [8]. Qi Li, Wei Ba (2012). Frontiers of Computer Science, Volume 6, Issue 5 , pp 560-567: Springer

    [9]. Myunggwon Hwang, Dongjin Choi, Pankoo Kim (2010) Complex, Intelligent and Software

    Intensive Systems (CISIS), 2010 International Conference: IEEE Xplore

  • SOUTH ASIAN JOURNAL OF MULTIDISCIPLINARY STUDIES (SAJMS) ISSN:2349-7858 VOLUME 1 ISSUE 1

    Published By: Universal Multidisciplinary Research Institute Pvt Ltd

    [10]. W.F. Dowling and J.H. Gallier, Linear time algorithms for testing the satisfiability of

    propositional Horn formulae, Journal of Logic Programming 3 (1984) 267284: Science Direct

    [11]. Joslin. D & Collins. J (2008). Greedy Transformation of Evolutionary algorithm Search Spaces

    for Scheduling Problems