Род Стивенс

Книги → Delphi. Готовые алгоритмы → Глава 8. Деревья решений

// Начинаем работать с этим решением как с испытываемым. TrialProfit := TestProfit;

TrialCost := TestCost; for i := 1 to Numltems do

TrialSolution[i] := TestSolution[i] ;

// Повторяем до тех пор, пока не попробуем Max_non_changes // изменений в строке без улучшения. non_changes := 0;

while (non_changes < max_non_changes) do begin

// Удаление k случайных элементов. for removal := 1 to к do RemoveFromSolution;

// Добавление случайных элементов до тех пор, пока не // исчерпан лимит средств. while (AddtoSolution) do ;

// Если это улучшает решение, сохраняем его.

'// В противном случае восстанавливаем исходные значения. if (TestProfit > TrialProfit) then begin

// Сохраняем улучшение.

TrialProfit := TestProfit;

TrialCost := TestCost; for i ;= 1 to Numltems do

TrialSolution[i] := TestSolution[i]; non_changes := 0; // Это хорошее изменение.

end ele6 begin

// Восстановление исходных значений.

TestProfit := TrialProfit;

TestCost := TrialCost; for i := 1 to Numltems do

TestSolution[i] := TrialSolution[i] ; non_changes : = non_changes + 1; // Плохое изменение.

end;

end; // Конец while попытки внесения изменений.

// Если испытание является наилучшим решением на данный момент, // сохраняем его.

if (TrialProfit > BestProfit) tben begin

BestProfit := TrialProfit;

BestCost := TrialCost; for i := 1 to Numltems do

BestSolution[i] := TrialSolutionti]; bad_trials := 0; // Это хорошее испытание.

end eleen

bad trials := bad_trials+l; // Плохое испытание.

f

// Сброс исследуемого решения для следующего испытания. TestProfit := 0;

TestCost := 0; for i :=1 to Numltems do TestSolution[i] := False; until (bad trials >= max bad trials) ; end ;

← предыдущая следующая →

Страницы раздела: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29

Публикация компанией Dropbox кода Zulip – средства общения для IT-разработчиков

20.11.2015
Одной из одобрительно встреченных программистами инициатив, реализующихся в рамках акции Hack Week, стала публикация исходного кода приложения Zulip – веб-приложения для общения между собой разработчиков в сфере IT-технологий.

Объединение ОС Android и Chrome

17.11.2015
Слухи об объединении двух крупнейших ОС компании Google, Android и Chrome, гуляют по Интернету уже более 5 лет, но до сих пор этого не случилось, хотя очевидно, что с течением времени эти ОС становятся всё более похожими: так, в последнее время появилось немало Android-устройств, к которым прилагаются клавиатуры, а Chrome OS «научилась» работать с сенсорными экранами.

Конференция Linux Piter 2015

15.11.2015
Уже почти через неделю в Санкт-Петербурге впервые в истории пройдёт конференция, посвящённая проблемам свободного программного обеспечения – Linux Piter 2015.