0% found this document useful (0 votes)
27 views11 pages

Genetic Algorithm For Project Scheduling With Resource Allocation and Time Constraints

The document discusses the application of Genetic Algorithms (GA) for project scheduling, focusing on resource allocation and time constraints. Key objectives include minimizing makespan, maximizing resource utilization, and ensuring compliance with time windows and task dependencies. The GA employs a fitness function to evaluate solutions, along with selection, crossover, mutation, and replacement strategies to evolve and optimize schedules effectively.

Uploaded by

zainab.fetoh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views11 pages

Genetic Algorithm For Project Scheduling With Resource Allocation and Time Constraints

The document discusses the application of Genetic Algorithms (GA) for project scheduling, focusing on resource allocation and time constraints. Key objectives include minimizing makespan, maximizing resource utilization, and ensuring compliance with time windows and task dependencies. The GA employs a fitness function to evaluate solutions, along with selection, crossover, mutation, and replacement strategies to evolve and optimize schedules effectively.

Uploaded by

zainab.fetoh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 11

Genetic Algorithm for

Project Scheduling with


Resource Allocation
and Time Constraints
Nada mossad abodegham 320210097
Mariam elshebeny 320210081
Mariam amr asal 320210142
Arwa fawzy 320210071
Problem definition
• The problem at hand is project scheduling, where there are specific
dependencies and resource requirements for each task, within a time
window in which they must be executed. Primary objectives are to
effectively assign resources to tasks while ensuring that time
constraints and dependencies between tasks are honored.
Objectives:
• Makespan Minimization: This optimizes on the total time taken to
completely schedule the tasks.
• Maximize resource utilization: resources must be used with the
maximum possible efficiency, avoiding wastage resulting from idle
time.
• Time Window Compliance: the actual scheduling of each task
within its allowed time window.
• Dependency Compliance: Ensuring the scheduling of tasks in a
manner that respects precedence constraints.
Representation of Solution
A chromosome is a possible solution to the scheduling problem. Each
chromosome is a list that is comprised of task assignments. Each
assignment includes the following:
• Task ID: The scheduled Task.
• Time start: The time at which the task starts.
• Resource ID: The resource assigned to the task.

This design enables the GA to explore a wide range of possible


schedules, where each solution can be modified through crossover and
mutation operations for better performance.

The size of the chromosome (solution) is equal to the number of tasks


in the project.
Fitness Function Development
The fitness function evaluates how "good" a solution is (schedule)
based on the penalties associated with violating constraints. The fitness
function maximizes the fitness score, derived from:
• Time Window Violation: If the task is scheduled outside its allowed
time window, a penalty is added.
• Resource Overuse: a small penalty is given when one resource is
over-allocated, meaning it is assigned to more than one task at one
time.
• Dependency Violation: A penalty is added if a task starts before its
dependencies are completed.

fitness_score = 100 - total_penalty , Where total_penalty is the sum


of all penalties incurred by the schedule.
Selection
• The selection process uses Tournament
Selection, where a group of individuals
(chromosomes) are randomly selected from the
population and the individual with the highest
fitness-lowest penalty-is chosen to become a
parent. This selection is repeated until two parents
are selected for crossover. The Tournament
Selection helps in maintaining the diversity and
prevents its early convergence by not always
selecting the best solution.
Crossover
• Single-point crossover is utilized,
whereby two parents exchange parts of
their schedules to form two offspring. A
random selection of a crossover point takes
place, and activities that appear before the
point are inherited from one parent, while
activities after the point are inherited from
another parent. This operator enables the
algorithm to combine strengths of different
solutions.
Mutation
• Mutation happens with probability 0.1.
During that phase, the start time of a randomly
selected task is shifted into a new value within its
time window, or, alternately, a random task is
assigned a different resource. This brings new
genetic material into the population and prevents
the algorithm from becoming stuck in local
optima.
Replacement
• After crossover and mutation, the population is
updated by replacing the old population with the
new generation. Elitism is applied by keeping the
best individuals from the current generation,
ensuring that the best solution is not lost during
the replacement process.
Visualization
Conclusion
• In conclusion, Genetic Algorithms prove to be an
effective method for finding near-optimal
schedules when dealing with resource-constrained
project scheduling. The main advantages lie in the
flexibility of handling complex constraints,
including dependencies, resource allocation, and
time windows, as well as its capability of evolving
solutions through genetic operators. Using proper
selection, mutation, and crossover strategies can
enable the GA to efficiently explore the solution
space and converge toward a high-quality
schedule.

You might also like