RESOURCE SCHEDULING ALGORITHMBYSHILPA DAMOR09bit007DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERINGAHMEDABAD-382481April 2013
RESOURCE SCHEDULING ALGORITHMSeminarSubmitted in partial fulﬁllment of the requirementsFor the degree ofBachelor of Technology in Information TechnologyBySHILPA DAMOR09BIT007DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERINGAHMEDABAD-382481April 2013
3CertiﬁcateThis is to certify that the Seminar entitled ”RESOURCE SCHEDULING ALGORITHM(CLOUD COM-PUTING)” submitted by SHILPA DAMOR (09BIT007) , towards the partial fulﬁllment 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, AhmedabadDr.Sanjay GargProfessor and Head of Department,Dept. of Computer Science & Engg.,Institute of Technology,Nirma University, Ahmedabad
4AbstractGoal of a seminar is to understand and research about resource scheduling recently in used and brieﬂydescribe 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 diﬀerent algorithm which are support it. explain support algorithm. application of diﬀerent algorithmThere is one point is resource scheduling algorithm which helpful for resource allocation, resource provisioningneeds reliable and eﬃcient support of negotiation ,monitoring, metering, and feedback
5AcknowledgementsI 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 fulﬁlled successfully.- SHILPA DAMOR.09BIT007
Chapter 1Introduction of cloud computingCloud 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 oﬀers many services across the network. It mainly aims at scal-ability, availability, throughput, and resource utilizationWhat 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 computingHow data is proceeds:Figure 1.1: how data is proceeds8
CHAPTER 1. INTRODUCTION 9structureFigure 1.2: structure of cloud
Chapter 2NEED OF RESOURCESCHEDULING ALGORITHM2.1 About RSA Minimize the variation during the resource demand Improve eﬃciency Reﬂect 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 speciﬁc 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 ﬁrst 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 eﬃciently conﬁguredand 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 service2.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, proﬁtably. From the consumers point of view, users are economy-driven entities when they make the decision touse cloud service10
Chapter 3Types of algorithm genetic algorithm bee algorithm ant colony algorithm work ﬂow algorithm load balance algorithm3.1 genetic algorithm3.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 ﬁnding 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 suggests that more than two ”parents” generate higher qualitychromosomes.11
CHAPTER 3. TYPES OF ALGORITHM 12 terminationThis generational process is repeated until a termination condition has been reached. Common termi-nating conditions are: A solution is found that satisﬁes minimum criteriaFixed number of generations reachedAllocated budget (computation time/money) reachedThe highest ranking solution’s ﬁtness is reaching or has reached a plateau such that successive itera-tions no longer produce better resultsManual inspectionCombinations of the above3.1.3 Advantageused to generate useful solutions to optimization and search problems.3.1.4 disadvantageThe genetic algorithm performed well on someproblems that were very diﬃcult for the branch andbound techniques (i.e. the branch andbound method took a long time to ﬁnd the optimal solutionthe 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 solutionsthe genetic algorithm did not perform well on the jobshop problem3.1.5 application bioinformatics phylogenetics computational science engineering economics chemistry manufacturing mathematics physics
CHAPTER 3. TYPES OF ALGORITHM 133.2 bee algorithm3.2.1 introduction of bee algorithmIt 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 ﬁnds 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 diﬀerentlocation to bring in the food. After every identiﬁcation 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 deﬁne 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 ﬁtness 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 ﬁtness. Select the ﬁttest bee from each patch. Assign remaining bees to search randomly and evaluate their ﬁtness. 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.
CHAPTER 3. TYPES OF ALGORITHM 143.3 ant colony algorithm3.3.1 introduction of ant colony algorithmsame as bee algorithm. it is work done as bee algorithmthe ﬁrst 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 ﬁrst ant ﬁnds 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
CHAPTER 3. TYPES OF ALGORITHM 153.4 work ﬂow algorithm3.4.1 introduction of work ﬂow algorithmWorkﬂow scheduling is the problem of mapping each task to appropriate resource and allowing thetasks to satisfy some performance criterion. Workﬂow is processes that consist of a series of stepswhich simpliﬁes the complexity of executions and management of applications.3.4.2 key conceptThe main concepts dealing in this paper are cloud computing and workﬂow scheduling. Cloud com-puting is a term that involves delivering hosted services over the Internet. Workﬂow scheduling is theproblem of mapping each task to appropriate resource allowing the tasks to satisfy some performancecriterion3.4.3 step of worl ﬂow algorithmA workﬂow 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 applicationsA single workﬂow consists of a set of tasks and each task communicate with another task in theworkﬂow. Workﬂows are supported by Workﬂow Management Systems.Workﬂow scheduling discovers resources and allocates tasks on suitable resources.Workﬂow scheduling plays a vital role in the workﬂow managementProper scheduling of workﬂow can have an eﬃcient impact on the performance of the system.For proper scheduling in workﬂows various scheduling algorithms are used.3.4.4 advantageWith the emerging of cloud computing, cloud workﬂow 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 disadvantageExisting workﬂow 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 workﬂows to a cloud computing environment enables the use of various cloud services tofacilitate workﬂow execution.
CHAPTER 3. TYPES OF ALGORITHM 163.5 load balance algorithm3.5.1 introduction of load balance algorithmwhy 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 applicationOne 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.