Top Banner
RESOURCE CONSTRAINED PROJECT SCHEDULIN THROUGH GENETIC ALGORITHM
60
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

RESOURCE CONSTRAINED PROJECT SCHEDULING THROUGH GENETIC ALGORITHM

Page 2: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

• PROJECT GUIDE:-

ARINDAM SINHA RAY

• SUBMITTED BY:-

AVAY MINNI

DEBADITYA SARKAR

RASHMI SAHA

RAJESH KUMAR MAHTO

Page 3: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

CONTENTS• INTRODUCTION

• GENETIC ALGORITHM

• THEORY

• THE BASIC GENETIC ALGORITHM

• WHY TO USE GENETIC ALGORITHM

• RESOURCE CONSTRAINT

• GENERAL PROBLEM FORMULATION

• TEST PROBLEM FORMULATION• REAL LIFE SCENARIO

• FLOW CHART

• RESOURCE CONTRAINED PROJECT SCHEDULING PROBLEM

Page 4: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

CONTENTS-II

• PROPOSED SOLUTION METHODOLOGIES

• ALGORITHM

• RESULT ANALYSIS

• SELF DEFINED FUNCTION

• LINEAR PROGRAMMING FUNCTION

• OPTIMIZATION FUNCTION OF GENETIC ALGORITHM

• CONCLUSION

• FUTURE SCOPE

• REFERENCES

Page 5: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

INTRODUCTION• Planning and scheduling are common to many different

engineering domains. Whether the project is as large as building an IT Office or something as seemingly simple as the redesign of the packaging for a tape dispenser, both planning and scheduling are profoundly important.

• Even on a small project, the number of possible courses of action and the number of ways to allocate resources quickly become overwhelming.

• This document describes a genetic algorithm for finding optimal solutions to resource constrained scheduling problems. It shows formulation for each scheduling problem variation, a single algorithm provides promising performance on different instances of the general problem.

• The representation enforces precedence constraints, and the objective function measures both resource constraint violations and overall performance.

Page 6: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

GENETIC ALGORITHM

• A genetic algorithm (or GA) is a search technique used in computing to find true or approximate solutions to optimization and search problems.

• Genetic algorithms are categorized as global search heuristics.

• Genetic algorithms are a particular class of evolutionary algorithms that use techniques inspired by evolutionary biology such as inheritance, mutation, selection, and crossover (also called recombination).

Page 7: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

THEORY

• A genetic algorithm is a problem solving method that uses genetics as its model of problem solving.

• It’s a search technique to find approximate solutions to optimization and search problems.

• GA handles a population of possible solutions. Each solution is represented through a chromosome, which is just an abstract representation.

• GA handles a population of possible solutions. Each solution is represented through a chromosome, which is just an abstract representation.

Page 8: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

THEORY• . Generally, the initial population is generated

randomly. Then, the genetic algorithm loops over an iteration process to make the population evolve.

• Each GA consists of the following steps: 

• 1) SELECTION: The first step consists in selecting individuals for reproduction. This selection is done randomly with a probability depending on the relative fitness of the individuals so that best ones are often chosen for reproduction than poor ones.

Page 9: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

THEORY• 2) REPRODUCTION: In the second step, offspring are bred

by the selected individuals. For generating new chromosomes, the algorithm can use both recombination and mutation.

• 3) EVALUATION: Then the fitness of the new chromosomes is evaluated.

• 4) REPLACEMENT: During the last step, individuals from the old population are killed and replaced by the new ones. The algorithm is stopped when the population converges toward the optimal solution.

Page 10: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

THE BASIC GENETIC ALGORITHMThe basic genetic algorithm is as follows:

• [start] Genetic random population of n chromosomes (suitable solutions for the problem)

• [Fitness] Evaluate the fitness f(x) of each chromosome x in the population

• [New population] Create a new population by repeating following steps until the New population is complete

- [selection] select two parent chromosomes from a population according to their fitness ( the better fitness, the bigger chance to get selected).

- [crossover] With a crossover probability, cross over the parents to form new offspring ( children). If no crossover was performed, offspring is the exact copy of parents.

- [Mutation] With a mutation probability, mutate new offspring at each locus (position in chromosome)

- [Accepting] Place new offspring in the new population.

• [Replace] Use new generated population for a further sum of the algorithm.

• [Test] If the end condition is satisfied, stop, and return the best solution in current population.

• [Loop] Go to step2 for fitness evaluation.

Page 11: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

WHY TO USE GENETIC ALGORITHM

• Liability

• Easy to discover global optimum.

• GA uses fitness function for evolution rather than derivatives.

• Almost all conventional optimization technique search from a single point but GAs always operate on a whole population of points(strings).

• Easily modified for different problems.

• They perform very well for large scale optimization problems.

• Can be employed for a wide variety of optimization problems.

Page 12: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

RESOURCE CONSTRAINTS• A resource constraint is a limit on what can be done because of

limitations on what is available to do it.

• Resource abundance = shorter project duration and vice versa.

• First identify peaks of resource requirements.

• In practical, resources are finite . So , impractical for peak resource needs.

• Ideally there should be even demand of resource for entire project.

• This process of refining the plan to effectively manage and schedule resources is called resource modeling .

-Resource Definition - Resource Allocation

-Resource Aggregation -Resource Leveling

Page 13: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

RESOURCE DEFINITION

• The first step in resource modeling is to decide exactly what resources are considered important enough to be modeled.

• Most resource modeling is concerned with people or workers (such as welders or computer programmers), it may also include other resources such as machines (such as a computer of a particular specification), or space on a project where space is restricted and where this restriction limits the amount of other resources which can be deployed at any one time.

Page 14: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

RESOURCE ALLOCATION• Resource allocation, also called resource loading, is

concerned with assigning the required number of those resources identified in the previous step to each activity identified in the plan

• Resource allocation does not have to follow a constant pattern; some activities may initially require fewer resources but may require more of the same resources during the later stages of the project.

• More than one type of resource may be attributed to a specific activity.

• For example, fixing the plates on a ship's hull may require 10 fitters, 20 welders, 15 laborers and a certain type of welding machine.

Page 15: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

RESOURCE AGGREGATION• Resource aggregation, or resource loading, is simply the

summation, on a period-by-period basis, of the resources required to complete all activities based on the resource allocation carried out in the previous stage.

• The results are usually shown graphically as a histogram.

• Such aggregation may be done on an hourly, daily, or weekly basis, depending on the time unit used to allocate resources.

• When a bar chart is used as the planning tool, the resource aggregation is fairly simple and straightforward. For a given bar chart, there is a unique resource unit aggregation chart which can be drawn underneath the bar chart.

Page 16: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

RESOURCE AGGREGATION• . An example is shown in Figure 1 below, where, for a particular

resource, the required resource units for each time period are annotated on the bar chart. The total number of resource units for each time period can then be summed and a resource aggregation or load chart can be produced.

Figure . Resource Unit Aggregation Chart Derived from a Bar

Page 17: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

RESOURCE LEVELING • Resource leveling is the process that ensures resource

demand does not exceed resource availability.

Demand Compared to Resource Availability

Page 18: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

RESOURCE LEVELING

• The ideal scenario would be a buildup of resource usage at the beginning of the project and a reduction at the end of the project.

• The approach to resource leveling will also depend on whether resources are dedicated to a particular project or shared across several projects and whether there is a need to keep all resources fully utilized.

Page 19: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

GENERAL PROBLEM FORMULATION• The general form for a Linear Programming problem is as

follows:

• OBJECTIVE FUNCTION

• minf(X1,X2,…,Xn):=c1X1+c2X2+…+cnXn(1) =ΣciXi

• where,

• X1,X2,…,Xn= Different Activities of the Project.

• c1,c2,…,cn=Total resource consumed by each Activity.

• subject to:-

Page 20: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

GENERAL PROBLEM FORMULATION

TECHNOLOGICAL CONSTRAINTS

• ai1X1+ai2X2+…+ainXn(≤ or = or ≥)bi,i =1 ,… ,m (2)

• or, Axi (≤ or = or ≥) bi, i = 1 , … , m

• where,

• A = Matrix of Co-efficient of Linear Constant.

• xi = Column Matrix of Variables.

• bi= Column Matrix of Resources.

SIGN RESTRICTIONS

• ( Xj≥0) or (Xj≤0)or (Xjurs) , j=1,…,n(3)

• where''urs'' implies unrestricted in sign.

Page 21: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

TEST PROBLEM FORMULATION• REAL LIFE SCENARIO 

• The development team that we are using as an example is going to develop an online store for a pet shop. Peter, the project manager of the development team, has decided to produce the first stable version of the online system by the end of this month. The following chart shows the planned schedule of this month.

Page 22: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

• The team is going to support three major functions in the first version. It begins with the register function.

• After completion, the team will move on to the shopping cart function, which is an important and complex one that takes about two weeks of work.

• The rest of the month will be allocated to supporting the printing function for sales statistic reports.

• Each function involves a series of work, taken up by different team members. The following image shows work planned for each function.

Page 23: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

• Here is a brief description of the work:

• Business Modeling - Understand the daily business operations of the pet shop.

• Requirements - The sub-functions end user wants the system to come with.

• Analysis & Design - Study how to support user's need and perform system designs (e.g. screen layout, page flow design).

• Implementation - The coding work.

• Testing - The process to ensure the functions required are supported and working as expected.

• QA & Maintenance - Report bugs and suggestions for enhancements.

Page 24: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

FLOW CHART

Page 25: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

The Resource-Constrained Project Scheduling Problem:-

• The RCPSP is one of the most complex scheduling problems. It is considered as a generalization of many standard scheduling problems.

• A RCPSP considers resources of limited availability and activities of known durations and resources request. The problem consists of finding a schedule of minimal duration by assigning a start time to each activity such that precedence relation and the resource availabilities are respected.

• The RCPSP can be defined as a combinational optimization problem aims at finding a feasible solution by the help of a tuple (V,p,E,R,B,b).

---- Activities consisting the project are identified by set V={A0,….,An+1}. The set of non-dummy activities is identified by Ai={A1,…...An}.

Durations are represented by vector p.

Precedence relation are given by E, such that Ai precedes activity Aj.

Page 26: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

---Availabilities of resources are represented by a vector B. such that Bk denotes the availability of Rk.

R is called unary or disjunctive resource.

Demands of activities for resources are abstracted by b.

• A schedule is a point S such that Si represents the strat time of activity of Ai.

• A solution S is feasible if it is compatible with the precedence constraints and resource constraints. Expressed as below

---- Sj-Si >= pi , for all (Ai,Aj) belongs to E (I)

Sum of bik <= Bk , for all Rk belongs to R and t >= 0. (II)

• The SCPSP is the problem of finding a non-preemptive schedule S to precedence constraints (I) and resources constraints (II).

Page 27: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

Ai A0 A1 A2 A3 A4 A5 A6 A7 A8 A9

pi 0 6 1 1 2 3 5 3 3 0

bi 0 2 1 3 2 1 2 2 1 0

Si 0 1 1 1 7 2 2 8 5 0

PROBLEM: A RCPSP instance is given with n=8 real activities and |R|=1 resources with availabilities B = 5.

MATRIX FORMULATION:-

.

Here, Ai = A0 to A9

A0= starting point for activities.A9= ending point of activities.A1, A2, …. , A8= activities.pi= durations for each activity.bi= availability of resources for each activity.Si= starting point of each activity

Page 28: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

DIRECTIVE GRAPH

A5

A8

A0

A1

A2

A3

A4

A6

A7

A9

Page 29: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

• Min Z = 12A1+A2+3A3+4A4+3A5+10A6+6A7+3A8

• Subject to,

• A2+3A3<= 5

• 2A1+A5+2A6<= 5

• 2A1+2A6<= 5

• 2A1+A8<= 5

• 2A4+A8<= 5

• 2A7<= 5

Mathematical Deduction:-

Page 30: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

PROPOSED SOLUTION METHODOLOGY• We have solve the problem in 3 ways obtaining the

final value of the function.

• These are as follows:

• Self-Defined Functions.

• Linear Programming Function

(linprog).

• Optimization Function of Genetic Algorithm (gatool).

Page 31: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

Functions used from matlab library

Page 32: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

Five Auxiliary functions used:-function e=vr(m,i)

%The i-th co-ordinate vector e in the Euclidean Space

• Create a matrix e of (m*1) where all the elements are Zero.

• Fill the i-th position of matrix e, with 1.

function d=delcols(d)

%here delete the duplicate column of the matrix d.

• Delete the repeated rows from the matrix d and return the sorted one.

• Store the no. of columns of matrix d in n.

Page 33: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

• Create an empty Matrix j.

• for k=1 to n

• Assign column wise elements of Matrix d into c.

• for l=k+1 to n

• if(Maximum value from column subtraction for(lth-cth)column <= 100*eps)

• copy the lth column into j matrix.

• end if

• end for

• end for

• if j is not empty

• Sort each column of j matrix in ascending order.

• Delete all the columns except 1st one of matrix d.

• end if

Page 34: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

function [row,mi]=MRT(a,b)

%The Minimum Ratio Test(MRT) performed on vector a & b.

%Output Parameters are:-

%row=index of the pivot row.

%mi=value of the smallest ratio.

• Store the length of the vector a into m.

• Create a Matrix C with elements 1 to m.

• Combine all the column into one column of Matrix a.

• Combine all the column into one column of Matrix b.

• If b>0,then assign the value of c into l.

• Array right division of lth column of a & b.

• Now, find the minimum from the Quotient matrix.

• Store the min. value in mi & the index no. in row matrix.

• Store the value of row-th index of l matrix into row.

Page 35: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

function col=MRTD(a,b)

%The Maximum Ratio Test performed on vectors a and b.

%This function is called form within the function dsimplex.

%Output Parameter-:-

%col-index of the pivot column.

• Store the length of vector a into m.

• Create a Matrix C with elements 1 to m.

• Combine all columns into one column of matrix a.

• Combine all columns into one column of matrix b.

• If b<0,then assign the value of c into l.

• Array right division of l-th column of a & b.

• Now find the Max from quotient matrix.

• Store the max value in mi and index no. in column.

• Store the value of col-th index of l-th matrix into col.

Page 36: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

function[m,j]=Br(d)

%Implementation of the Bland's rule applied to the array d.

%This function is called from the following functions:-

%Simplex2p,dsimplex,addconstr,simplex and cpa.

%Output parameters:-

%m=first negative no. in the array D.

%j=index of entry m.

• Find any less than zero elements in d and shows their index in vector matrix.

• if ind is not empty

• Store the index no. of first negative no. in j.

• Store the first negative no. of matrix d in m.

• else

• create an empty matrix m.

• create an empty matrix j.

• end else-if

Page 37: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

function vert=feassol(A,B)

%Basic feasible solution vert to the System of constraints

%Ax=b, x>=0

%They are stored in column of matrix vert.

• Store the value of row and column of matrix A into m & n respectively.

• Stop the warning by Matlab.

• Combine all the columns of b in one column.

• Declare an empty matrix vert.

• if (n>=m)//here column>=row

• Create a matrix t with all possible combination from the range 1 to n taking m columns at a time.

Page 38: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

• nv=n!/(n-m)!m!

• for i=1 to nv

• a)Create zero matrix of row n and column 1.

• b)(i)Choose the number from t-th column and i-th row of matrix A.

• (ii)Divide the chosen element b & store the quotient into x.

• if all(n>=0 &(n !=inf & n !=-inf))

• a)Assign n to the i-th row of t.

• b)copy the y matrix into vert matrix.

Page 39: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

• end if

• end for

• else

• show error message.

• end else ifif vert is not empty

• Delete the duplicate columns of vert matrix by calling delcols function

• else

• create an empty matrix vert.

• end else if

Page 40: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

Function vert = extrpts(A,rel,b)

%extreme points vert of the polyhedral set

%x=(x:Ax<=b or Ax>=b, x>=0)

%Inequality signs are =stored in the string rel e.g. rel=‘<<>’ stands for <=,<= & >= respectively.

o Store the value of row & column of matrix A into m& n respectively.

o Store the value of n in nlv

o For i=1 to m

o if rel =‘>’

o assign -1 to the i-th position of m*I mtrix by calling vr function.

o copy the above matrix into A.

Page 41: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

Else

o assign 1 to the ith position of m*I matrix by calling vr function.

o End else if

• if b(i)<0

• assign negative to all the ith row elements of A.

• assign negative to i-th position of b.

• end if

• end for

• Stop the warning by Matlab.

• Combine all the columns of b in one column.

• Declare an empty matrix vert.

• if (n>=m)//here column>=row

• Create a matrix t with all possible c combination from the range 1 to n taking m columns at a time.

Page 42: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

• nv=n!/(n-m)!m!

• for i=1 to nv

• a)Create zero matrix of row n and column 1.

• b)(i)Choose the number from t-th column and i-th row of matrix A.

• (ii)Divide the chosen element b & store the quotient into x.

• if all(n>=0 &(n !=inf & n !=-inf))

• a)Assign n to the i-th row of t.

• b)copy the y matrix into vert matrix.

• end if

• end for

• else

• show error message

• end else if

Page 43: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

• Delete the duplicate columns of vert matrix by calling delcols function.

Page 44: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

PROPOSED SOLUTION METHODOLOGIES

• LINEAR PROGRAMMING FUNCTION (linprog)

• The Method Process is shown in the Next Part (Result Analysis) along with the Function Value.

• OPTIMIZATION FUNCTION OF GENETIC ALGORITHM (gatool)• The Method Process is shown in the Next Part

(Result Analysis) along with the Function Value & Graphs.

Page 45: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

RESULT ANALYSIS• SELF-DEFINED FUNCTIONS

• VARIABLE DECLARATION

• The standard form of the linear programming problem is formulated as follows.

• min z = cTx

• subject to ax = b ; x ≥ 0

where,

Page 46: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

• FEASIBLE SOLUTION• Function vert = feassol(a, b) computes all basic feasible solutions.

• They are stored in columns of the matrix vert.

Page 47: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

• EXTREME POINTS

• The extreme points of a feasible region are those boundary points that are intersections of the straight-line boundary segments of the region or The corners or vertices of the feasible region.

• Given a polyhedral set x=(x:ax<=b or ax>=b, x>=0) find all extreme points of x.

• Inequality signs are stored in the string rel e.g. rel=‘<<>’ stands for = , ≤ & ≥ respectively.

Page 48: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM
Page 49: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

• LINEAR PROGRAMMING FUNCTION (linprog)

• Linear programming is the problem of finding a vector x that minimizes a linear function cTx subject to linear constraints:

• min z = cTx

• subject to ax = b

• x ≥ 0

• Such that one or more of the following hold: ax ≤ b, Aeq x = beq, l ≤ x ≤

• VARIABLE DECLARATION

Page 50: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM
Page 51: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

• SOLUTION

Here,linprog - Solve linear programming problems.exitflag - Integer identifying the reason the algorithm terminated. The value of exitflag and the corresponding reasons the algorithm terminated. exitflag = 1 Function converged to a solution x.

Output - Structure containing information about the optimization. The field of the structure are: iterations: Number of iterations.

Page 52: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

OPTIMIZATION FUNCTION OF GENETIC ALGORITHM (gatool)

• A genetic algorithm (GA) is a method for solving both constrained and unconstrained optimization problems based on a natural selection process that mimics biological evolution.

• The algorithm repeatedly modifies a population of individual solutions.

• At each step, the genetic algorithm randomly selects individuals from the current population and uses them as parents to produce the children for the next generation.

• Over successive generations, the population "evolves" toward an optimal solution.

VARIABLE DECLARATION

• a, b, c, d, lb are the same matrices defined above.

• a is the matrix of left-side of linear inequalities of constraints.

• b is the matrix of right-side of linear inequalities of constraints.

• c is the matrix of left-side of linear equalities of constraints.

• d is the matrix of right-side of linear equalities of constraints.

• lb is the matrix of lower bound where all is set to zero.

Page 53: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

• SOLUTION

• USING COMMAND WINDOW

Here,ga - Find minimum of function using genetic algorithm.@asr – Defined function of our given problem, stored in ‘m’ file named as asr.m.

Page 54: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

• USING GENETIC ALGORITHM TOOL BOX   To use the genetic algorithm at the command line, call the genetic

algorithm function ga with the syntax[x fval] = ga(@fitnessfun, nvars, options)

where

@fitnessfun is a handle to the fitness function.

nvars is the number of independent variables for the fitness function.

options is a structure containing options for the genetic algorithm. If you do not pass in this argument, ga uses its default options.

The results are given by

x — Point at which the final value is attained.

fval — Final value of the fitness function.

Using the function ga is convenient if you want to

Return results directly to the MATLAB workspace.

Run the genetic algorithm multiple times with different options, by calling ga from a file.

Page 55: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

By the help of GA Tool Box we plot some graph to explain our output properly.

By the help of GA Tool Box we plot some graph to explain our output properly.

Page 56: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

GRAPHS

In above fig we plot 1.Best fitness & 2.Expectation graph, in Best fitness graph we easily identify two different line of fitness, one is Best fitness & other one is Mean fitness.

Black colored line is for Best fitness & the fitness value is = 59.992.Red colored line is for Mean fitness & the fitness value is = 59.995.

In Expectation graph we mainly do fitness scaling for given problem & find out the expected graph for better comparison.

Page 57: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

In fig 2 we plot six more graph,

•In first we plot Current Best Individual, showing the current values of all the variables.

•In second we plot Average Distance between Individual variables.

•In third we plot three types of scores, Best Worst & Mean scores.• •In fourth we plot Range. Ranges specify the higher & the lower value of each individual variable.

•In fifth we plot Fitness of Each Individual, showing the values for every variable.

•In sixth we plot Selection of the offspring, depending on that we select the children as parent for next generation.

Page 58: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

CONCLUSION

• The Resource Constrained Scheduling Problem is a very well-studied and indebt subject of Project Management & Optimization.

• It has been widely researched & constantly being researched throughout the corporate as well as academic arena.

• We have studied and implemented 3 different techniques for a particular type of Resource Constrained Scheduling Problem.

• Comparing these 3 techniques, our find is that Genetic Algorithm is giving the best result.

Page 59: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM

FUTURE SCOPE• We are very excited & encouraged by learning the Genetic

Algorithm and being able to implement it in a very small dimension in Project Constrained Resource Scheduling Problem.

• We are interested in implementing the GA tool to solve the Project Constrained Resource Scheduling Problem in multi-objective scenarios and also conflicting objective scenarios, where achieving one constraints means non-optimal solution of another constraints.

• We are looking forward to endeavor in this domain.

Page 60: STUDY ON PROJECT MANAGEMENT THROUGH GENETIC ALGORITHM