Problem 1 prec f max. Algorytm Lawlera dla problemu 1 prec f max. 1 procesor. n zadań T 1,..., T n (ich zbiór oznaczamy przez T )

Podobne dokumenty
Szeregowanie zadań. Wykład nr 3. dr Hanna Furmańczyk

prowadzący dr ADRIAN HORZYK /~horzyk tel.: Konsultacje paw. D-13/325

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II

Sterowanie procesami dyskretnymi

Sortowanie. Kolejki priorytetowe i algorytm Heapsort Dynamiczny problem sortowania:

Administracja sieciowymi systemami operacyjnymi III Klasa - Linux

Przypomnij sobie krótki wstęp do teorii grafów przedstawiony na początku semestru.

Podstawy programowania Laboratorium. Ćwiczenie 2 Programowanie strukturalne podstawowe rodzaje instrukcji

Akademickie Mistrzostwa Polski w Programowaniu Zespołowym

Struktury danych i złozoność obliczeniowa. Prof. dr hab. inż. Jan Magott

Algorytmy i struktury danych. Drzewa: BST, kopce. Letnie Warsztaty Matematyczno-Informatyczne

Algorytmy i Struktury Danych.

1 Wprowadzenie do algorytmiki

Wykład 8. Drzewo rozpinające (minimum spanning tree)

Wstęp do programowania. Drzewa. Piotr Chrząstowski-Wachtel

Wstęp do programowania. Listy. Piotr Chrząstowski-Wachtel

a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] a[10]

Indukowane Reguły Decyzyjne I. Wykład 3

Porządek dostępu do zasobu: procesory obszary pamięci cykle procesora pliki urządzenia we/wy

Algorytmy grafowe. Wykład 2 Przeszukiwanie grafów. Tomasz Tyksiński CDV

ALGORYTMY OPTYMALIZACJI TRAS PRZEJAZDU POJAZDÓW

Rozdział 9 PROGRAMOWANIE DYNAMICZNE

Laboratorium Systemów SCADA

Wykład 3. Złożoność i realizowalność algorytmów Elementarne struktury danych: stosy, kolejki, listy

Podejście zachłanne, a programowanie dynamiczne

Algorytmiczna teoria grafów

Przykładowe B+ drzewo

Algorytmy i Struktury Danych

Egzaminy i inne zadania. Semestr II.

Laboratoria nr 1. Sortowanie

Tadeusz Pankowski

Uniwersytet im. Adama Mickiewicza w Poznaniu Wydział Matematyki i Informatyki. Marek Dębczyński

Algorytmy i język C++

Podstawy programowania funkcjonalnego

Język programowania PASCAL

Algorytmy odkrywania binarnych reguł asocjacyjnych

Zadanie 1: rozproszona wiedza SKJ (2016)

Język C zajęcia nr 5

Złożoność obliczeniowa wybranych problemów szeregowania zadań jednostkowych na równoległych procesorach

SYSTEMY UCZĄCE SIĘ WYKŁAD 3. DRZEWA DECYZYJNE. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

9.4 Czasy przygotowania i dostarczenia

Algorytmy i Struktury Danych, 2. ćwiczenia

a) 7 b) 19 c) 21 d) 34

EGZAMIN - Wersja A. ALGORYTMY I STRUKTURY DANYCH Lisek89 opracowanie kartki od Pani dr E. Koszelew

Reguły asocjacyjne, wykł. 11

Programowanie w VB Proste algorytmy sortowania

Struktury danych: stos, kolejka, lista, drzewo

Wstęp do programowania

Matematyka dyskretna - 7.Drzewa

Przykład rozwiązywania problemu w programie DSS1OPT

Grafem nazywamy strukturę G = (V, E): V zbiór węzłów lub wierzchołków, Grafy dzielimy na grafy skierowane i nieskierowane:

signature GRAPH = sig structure S : ORD SET type node = S.Key.ord key type graph val succ: graph ->node ->S.set val pred: graph ->node ->S.

Spis treści. Przykład. Przykład 1 Przykład 2. Twórcy Informacje wstępne Pseudokod Przykład. 1 Grafy skierowane z wagami - przypomnienie

Harmonogramowanie produkcji

Algorytmy sortujące i wyszukujące

Wyk lad 7: Drzewa decyzyjne dla dużych zbiorów danych

PODSTAWY INFORMATYKI wykład 6.

Szeregowanie zadań o jednostkowych czasach wykonania na dowolnej liczbie identycznych procesorów.

Matematyka dyskretna - wykład - część Podstawowe algorytmy kombinatoryczne

KODY SYMBOLI. Kod Shannona-Fano. Algorytm S-F. Przykład S-F

Wstęp do programowania

INFORMATYKA POZIOM PODSTAWOWY

Po wybraniu formatu wskazujemy ścieżkę, gdzie archiwum ma zostać zapisane. Ścieżka wraz z nazwą pliku zostanie wyświetlona

2:8,7 3:9,4 / \ / \ / \ / \ 4:7,3 5:8 6:9,2 7:4

if (wyrażenie ) instrukcja

Przedmiot: Informatyka w inżynierii produkcji Forma: Laboratorium Temat: Zadanie 4. Instrukcja warunkowa.

Podstawy Programowania Algorytmy i programowanie

Analiza Algorytmów 2018/2019 (zadania na laboratorium)

Algorytmy i Struktury Danych.

Zaawansowane algorytmy. Wojciech Horzelski

Wstęp do systemów wielozadaniowych laboratorium 19 awk

System operacyjny Linux

WHILE (wyrażenie) instrukcja;

Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych. Algorytmy i struktury danych Laboratorium 7. 2 Drzewa poszukiwań binarnych

Automatyczne Diagnozy Partii Szachowych nowa funkcja Zestawienie Ruchów.

Temat zajęć: Tworzenie skryptów powłoki systemu operacyjnego.

TEMAT : System operacyjny MS DOS pliki wsadowe

Informacja o języku. Osadzanie skryptów. Instrukcje, komentarze, zmienne, typy, stałe. Operatory. Struktury kontrolne. Tablice.

Algorytmy i złożoność obliczeniowa. Wojciech Horzelski

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych

PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy.

Znajdowanie skojarzeń na maszynie równoległej

Algorytmy i struktury danych

Sztuczna Inteligencja i Systemy Doradcze

Wiersz poleceń Windows

Podstawy sztucznej inteligencji

Strategia "dziel i zwyciężaj"

Rekurencja. Przykład. Rozważmy ciąg

1 Przygotował: mgr inż. Maciej Lasota

WHILE (wyrażenie) instrukcja;

Struktury danych i złożoność obliczeniowa Wykład 2. Prof. dr hab. inż. Jan Magott

Kolorowanie wierzchołków grafu

Wstęp do programowania. Różne różności

Wprowadzenie do maszyny Turinga

Programowanie dynamiczne

Porządek symetryczny: right(x)

Sztuczna Inteligencja i Systemy Doradcze

Pole wielokąta. Wejście. Wyjście. Przykład

PROGRAM: WYSZUKANIE LICZBY MAKSYMALNEJ

Ćwiczenie 5 Menu programu

Transkrypt:

Joanna Berlińska Algorytmika w projektowaniu systemów - ćwiczenia 1 1 Problem 1 prec f max 1 procesor (ich zbiór oznaczamy przez T ) czas wykonania zadania T j wynosi p j z zadaniem T j związana jest niemalejąca funkcja kosztu f j (jeśli zadanie to zakończy się w chwili t, ponosimy koszt f j (t)) dowolne ograniczenia kolejnościowe minimalizujemy maksymalny koszt wykonania zadania Algorytm Lawlera dla problemu 1 prec f max S = uszeregowanie puste while T do p = p j T j T L = podzbiór zadań z T nieposiadających następników wybierz T k L, takie że f k (p) = min T j L {f j(p)} dopisz zadanie T k na początek uszeregowania S T = T \ {T k }

Joanna Berlińska Algorytmika w projektowaniu systemów - ćwiczenia 1 2 Problem P m in-tree, p j = 1 C max m procesorów czas wykonania każdego zadania równy 1 ograniczenia kolejnościowe definiowane przez graf typu in-tree definiujemy poziom zadania w grafie ograniczeń kolejnościowych jako liczbę zadań na ścieżce od tego zadania do korzenia drzewa Algorytm Hu dla problemu P m in-tree, p j = 1 C max oblicz poziomy wszystkich zadań utwórz listę L t składającą się z wszystkich zadań bez poprzedników w chwili t posortuj L t nierosnąco względem poziomów zadań przydziel m pierwszych zadań (lub wszystkie, jeśli jest ich mniej niż m) z listy L t do różnych procesorów w chwili t usuń przydzielone zadania z grafu ograniczeń kolejnościowych i z listy zadań t = t + 1 until wszystkie zadania zostały uszeregowane

Joanna Berlińska Algorytmika w projektowaniu systemów - ćwiczenia 1 3 Problem P 2 p j = 1, prec C max 2 procesory czas wykonania każdego zadania równy 1 dowolne ograniczenia kolejnościowe przez isucc(t j ) oznaczamy zbiór bezpośrednich następników T j Algorytm Coffmana-Grahama dla problemu P 2 p j = 1, prec C max przydziel etykietę 1 do dowolnego zadania T i, dla którego isucc(t i ) = j = 1 utwórz zbiór S wszystkich zadań bez etykiet, których następniki mają etykiety for all T S do utwórz listę L(T ) zawierającą etykiety zadań ze zbioru isucc(t ) posortuj L(T ) malejąco ustaw listy L(T ) w porządku leksykograficznym L(T [1] ) L(T [ S ] ) przydziel etykietę j + 1 do zadania T [1] j = j + 1 until j == n + 1 wywołaj algorytm Hu, używając etykiet zamiast poziomów zadań

Joanna Berlińska Algorytmika w projektowaniu systemów - ćwiczenia 1 4 Problem P m pmtn C max m procesorów czas wykonania zadania T j wynosi p j wykonywanie zadań można przerywać Algorytm McNaughtona dla problemu P m pmtn C max n Cmax p j = max{ j=1 m, max {p j }} j i = 1 j = 1 if t + p j C max then przydziel zadanie T j do procesora P i od momentu t t = t + p j j = j + 1 else zaczynając w chwili t, przydziel T j do procesora P i na czas C max t p j = p j (C max t) i = i + 1 until j == n + 1

Joanna Berlińska Algorytmika w projektowaniu systemów - ćwiczenia 1 5 Zadanie dodatkowe 1 (1 pkt) Napisz program rozwiązujący problem 1 prec f max przy użyciu algorytmu Lawlera. Program powinien wczytać dane z pliku i zapisać do pliku rozwiązanie problemu w postaci uzyskanej wartości kryterium optymalizacji oraz znalezionego uszeregowania. Termin wykonania: 14.03.2017 Zadanie dodatkowe 2 (1 pkt) Napisz program rozwiązujący problem P 2 p j = 1, prec C max przy użyciu algorytmu Coffmana- Grahama. Program powinien wczytać dane z pliku i zapisać do pliku rozwiązanie problemu w postaci uzyskanej wartości kryterium optymalizacji oraz znalezionego uszeregowania. Termin wykonania: 28.03.2017 Uwaga! Do każdego zadania dodatkowego z APS należy dołączyć w plikach tekstowych: opis przyjętego formatu danych wejściowych i wejściowych, przykładowe dane wejściowe, ewentualnie informacje potrzebne do uruchomienia i przetestowania programu. Programy należy przysłać mailem. Jeśli wysyłany projekt zawiera pliki exe, należy go spakować do formatu rar. Poczta UAM odrzuca maile z załącznikami zip lub 7z zawierającymi pliki exe.