17
RESOURCE SCHEDULING ALGORITHM BY SHILPA DAMOR 09bit007 DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING AHMEDABAD-382481 April 2013

Resource scheduling algorithm

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Resource scheduling algorithm

RESOURCE SCHEDULING ALGORITHM

BY

SHILPA DAMOR09bit007

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERINGAHMEDABAD-382481

April 2013

Page 2: Resource scheduling algorithm

RESOURCE SCHEDULING ALGORITHM

Seminar

Submitted in partial fulfillment of the requirements

For the degree of

Bachelor of Technology in Information Technology

By

SHILPA DAMOR09BIT007

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERINGAHMEDABAD-382481

April 2013

Page 3: Resource scheduling algorithm

3

Certificate

This is to certify that the Seminar entitled ”RESOURCE SCHEDULING ALGORITHM(CLOUD COM-PUTING)” submitted by SHILPA DAMOR (09BIT007) , towards the partial fulfillment of the requirementsfor the degree of Bachelor of Technology in information technology of Nirma University of Science and Tech-nology, Ahmedabad is the record of work carried out by him under my supervision and guidance. In myopinion, the submitted work has reached a level required for being accepted for examination. The resultsembodied in this Seminar, to the best of my knowledge, haven’t been submitted to any other university orinstitution for award of any degree or diploma.

Prof. preeti kathiria, Prof. Vibha ptel,Assistant Professor, Associate ProfessorDept. of Computer Science & Engg., Dept. of Computer Science & Engg.,Institute of Technology, Institute of Technology,Nirma University, Ahmedabad Nirma University, Ahmedabad

Dr.Sanjay GargProfessor and Head of Department,Dept. of Computer Science & Engg.,Institute of Technology,Nirma University, Ahmedabad

Page 4: Resource scheduling algorithm

4

Abstract

Goal of a seminar is to understand and research about resource scheduling recently in used and brieflydescribe about various application of resource scheduling.some of topics which covers in the seminar arefollowing:

� what is resource scheduling

� Need of resource scheduling

� resource scheduling algorithm work on different algorithm which are support it.

� explain support algorithm.

� application of different algorithm

There is one point is resource scheduling algorithm which helpful for resource allocation, resource provisioningneeds reliable and efficient support of negotiation ,monitoring, metering, and feedback

Page 5: Resource scheduling algorithm

5

Acknowledgements

I would like to express my heartfelt gratitude to Prof. Vibha patel,Associate Professor in Department ofcomputer science and engineering for his valuable time and guidance that made the seminar project worka success. Thanking all my friends and all those who had helped me in carrying out this work. I am alsoindebted to the library resources centre and interest services that enabled us to ponder over the vast subjectof ”resource scheduling”.I am also gratefull to my Seminar faculty prof. Prof.preeti katheria who gave us enormous advice and helpme in my seminar to be fulfilled successfully.

- SHILPA DAMOR.09BIT007

Page 6: Resource scheduling algorithm

Contents

Abstract 4

List of Figures 7

1 Introduction 8

2 NEED OF RESOURCE SCHEDULING ALGORITHM 102.1 About RSA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.2 Technical aspects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.3 Resource managment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

3 Types of algorithm 113.1 genetic algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3.1.1 introduction of genetic algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113.1.2 step of genetic algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113.1.3 Advantage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123.1.4 disadvantage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123.1.5 application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

3.2 bee algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.2.1 introduction of bee algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.2.2 step of bee algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.2.3 application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

3.3 ant colony algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.3.1 introduction of ant colony algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.3.2 step of ant colony algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.3.3 application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

3.4 work flow algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.4.1 introduction of work flow algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.4.2 key concept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.4.3 step of worl flow algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.4.4 advantage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.4.5 disadvantage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

3.5 load balance algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163.5.1 introduction of load balance algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 163.5.2 application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

3.6 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

6

Page 7: Resource scheduling algorithm

List of Figures

1.1 how data is proceeds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.2 structure of cloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

7

Page 8: Resource scheduling algorithm

Chapter 1

Introduction of cloud computing

Cloud computing is nothing but it is a collection/group of integrated and networked hardware, software andInternet infrastructure (called a platform).

In addition, the platform provides on demand services, that are always on, anywhere, anytime and any place.Cloud computing technology virtualizes and offers many services across the network. It mainly aims at scal-ability, availability, throughput, and resource utilization

What is resource scheduling?

� Resource scheduling is a way of determining schedule On which activities should be performed.

� Demand for resource.

� resources scheduling strategy is the key technology in cloud computing

How data is proceeds:

Figure 1.1: how data is proceeds

8

Page 9: Resource scheduling algorithm

CHAPTER 1. INTRODUCTION 9

structure

Figure 1.2: structure of cloud

Page 10: Resource scheduling algorithm

Chapter 2

NEED OF RESOURCESCHEDULING ALGORITHM

2.1 About RSA

� Minimize the variation during the resource demand

� Improve efficiency

� Reflect reality

� Modifying activities within time , in other word modify resource loading for each unit of time.

2.2 Technical aspects

� Not every technology is absolutely new, but is enhanced to realize a specific feature, directly or as apre-condition.

� Virtualization is an essential characteristic of cloud computing. Virtualization in clouds refers tomulti-layer hardware platforms, operating systems, storage devices, network resources, etc.

� The first prominent feature of virtualization is the ability to hide the technical complexity from users, soit can improve independence of cloud services. Secondly, physical resource can be efficiently configuredand utilized, considering that multiple applications are run on the same machine.

� Thirdly, quick recovery and fault tolerance are permitted.

� Virtual environment can be easily backed up and migrated with no interruption in service

2.3 Resource managment

� From the providers point of view, large scale of virtual machines needs to be allocated to thousands ofdistributed users, dynamically, fairly, and most important, profitably.

� From the consumers point of view, users are economy-driven entities when they make the decision touse cloud service

10

Page 11: Resource scheduling algorithm

Chapter 3

Types of algorithm

� genetic algorithm

� bee algorithm

� ant colony algorithm

� work flow algorithm

� load balance algorithm

3.1 genetic algorithm

3.1.1 introduction of genetic algorithm

� This work describes a genetic algorithm approach to resource-constrained scheduling using a direct,time-based representation

� This document describes a genetic algorithm for finding optimal solutions to dynamic resource-constrainedscheduling problems.

� the genetic algorithm was applied to over 1000 small job shop and project scheduling problems (10-300activities, 3-10 resource types).the algorithm performed fairly well on a wide variety of problems.geneticalgorithms operate on a population of solutions rather than a single solution and employ heuristicssuch as selection, crossover, andmutation to evolve better solutions.

3.1.2 step of genetic algorithm

� it is necessary to encode any possible solution of the problem as population.

� The next step is to generate an initial population from valid chromosomes(population).

� During each successive generation, a proportion of the existing population is selected to breed a newgeneration.

� Genetic operatorsThe next step is to generate a second generation population of solutions from those selected throughgenetic operators: crossover (also called recombination), and/or mutation. For each new solution tobe produced, a pair of ”parent” solutions is selected for breeding from the pool selected previously.By producing a ”child” solution using the above methods of crossover and mutation, a new solution iscreated which typically shares many of the characteristics of its ”parents”. New parents are selectedfor each new child, and the process continues until a new population of solutions of appropriate sizeis generated. Although reproduction methods that are based on the use of two parents are more”biology inspired”, some research[3][4] suggests that more than two ”parents” generate higher qualitychromosomes.

11

Page 12: Resource scheduling algorithm

CHAPTER 3. TYPES OF ALGORITHM 12

� termination

This generational process is repeated until a termination condition has been reached. Common termi-nating conditions are: A solution is found that satisfies minimum criteriaFixed number of generations reachedAllocated budget (computation time/money) reachedThe highest ranking solution’s fitness is reaching or has reached a plateau such that successive itera-tions no longer produce better resultsManual inspectionCombinations of the above

3.1.3 Advantage

used to generate useful solutions to optimization and search problems.

3.1.4 disadvantage

The genetic algorithm performed well on someproblems that were very difficult for the branch andbound techniques (i.e. the branch andbound method took a long time to find the optimal solution

the genetic algorithm did not perform well on problems inwhich the resources were tightly constrained.This comes as little surprise since therepresentation forces the genetic algorithm to search for resource-feasibility, and tightlyconstrained resources mean fewer resource-feasible solutions

the genetic algorithm did not perform well on the jobshop problem

3.1.5 application

� bioinformatics

� phylogenetics

� computational science

� engineering

� economics

� chemistry

� manufacturing

� mathematics

� physics

Page 13: Resource scheduling algorithm

CHAPTER 3. TYPES OF ALGORITHM 13

3.2 bee algorithm

3.2.1 introduction of bee algorithm

It is a nature inspired algorithm which tries to track the activities of bee to get their food.

First they select scout bee to go and search a wide domain of areas, if a scout bee finds a poten-tial food resource it returns to its hive and does a waggle dance which tells other bees the direction andthe distance of the potential food resource. A set of selected bees goes to the food resource and startsbringing in the honey while other scout bees does the same work and sets of bees are sent to differentlocation to bring in the food. After every identification of a food resource the scout bee informs othersand sets its course for other new sites nearby the potential food resource.

Using this activities we define terms as in no of scout bees (n), no of sites selected out of n visited sites(m), no of best sites out of whole set (e), no of bees recruited for the best sites e (nep), no of beesrecruited for other sites (m-e)

3.2.2 step of bee algorithm

� Initialize population with random solutions.

� Evaluate fitness of the population.

� While (stopping criterion not met)

� Select sites for neighborhood search

� Recruit bees for selected sites (more bees for best e sites) and evaluate fitness.

� Select the fittest bee from each patch.

� Assign remaining bees to search randomly and evaluate their fitness.

� End While.

3.2.3 application

� Training neural networks for pattern recognition.

� Forming manufacturing cells.

� Scheduling jobs for a production machine.

� Solving continuous problems and engineering optimization.

� Finding multiple feasible solutions to a preliminary design problems.

� Data clustering

� Optimising the design of mechanical components.

� Multi-Objective Optimisation. a fuzzy logic controller for a robot gymnast. Vision and Image Analysis.

Page 14: Resource scheduling algorithm

CHAPTER 3. TYPES OF ALGORITHM 14

3.3 ant colony algorithm

3.3.1 introduction of ant colony algorithm

same as bee algorithm. it is work done as bee algorithm

the first algorithm was aiming to search for an optimal path in a graph, based on the behavior ofants seeking a path between their colony and a source of food.

3.3.2 step of ant colony algorithm

� The first ant finds the food source (F), via any way (a), then returns to the nest (N), leaving behinda trail pheromone (b)

� Ants indiscriminately follow four possible ways, but the strengthening of the runway makes it moreattractive as the shortest route.

� Ants take the shortest route; long portions of other ways lose their trail pheromones.

3.3.3 application

� Ant Colony Optimization with Fuzzy LogicThis method introduces fuzzy intelligence into ants to accelerate searching ability

Page 15: Resource scheduling algorithm

CHAPTER 3. TYPES OF ALGORITHM 15

3.4 work flow algorithm

3.4.1 introduction of work flow algorithm

Workflow scheduling is the problem of mapping each task to appropriate resource and allowing thetasks to satisfy some performance criterion. Workflow is processes that consist of a series of stepswhich simplifies the complexity of executions and management of applications.

3.4.2 key concept

The main concepts dealing in this paper are cloud computing and workflow scheduling. Cloud com-puting is a term that involves delivering hosted services over the Internet. Workflow scheduling is theproblem of mapping each task to appropriate resource allowing the tasks to satisfy some performancecriterion

3.4.3 step of worl flow algorithm

A workflow enables the structuring of applications in a directed acyclic graph form where each noderepresents the task and edges represent the dependencies between the nodes of the applications

A single workflow consists of a set of tasks and each task communicate with another task in theworkflow. Workflows are supported by Workflow Management Systems.

Workflow scheduling discovers resources and allocates tasks on suitable resources.

Workflow scheduling plays a vital role in the workflow management

Proper scheduling of workflow can have an efficient impact on the performance of the system.

For proper scheduling in workflows various scheduling algorithms are used.

3.4.4 advantage

With the emerging of cloud computing, cloud workflow systems are designed to facilitate the cloud in-frastructure to support large scale distributed collaborative e-business and e-science applications. Themanagement and scheduling of resources in Cloud environment is complex, and therefore demandssophisticated tools for analysis the algorithm before applying them to the real system.

3.4.5 disadvantage

Existing workflow algorithms does not consider the execution time. Therefore there is a need toimplement a new scheduling algorithm that can minimize the execution time in cloud environment.Moving workflows to a cloud computing environment enables the use of various cloud services tofacilitate workflow execution.

Page 16: Resource scheduling algorithm

CHAPTER 3. TYPES OF ALGORITHM 16

3.5 load balance algorithm

3.5.1 introduction of load balance algorithm

why we need load balancing in cloud?to achieve optimal resource utilization, maximize throughput, minimize response time, and avoid over-load. Using multiple components with load balancing, instead of a single component, may increasereliability through redundancy.

The load balancing service is usually provided by dedicated software or hardware, such as a multilayerswitch or a Domain Name System server.

3.5.2 application

One of the most used common applications of load balancing is to provide a single Internet servicefrom multiple servers, sometimes known as a server farm.

Commonly, load-balanced systems include popular web sites, large Internet Relay Chat networks,high-bandwidth File Transfer Protocol sites, Network News Transfer Protocol (NNTP) servers andDomain Name System (DNS) servers.

Lately, some load balancers have evolved to support databases; these are called database load bal-ancers.alancers.

Page 17: Resource scheduling algorithm

CHAPTER 3. TYPES OF ALGORITHM 17

3.6 References

� http://atrak.usc.edu

� http://www.cloudbus.org/cloudsim/doc/readme.txt

� http://en.wikipedia.org

� http://ieeexplore.ieee.org