13 research outputs found

    Deterministic and stochastic scheduling: : Extended abstracts

    Get PDF

    A graph based process model measurement framework using scheduling theory

    Get PDF
    Software development processes, as a means of ensuring software quality and productivity, have been widely accepted within the software development community; software process modeling, on the other hand, continues to be a subject of interest in the research community. Even with organizations that have achieved higher SEI maturity levels, processes are by and large described in documents and reinforced as guidelines or laws governing software development activities. The lack of industry-wide adaptation of software process modeling as part of development activities can be attributed to two major reasons: lack of forecast power in the (software) process modeling and lack of integration mechanism for the described process to seamlessly interact with daily development activities. This dissertation describes a research through which a framework has been established where processes can be manipulated, measured, and dynamically modified by interacting with project management techniques and activities in an integrated process modeling environment, thus closing the gap between process modeling and software development. In this research, processes are described using directed graphs, similar to the techniques with CPM. This way, the graphs can be manipulated visually while the properties of the graphs-can be used to check their validity. The partial ordering and the precedence relationship of the tasks in the graphs are similar to the one studied in other researches [Delcambre94] [Mills96]. Measurements of the effectiveness of the processes are added in this research. These measurements provide bases for the judgment when manipulating the graphs to produce or modify a process. Software development can be considered as activities related to three sets: a set of tasks (τ), a set of resources (ρ), and a set of constraints (y). The process, P, is then a function of all the sets interacting with each other: P = {τ, ρ, y). The interactions of these sets can be described in terms of different machine models using scheduling theory. While trying to produce an optimal solution satisfying a set of prescribed conditions using the analytical method would lead to a practically non-feasible formulation, many heuristic algorithms in scheduling theory combined with manual manipulation of the tasks can help to produce a reasonable good process, the effectiveness of which is reflected through a set of measurement criteria, in particular, the make-span, the float, and the bottlenecks. Through an integrated process modeling environment, these measurements can be obtained in real time, thus providing a feedback loop during the process execution. This feedback loop is essential for risk management and control

    Scheduling with communication for multiprocessor computation

    Get PDF
    Multiprocessor scheduling houdt zich bezig met de planning van de uitvoering van computer-programma s op een parallelle computer. Een computerprogramma kan worden gezien als een collectie instructies die gegroepeerd zijn in taken. Een parallelle computer is een computer met meerdere processoren die verbonden zijn door een communicatie-netwerk. Elke processor kan taken van een computerprogramma uitvoeren. Tijdens de uitvoering van een computerprogramma op een parallelle computer wordt elke taak ´ e´ en maal uitgevoerd. In het algemeen kunnen de taken van een computerprogramma niet in een willekeurige volgorde worden uitgevoerd: het resultaat van een taak kan nodig zijn om een andere taak uit te voeren. Zulke taken worden data-afhankelijk genoemd. De data-afhankelijkheden defini¨ eren de structuur van het computerprogramma: als taak u2 het resultaat van taak u1 nodig heeft, dan kan u2 pas worden uitgevoerd nadat u1 is voltooid. Als er geen data-afhankelijkheid bestaat tussen twee taken, dan kunnen ze in willekeurige volgorde of tege-lijkertijd worden uitgevoerd. Als twee data-afhankelijke taken u1 en u2 op verschillende processoren worden uitgevoerd, dan moet het resultaat van u1 naar de processor die u2 uitvoert worden overgebracht. Dit transport van informatie wordt communicatie genoemd. Het resultaat van u1 kan naar een andere processor worden overgebracht door het sturen van berichten door het communicatie-netwerk. Een schedule geeft voor elke taak aan welke processor hem uitvoert en op welk tijdstip. Het doel van multiprocessor scheduling is het construeren van een schedule van zo kort mogelijke duur, rekening houdend met de communicatie veroorzaakt door de data-afhankelijkheden tussen de taken. De duur van een schedule wordt in grote mate bepaald door de hoeveelheid communi-catie in het schedule: de duur van een schedule kan toenemen doordat een processor lange tijd geen taken kan uitvoeren, omdat hij staat te wachten op het resultaat van een taak die op een andere processor wordt uitgevoerd. Omdat de wijze waarop processoren van parallelle computers communiceren verschilt per computer, is het uiterst moeilijk om op effici¨ ente wijze goede schedules te construeren voor een computerprogramma op een parallelle computer. Daarom wordt in het algemeen een model van een parallelle computer gebruikt in plaats een echte parallelle computer. Zo n model wordt een parallel berekeningsmodel genoemd. In een parallel berekeningsmodel kan men zich concen-treren op die aspecten van communicatie die een grote invloed hebben op de kwaliteit van een schedule. Dit geeft de mogelijkheid deze aspecten beter te begrijpen. In dit proefschrift worden twee parallelle berekeningsmodellen beschouwd: het UCT model en het LogP model. Het UCT model richt zich op het bestuderen van ´ e´ en aspect van commu-nicatie: een tijdvertraging die nodig is om resultaten tussen processoren te transporteren. Het LogP model is een model dat meerdere aspecten van communicatie in acht neemt: door middel van een geschikt gekozen invulling van zijn parameters L, o, g en P kan het LogP model de communicatie in vele parallelle computers modelleren. Communicatie in het UCT model werkt als volgt. Als taak u2 het resultaat van taak u1 nodig heeft en deze taken zijn op verschillende processoren uitgevoerd, dan moet er een vertraging van tenminste ´ e´ en tijdstap zijn tussen de tijd waarop u1 wordt voltooid en de tijd waarop u2 start. 171?Deze vertraging is nodig om het resultaat van u1 naar de processor die u2 uitvoert te sturen. Als u1 en u2 op dezelfde processor worden uitgevoerd, dan is het resultaat van u1 al op de juiste processor beschikbaar en is er geen vertraging nodig. In dat geval kan u2 direct na u1 worden uitgevoerd. Communicatie in het LogP model is veel ingewikkelder. Beschouw wederom twee data-afhankelijke taken u1 en u2 die op verschillende processoren worden uitgevoerd. Neem aan dat het resultaat van u1 moet worden getransporteerd naar de processor die u2 uitvoert. In vele gevallen kan het transporteren van het resultaat van een taak niet met ´ e´ en bericht, maar zijn meerdere berichten nodig. Deze moeten naar de processor die u2 uitvoert worden gestuurd. Het versturen van ´ e´ en bericht kost o tijdstappen op de processor die u1 uitvoert; het ontvangen ervan kost o tijdstappen op de processor die u2 uitvoert. Daarnaast kan elke processor ten hoogste ´ e´ en bericht versturen of ontvangen in elke g opeenvolgende tijdstappen en is er een vertraging van precies L tijdstappen tussen het versturen en het ontvangen van een bericht. In het eerste deel van dit proefschrift (hoofdstukken 3, 4, 5, 6 en 7) worden algoritmen be-schreven die op effici¨ ente wijze schedules in het UCT model construeren. In hoofdstuk 4 wordt een algoritme beschreven dat goede schedules construeert voor willekeurige computerprogram-ma s. Voor computerprogramma s met een outforest-structuur construeert dit algoritme optimale schedules. In hoofdstuk 5 beschrijven we algoritmen die goede schedules construeren voor com-puterprogramma s met een inforest-structuur. De algoritmen die worden beschreven in hoofd-stukken 6 en 7 construeren optimale schedules voor computerprogramma s waarin het maximum aantal paarsgewijs data-onafhankelijke taken klein is en voor computerprogramma s met een in-terval order-structuur. Het tweede deel van dit proefschrift (hoofdstukken 8, 9, 10 en 11) houdt zich bezig met scheduling in het LogP model. In hoofdstukken 9 en 10 bewijzen we dat het construeren van optimale schedules voor computerprogramma s met een zeer eenvoudige boomstructuur (send graph-structuur of receive graph-structuur) waarschijnlijk niet op effici¨ ente wijze mogelijk is. In deze hoofdstukken worden effici¨ ente algoritmen beschreven die goede (maar niet noodzake-lijk optimale) schedules construeren voor computerprogramma s met een dergelijke structuur. In hoofdstuk 11 worden decompositie-algoritmen gebruikt om op effici¨ ente wijze schedules te construeren voor computerprogramma s met een algemene boomstructuur. Het blijkt dat optimale schedules in het UCT model op effici¨ ente wijze kunnen worden ge-construeerd als de structuur van de computerprogramma s eenvoudig is (bijvoorbeeld computer-programma s met een boomstructuur). De eenvoudige aard van de communicatie in het UCT model maakt dit mogelijk. Vandaar dat de complexiteit van scheduling in het UCT model met name bepaald wordt door de structuur van de computerprogramma s. Daarentegen maakt de communicatie het moeilijk om goede schedules in het LogP model te construeren, zelfs als de structuur van de computerprogramma s zeer eenvoudig is (bijvoorbeeld computerprogramma s met een send graph-structuur). Hieruit blijkt dat de complexiteit van scheduling in het LogP model in grote mate wordt bepaald door de ingewikkelde vorm van communicatie in dit model. 17

    Makespan Minimization in Re-entrant Permutation Flow Shops

    Get PDF
    Re-entrant permutation flow shop problems occur in practical applications such as wafer manufacturing, paint shops, mold and die processes and textile industry. A re-entrant material flow means that the production jobs need to visit at least one working station multiple times. A comprehensive review gives an overview of the literature on re-entrant scheduling. The influence of missing operations received just little attention so far and splitting the jobs into sublots was not examined in re-entrant permutation flow shops before. The computational complexity of makespan minimization in re-entrant permutation flow shop problems requires heuristic solution approaches for large problem sizes. The problem provides promising structural properties for the application of a variable neighborhood search because of the repeated processing of jobs on several machines. Furthermore the different characteristics of lot streaming and their impact on the makespan of a schedule are examined in this thesis and the heuristic solution methods are adjusted to manage the problem’s extension

    New utilization criteria for online scheduling

    Get PDF
    In the classical scheduling problems, it has been assumed that complete knowledge of the problem was available when it was to be solved. However, scheduling problems in the real world face the possibility of the lack of the knowledge. Uncertainties frequently encountered in scheduling environments include the appearance of new jobs and unknown processing times. In this work, we take into account these realistic issues. This thesis deals with the problem of non-preemptive scheduling independent jobs on m identical parallel machines. In our online model, the jobs are submitted over time non-clairvoyantly. Therefore, the processing times of the jobs are unknown until they complete. Further, we assume that the ratio of weight to processing time is equal for all jobs, that is, all jobs have the same priorities. The jobs are assigned to the machines in a nondelay fashion. Our main scheduling objective is to maximize the utilization of the system. We show that the commonly used makespan criterion usually cannot reflect the true utilization of this kind of online scheduling problems. For this reason, it is very important to find another criterion capable of evaluating system utilization. Therefore, we introduce two new alternative criteria that more accurately capture the utilization of the machines. Moreover, we derive competitive factors for both criteria. Those competitive factors are tight for one criterion and almost tight for the other. Finally, we present an experimental investigation to evaluate the performance of the nondelay online algorithm with respect to our criteria. The experimental results show the confirmation of our theoretical results

    Serial batch processing machine scheduling: a cement industry case study

    Get PDF
    Dissertação de mestrado em Engenharia de SistemasThis work arises in the Cement Industry in the process of scheduling the clients to the warehouse and assignment to docking bays. The goal is to solve the scheduling and assignment problem, to improve both company’s service levels and the efficiency of its resources. After the real problem analysis, it was possible to conclude that it could be solved as a batching machine scheduling problem, where the jobs are the clients to be schedule, and the machine is the warehouse. The problem can be described as max 1 | rj,s-batch | Cmax . A Mixed Integer Linear Programming (MILP) model was proposed. However, as the number of jobs increased it started having computational difficulties. To overcome the problems of the MILP model two heuristics were proposed. The first one is a Constructive Algorithm (CA) that creates a first solution for the problem. The second heuristic is a metaheuristic algorithm, based on Simulated Annealing procedures, that starts with the initial solution of the CA and through three possible moves starts constructing the neighboring solutions space. After constructing the neighboring solutions space, it returns the best solution found. The computational tests proved that both the MILP model and the heuristics can ensure both feasible and optimum solutions. However, the MILP model consumes more computational resources. For some larger instances and giving a maximum limit of computational time of 8 hours, the MILP model cannot reach the optimality, nor the good results obtained by the heuristics, for those larger instances. The machine scheduling is a good approach for scheduling the trucks to the warehouse. Since it is also an innovative approach for the problem, considering the literature studied, maybe this work will inspire others to work on this idea or, at least, serve as a basis for future researches.Este trabalho tem como cenário a Indústria Cimenteira no processo de agendamento de clientes para atendimento no armazém e atribuição de pontos de carga. O objetivo é resolver o problema de agendamento visando otimizar tanto os níveis de serviço da empresa bem como a eficiência dos seus recursos. Depois da análise detalhada do problema real foi possível concluir que este podia ser resolvido como um problema de processamento em lotes em máquina única, onde as tarefas a agendar seriam os clientes e a máquina o armazém. O problema pode então ser descrito como 1 | rj,s-batch | Cmax . Um modelo de Programação Linear Inteira Mista (PLIM) foi proposto. Contudo, à medida que o número de tarefas aumentava, o modelo começava a ter dificuldades computacionais na obtenção de solução ótima. Para ultrapassar essas dificuldades, foram desenhadas e propostas duas heurísticas. A primeira é um Algoritmo Construtivo (AC) capaz de retornar uma solução inicial. A segunda, uma meta-heurística, baseada na abordagem do Simulated Annealing, que trabalha a solução inicial gerada pelo AC, através de três movimentos possíveis, e gera uma vizinhança de soluções. Depois, procura e retorna a melhor solução possível dessa vizinhança. Os testes computacionais provaram que tanto o modelo de PLIM como as heurísticas são capazes de retornar tanto soluções possíveis como ótimas. Contudo, o modelo de PLIM consome muitos mais recursos computacionais do que as heurísticas. Para instâncias de tamanho superior, dado um tempo de computação máximo de 8 horas, o PLIM, não conseguindo atingir a solução ótima, nem sequer consegue atingir soluções tão boas como as das heurísticas. A abordagem de agendamento em máquinas, utilizada neste trabalho, mostrou-se ser uma boa abordagem para o agendamento de clientes no armazém. Para além disso, esta é uma abordagem inovadora, tendo em conta a literatura estudada, e, talvez possa inspirar outros autores a trabalhar nesta ideia ou então servir de base para pesquisas futuras

    Theory and Engineering of Scheduling Parallel Jobs

    Get PDF
    Scheduling is very important for an efficient utilization of modern parallel computing systems. In this thesis, four main research areas for scheduling are investigated: the interplay and distribution of decision makers, the efficient schedule computation, efficient scheduling for the memory hierarchy and energy-efficiency. The main result is a provably fast and efficient scheduling algorithm for malleable jobs. Experiments show the importance and possibilities of scheduling considering the memory hierarchy

    An investigation of changeover sensitive heuristics in an industrial job shop environment

    Get PDF
    EThOS - Electronic Theses Online ServiceGBUnited Kingdo
    corecore