/  
 ДОКУМЕНТІВ 
20298
    КАТЕГОРІЙ 
30
Про проект  Рекламодавцям  Зворотній зв`язок  Контакт 

Метод розгалужень і меж. Евристичні алгоритми. Застосування принципу оптимальності, Детальна інформація

Тема: Метод розгалужень і меж. Евристичні алгоритми. Застосування принципу оптимальності
Тип документу: Реферат
Предмет: Комп`ютерні науки
Автор: Олексій
Розмір: 0
Скачувань: 1085
Скачати "Реферат на тему Метод розгалужень і меж. Евристичні алгоритми. Застосування принципу оптимальності"
Сторінки 1   2   3   4   5  
Існує чимало задач, в яких розв'язок-послідовність будується шляхом "нарощування" часткових розв'язків новими компонентами ai. Умова (19.1) дозволяє відкидати ті часткові розв'язки та всіх їх нащадків, якщо їх вартість не може бути меншою вартості Cmin уже побудованого повного розв'язку. Таким чином, Cmin виступає верхньою межею для вартості розв'язків, які є сенс будувати. Але, як правило, обчислити вартість повного розв'язку можна лише після його побудови. Для запобігання побудови всіх повних розв'язків треба мати можливість оцінювати знизу їх вартість за вартістю побудованих часткових. Чим точнішою буде така оцінка, тим ефективнішим буде скорочення перебору.

Отже, алгоритм розв'язання багатьох задач за методом розгалужень і меж має таку загальну структуру:

Для кожного можливого a1 занести до черги частковий розв'язок

;

Обчислити нижню оцінку E вартості його нащадків, що є

повними розв'язками;

Cmin:=\xF0A5 ;

while (черга не порожня) and (її перший елемент має оцінку E
do

begin

Вилучити з черги її перший елемент Node;

if синами вузла Node є листки then

Обчислити вартість синів Node та за необхідності

запам'ятати нову поточну мінімальну вартість Cmin

else

Обчислити оцінку вартості синів вузла Node та

додати до черги лише тих із них, чия оцінка не більше Cmin

end.

2. Евристичні алгоритми

Повернемося до задачі про розподіл завдань по трьох процесорах і спробуємо розв'язати її у зовсім інший спосіб.

,

0



\x02DC

a

\x00F0

\x161C\xC268\x123D\x3500\x8108\x4A43$\x085C\x6181\x244A\x6D00\x0948\x7304\x0948\x3B04краще розподілити останнє завдання, додавши його час до найменшого з S1, S2, S3, тобто передати його до найменш завантаженого процесора.

Тепер правилом "передати чергове завдання до найменш завантаженого процесора" будемо керуватися при розподілі кожного з завдань. Застосування цього правила виражається алгоритмом, за яким завдання розподіляються без будь-якого перебирання варіантів:

розподілити перші три завдання по одному на процесор;

for i:=4 to n do

Сторінки 1   2   3   4   5  
Коментарі до даного документу
Додати коментар