Влияние върху производителността



страница26/43
Дата21.12.2022
Размер1.47 Mb.
#116011
1   ...   22   23   24   25   26   27   28   29   ...   43
CAA.doc
Свързани:
saap conspect

Философия на алгоритмизирането: Постъпателни алгоритми (greedy алгоритми). Проблемът оптимална диспечеризация


работи поетапно. На всеки етап се взима изглеждащото за най-добро решение, независимо от последиците. Т.е.локален оптимум. Или стратегията е “take what you can get now”.В края на алг.приемаме, че локал.съвпада с глобал.оптимум. Пр.за това е стратегията на връщане на монети: връща на всеки етап монета с мак. възможна ст-ст
$17.61 1*$10 +1*$5 +2*$1 + 2*0.25(quarters) +1*0.1 (dime) + 1*0.01(penny).
Този алгоритъм не работи във всички монетарни системи. Друг пример: авт. трафик.

simple scheduling problem


имаме дадени задачи j1 …jN с времена на изпълнение t1…tN и 1 процесор. Искаме разпределяне с цел мин. средно време на завъшване на задача (т.е. на коя мин. средно завършва задача). (няма прекъсване на задача).
Първата завършва след 15, втората след 23, третата след 26, след 36 общо 100 мин/4 = 25 средно ще завършва задача. Друга подредба е показана по-долу:ср.време 17.75

Стратегията е най-късата задача – най-напред(тя участва най-много във формиране времената на следв.зад).


Това винаги дава оптимално решение. Нека първата пусната задача е j i1…j iN с времена на завършване: t i1, t i1+t i2, t i1 +t i2 +t i3.
Цената на разпределението става:




.

многопоцесорен вариант


Имаме j1……jN; ti….tN и P процесора. Подрежд. първо на късите зад. Нека Р=3:

задача

време

j1

3

j2

5

j3

6

j4

10

j5

11

j6

14

j7

15

j8

18

j9

20

едно решение (започваме с къси задачи и циклим по процесори):



Общо време на завършване 165. Средно 165/9 = 18.33. Друга стратегия (когато Р дели N точно) е: за всеки 0 <= I < N/P поставяме последоват. следващите Р задачи на различен процесор.
I член не зависи от подредбата, а само втория (“к”).
Ако предположим, че в подредба съществува x >y, такова че t ix iy, то ако разменим местата на j ix и j iy, втория член нараства и следоват. общата цена намалява. следоват. всяка подредба в която работите не са наредени в нарастващ ред е неоптимална. Затова се дава приоритет на най-късите задачи първо

минимизация на крайното време на завършване на всички задачи по-горе това е 40 или 38. Ето подредба с t = 34:









очевидно тази подредба не може да се подобри, защото всички са заети през цялото време. Това обаче е друга стратегия – най-късо общо завършване.




Сподели с приятели:
1   ...   22   23   24   25   26   27   28   29   ...   43




©obuch.info 2024
отнасят до администрацията

    Начална страница