Seznámení se se zvolenou pokročilou iterativní metodou na problému batohu



Podobné dokumenty
Řešení problému vážené splnitelnosti booleovské formule pokročilou iterativní metodou

Experimentální hodnocení kvality algoritmů

Řešení problému batohu dynamickým programováním, metodou větví a hranic a aproximativním algoritmem

ČVUT FEL X36PAA - Problémy a algoritmy. 4. úloha - Experimentální hodnocení algoritmů pro řešení problému batohu

ČVUT FEL X36PAA - Problémy a algoritmy. 5. úloha - Seznámení se se zvolenou pokročilou iterativní metodou na problému batohu

2. úkol MI-PAA. Jan Jůna (junajan)

3. úloha - problém batohu metodami branch & bound, dynamické programování, heuristika s testem

MI-PAA. úkol č.3. Řešení problému batohu dynamickým programováním, metodou větví a hranic a aproximativním algoritmem

BAKALÁŘSKÁ PRÁCE. Numerické metody jednorozměrné minimalizace

Citlivostní analý za pojistna sazba

Elektronizace správních řízení a jejich příprava na základní registry

2.4.8 Další příklady s grafy funkcí s absolutní hodnotou

ZADÁVACÍ DOKUMENTACE

DYNAMICKÉ PROGRAMOVÁNÍ A PROBLÉM BATOHU

Testovací protokol. OpenSSL 1.0.0e. sada PIIX3; 1 GB RAM; harddisk 20 GB IDE OS: Windows Vista Service Pack 2 SW: JSignPDF 1.1.1

VÝVOJ KOJENECKÉ ÚMRTNOSTI V ČESKÉ REPUBLICE V LETECH

DESIGN HALOGENOVÝCH VÝBOJEK

Implementace numerických metod v jazyce C a Python

Mendelova zemědělská a lesnická univerzita v Brně

OZNÁMENÍ O ZÁMĚRU PRODAT NEPOTŘEBNÝ MAJETEK IV.

Kupní smlouva o dodávce IT vybavení 2013

Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky. referát do předmětu: Pokročilé architektury počítačů.

- kvalitní dokumentace k SW je vyžadovaným STANDARDEM. vzájemná provázanost SW (IS) ve velkých společnostech. aktuální přehledná srozumitelná

Město Rokytnice v Orlických horách, náměstí Jindřicha Šimka 3, Rokytnice v Orlických horách

Návrh výměníku pro využití odpadního tepla z termického čištění plynů

Semestrální práce KIV/PC Řešení kolizí frekvencí sítě vysílačů Zdeněk Bečvář A14B0466P 10. ledna 2016

Dodatečná informace č. 1

ROZPOZNÁVÁNÍ AKUSTICKÉHO SIGNÁLU ŘEČI S PODPOROU VIZUÁLNÍ INFORMACE

Příloha 1 - stav oběhu papírových dokumentů před implementací systému

Spolehlivý pracant HAL3000 EliteWork II s nízkou spotřebou energie

Aritmetika s velkými čísly na čipové kartě

Operační systémy. Přednáška 8: Správa paměti II

Studentská tvůrčí a odborná činnost STOČ 2015

PROBLÉM ČTYŘ BAREV. Lze obarvit jakoukoliv mapu v rovině čtyřmi barvami tak, aby žádné dvě sousedící oblasti neměly stejnou barvu?

aniel Dvořák, Martin Mičan Liberec Windows Server 2012/R2 Migrační scénáře

STATUTÁRNÍ MĚSTO OPAVA

Zadavatel: Předmět plnění: Specifikace poptávaného zboží : Termín plnění zakázky: Místo plnění zakázky:

Technická specifikace ČÁST 1. Místo plnění: PČR Kriminalistický ústav Praha, Bartolomějská 10, Praha 1

Maturitní témata. Informační a komunikační technologie. Gymnázium, Střední odborná škola a Vyšší odborná škola Ledeč nad Sázavou.

Porovnání rychlosti mapového serveru GeoServer při přístupu k různým datovým skladům

ČESKÁ ZEMĚDĚLSKÁ UNIVERZITA V PRAZE. Teze diplomové práce

Výzva k podání nabídky a zadávací dokumentace

Výzva k podání nabídek (pro účely uveřejnění na nebo www stránkách krajů)

Vysoká škola technická a ekonomická v Českých Budějovicích. Institute of Technology And Business In České Budějovice

Výzva k podání nabídky včetně zadávací dokumentace na veřejnou zakázku malého rozsahu

Pokročilé architektury počítačů

ÚŘAD PRO OCHRANU HOSPODÁŘSKÉ SOUTĚŽE Brno, Joštova 8 ROZHODNUTÍ. Č.j.: VZ/S 48/06/DO-VP/550/ZH V Praze dne

PRAKTIKUM I. Oddělení fyzikálních praktik při Kabinetu výuky obecné fyziky MFF UK

Analýza a vyhodnocení. zdravotního stavu. obyvatel. města TŘEBÍČ. Zdravá Vysočina, o.s. ve spolupráci se Státním zdravotním ústavem

Úvod do mobilní robotiky AIL028

Vlastnosti produktu. Neutuchající pracovní nasazení s HAL3000 EliteWork

Hardwarová akcelerace HD videa v návaznosti na architektury čipu grafických karet

MĚSTSKÁ ČÁST PRAHA 12 RADA MĚSTSKÉ ČÁSTI USNESENÍ. č. R ze dne

Mgr. Filip Kořínek, starosta v. r.

jednoduchá heuristika asymetrické okolí stavový prostor, kde nelze zabloudit připustit zhoršují cí tahy Pokročilé heuristiky

Práce s velkými sestavami

Popis prostředí MOSAIC Programové prostředí MOSAIC nastavení prostředí. Po spuštění Mosaiku se objeví okno Výběr skupiny projektů

Vysoká škola technická a ekonomická v Českých Budějovicích. Institute of Technology And Business In České Budějovice

Vizuální programovací jazyk

Vlastnosti produktu. Neutuchající pracovní nasazení s HAL3000 EliteWork

ZADÁVACÍ DOKUMENTACE

TECHNICKÁ UNIVERZITA V LIBERCI EKONOMICKÁ FAKULTA. VZOR PŘIJÍMACÍ ZKOUŠKY DO NAVAZUJÍCÍHO STUDIA Obor: Manažerská informatika

X-Sign Basic Uživatelská příručka

Procesor. Procesor FPU ALU. Řadič mikrokód

Spready únor Obiloviny a olejniny. Pšenice prosinec / květen

Technická specifikace předmětu zakázky

MEZINÁRODNÍ AUDITORSKÝ STANDARD ISA 530 VÝBĚR VZORKŮ

Informační Systém pro Psychiatrii HIPPO

ZADÁVACÍ DOKUMENTACE

TECHNICKÁ SPECIFIKACE

DOJÍŽĎKA A VYJÍŽĎKA DO ZAMĚSTNÁNÍ DO/Z HL. M. PRAHY

Iterační výpočty. Dokumentace k projektu č. 2 do IZP. 24. listopadu 2004

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ FAKULTA INFORMAČNÍCH TECHNOLOGIÍ. Uživatelská příručka k programu FloodFilling Art

Zadávací dokumentace

Strana Strana 27-7

Výměna Databázového serveru MS SQL

Zadávací dokumentace k výzvě k podání nabídky na dodávku 11 Notebooků dle specifikace

1 Test 1 naivní vs standardní

VYSOKÁ ŠKOLA EKONOMICKÁ V PRAZE. Optimalizace trasy při revizích elektrospotřebičů

Zadávací dokumentace

GRAFICKÉ ROZHRANÍ V MATLABU PRO ŘÍZENÍ DIGITÁLNÍHO DETEKTORU PROSTŘEDNICTVÍM RS232 LINKY

ANALÝZA STRUKTURY A DIFERENCIACE MEZD ZAMĚSTNANCŮ EMPLOEE STRUCTURE ANALYSIS AND WAGE DIFFERENTIATION ANALYSIS

Software je ve světě IT vše, co není Hardware. Do softwaru patří aplikace, program, proces, algoritmus, ale i data (text, obrázky), operační systém

Zadávací podmínky soutěže: Dodávka HW a SW vybavení pro střediska SIM na území ČR. Zadavatel:

11. Tabu prohledávání


Informace ke stavu celoměstsk xxx

Článek I Předmět smlouvy 1. Prodávající se touto smlouvou zavazuje:

Minimální požadavky na HW:

Cílem kapitoly je seznámit studenta s pamětmi. Jejich minulostí, současností a hlavnímu parametry.

CAM řešení pro SolidWorks


ZADÁVACÍ DOKUMENTACE K VEŘEJNÉ ZAKÁZCE: DODÁVKA VÝPOČETNÍ TECHNIKY. Stránka 1 z 13

Smlouva o dílo uzavřená na základě veřejné zakázky Elektronizace správních řízení a jejich příprava na základní registry SMLOUVA O DÍLO

SYLABUS PŘEDNÁŠKY 6a Z INŽENÝRSKÉ GEODÉZIE (Polohové vytyčovací sítě) 4. ročník bakalářského studia studijní program G studijní obor G

Písemná zpráva zadavatele

Testovací protokol. 1 Informace o testování. 2 Testovací prostředí. 3 Vlastnosti generátoru klíčů. Příloha č. 11. Testovaný generátor: Portecle 1.

DigiScan DS-01/DS-02

PREDIKCE DÉLKY KOLONY V KŘIŽOVATCE PREDICTION OF THE LENGTH OF THE COLUMN IN THE INTERSECTION

Transkript:

4. 12. 213 MI-PAA úkol č. 4 Antonín Daněk Seznámení se se zvolenou pokročilou iterativní metodou na problému batohu 1 SPECIFIKACE ÚLOHY Cílem tohoto úkolu bylo seznámit se s vybranou pokročilou iterativní metodou pro řešení problému batohu. Předmětem zprávy je popis zvoleného algoritmu a především měření pro různá nastavení konfiguračních proměnných. Více informací viz odpovídající stránka na Eduxu. 2 ROZBOR MOŽNÝCH VARIANT ŘEŠENÍ Bylo se třeba rozhodnout pro jeden z těchto algoritmů: Simulované ochlazování Genetické algoritmy Tabu search Vybral jsem simulované ochlazování. 3 POPIS POSTUPU ŘEŠENÍ A ALGORITMU Algoritmus Simulované ochlazování je iterativní heuristika, což znamená, že se snaží z určitého počátečního řešení postupně dopracovat k řešení co nejlepšímu. V mém případě jsem se rozhodl vycházet z náhodného řešení, ale mohli bychom vycházet i např. z řešení triviálního. Základní parametry algoritmu jsou: Equilibrium (rovnovážná poloha) Počáteční teplota Teplota tuhnutí Rychlost chlazení Algoritmus pracuje tak dlouho, dokud z počáteční teploty nedosáhne teploty tuhnutí, ke které se dostává postupně násobením aktuální teploty koeficientem rychlosti chlazení, což musí být číslo menší než 1, aby docházelo ke zmenšování teploty. Toto zajištuje vnější smyčka algoritmu. Uvnitř je další smyčka, jejíž počet opakování je dán hodnotou Equilibria. Ve vnitřní smyčce algoritmus nalezne souseda (který je řešením) inverzí jednoho náhodného bitu aktuálního stavu. Následně se ověří, jestli je tento náhodný soused lepší nebo horší. Pokud je lepší, vždy se přijme. Pokud je horší, přijme se s určitou pravděpodobností, která je dána aktuální teplotou a vzdáleností od aktuálně nejlepšího řešení. Čím horší řešení je, tím menší pravděpodobnost, že bude přijato. Ale čím vyšší je teplota, tím je větší šance, že i poměrně o hodně horší řešení bude přijato. Smysl tohoto je vymanit se z lokálních minim. 1

4. 12. 213 MI-PAA úkol č. 4 Antonín Daněk Pravděpodobnost přijetí horšího řešení je počítána na základě vztahu: e -rozdíl_ceny/aktuální_teplota. Je nutno dodat, že přijetím řešením není myšleno, že je považováno za aktuálně nejlepší, i když nám ve skutečnosti nejlepší řešení zhoršuje. Pouze je přijato jako aktuální stav do další iterace algoritmu. Po ukončení vnitřní smyčky je snížena teplota a pokud nedošlo k teplotě tuhnutí, opakujeme vnitřní smyčku znovu s novou teplotou. 4 NAMĚŘENÉ VÝSLEDKY 4.1 HW / SW KONFIGURACE TESTOVACÍHO SYSTÉMU CPU Intel Core 2 Duo; 2.26 GHz, 2.27 GHz 4 GB RAM OS Windows 8 64-bit Java 7 4.2 ZPŮSOB MĚŘENÍ Čas byl měřen pomocí třídy ThreadMXBean a byl průměrován přes všechny instance velikosti 4 (až na měření rozdílu mezi velikostmi instancí). Relativní chyby heuristik jsem počítal dle vzorce ε = ( C(OPT) - C(APX) ) / C(OPT) a byly počítány průběžně, ne na finálním součtu cen. Cena optimálního řešení nebyla počítána žádným úplným algoritmem ale převzata z oficiálně poskytnutých řešení. 4.3 VÝSLEDKY Interpretace výsledků je v závěru. 4.3.1 Equilibrium parametr hodnota Equilibrium 1-256 Počáteční teplota 5 Teplota tuhnutí 5 Rychlost chlazení,97 Velikost instance 4 2

Doba běhu [ns] Relativní chyba 4. 12. 213 MI-PAA úkol č. 4 Antonín Daněk equlibrium Rel. chyba Doba běhu [ns] 1,79373 1875 2,62853 25 4,45667 45 8,32489 75625 16,2178 14625 32,1435 2666666 64,9434 5421875 128,5596 19375 256,389 2146875,9 Equilibrium - relativní chyba,8,7,6,5,4,3,2,1 5 1 15 2 25 3 Equilibrium 25 Equilibrium - doba běhu 2 15 1 5 5 1 15 2 25 3 Equilibrium 3

Relativní chyba 4. 12. 213 MI-PAA úkol č. 4 Antonín Daněk 4.3.2 Počáteční teplota parametr hodnota Equilibrium 4 Počáteční teplota 1-64 Teplota tuhnutí 2 Rychlost chlazení,97 Velikost instance 4 Počáteční teplota Rel. chyba Doba běhu [ns] 1,121492 1328125 2,66495 1865625 4,2237 238125 8,12463 293125 16,12356 334375 32,12517 384375 64,12725 428125,14 Počáteční teplota - relativní chyba,12,1,8,6,4,2 1 2 3 4 5 6 7 Počáteční teplota 4

Doba běhu [ns] 4. 12. 213 MI-PAA úkol č. 4 Antonín Daněk 45 4 35 3 25 2 15 1 5 Počáteční teplota - doba běhu 1 2 3 4 5 6 7 Počáteční teplota 4.3.3 Teplota tuhnutí parametr hodnota Equilibrium 4 Počáteční teplota 5 Teplota tuhnutí 4-,5 Rychlost chlazení,97 Velikost instance 4 Teplota tuhnutí Rel. chyba Doba běhu [ns] 4,1917 21875 2,12849 5625 1,8354 1125 8,64984 121875 6,47874 15625 4,369 1875 2,1744 221875 1,14782 29375 5,12916 35625 2,11835 428125 1,12494 471875,5,124 53125 5

Doba běhu [ns] Relativní chyba 4. 12. 213 MI-PAA úkol č. 4 Antonín Daněk,25 Teplota tuhnutí - relativní chyba,2,15,1,5 5 1 15 2 25 3 35 4 45 Teplota tuhnutí 6 Teplota tuhnutí - doba běhu 5 4 3 2 1 5 1 15 2 25 3 35 4 45 Teplota tuhnutí 4.3.4 Rychlost chlazení parametr hodnota Equilibrium 4 Počáteční teplota 5, calculated Teplota tuhnutí 5 Rychlost chlazení,8,97 Velikost instance 4 6

Relativní chyba 4. 12. 213 MI-PAA úkol č. 4 Antonín Daněk Koeficient chlazení Relativní chyba T init =5 Doba běhu [ns] T init =5 Relativní chyba T init =calculated 5:5 Doba běhu [ns] T init =calculated 5:5,8,43357 46875,41978 625,81,41629 475,42322 6875,82,39925 55,4567 65625,83,39262 53125,3871 78125,84,36692 6125,37868 73125,85,3645 65625,3543 75,86,3394 7,33198 78962,87,32229 75,3289 851562,88,349 825,31323 945312,89,28621 9125,29363 992187,9,2726 975,27433 1117187,91,25441 162499,25277 1242187,92,237 1239582,23674 146249,93,21792 1447916,2273 164166,94,19328 164625,19668 1822916,95,17793 2625,17791 2145832,96,14684 271875,15157 2729166,97,13179 34625,12665 3614583,98,9213 54625,9482 551416,99,5784 19375,546 11447916 Rychlost chlazení - relativní chyba,5,45,4,35,3,25,2,15,1,5,75,8,85,9,95 1 1,5 Koeficient chlazení t=5 t=calculated 5:5 7

Doba běhu [ns] 4. 12. 213 MI-PAA úkol č. 4 Antonín Daněk 14 12 1 8 Rychlost chlazení - doba běhu 6 4 2,75,8,85,9,95 1 1,5 Koeficient chlazení t=5 t=calculated 5:5 4.3.5 Velikost instance parametr hodnota Equilibrium 4 Počáteční teplota 5 Teplota tuhnutí 2 Rychlost chlazení.97 Velikost instance 2-4 Velikost instance Relativní chyba Doba běhu [ns] 2,5161 14 22,8691 16875 25,721 2 27,9841 2296875 3,1495 26875 32,9911 2828125 35,126 33125 37,11319 3625 4,11971 4125 8

Doba běhu [ns] Relativní chyba 4. 12. 213 MI-PAA úkol č. 4 Antonín Daněk,14 Velikost instance - relativní chyba,12,1,8,6,4,2 15 2 25 3 35 4 45 Velikost instance Velikost instance - doba běhu 45 4 35 3 25 2 15 1 5 15 2 25 3 35 4 45 Velikost instance 5 ZÁVĚR 5.1 EQUILIBRIUM Při zvětšování velikosti rovnovážné polohy, nebo-li počtu pokusů o nalezení souseda nám doba běhu roste téměř přesně lineárně. S přihlédnutím k tomu, jak algoritmus funguje, toto dává smysl. Vnitřní cyklus se prodlužuje přesně podle velikosti této hodnoty. O něco zajímavější je vliv této hodnoty na relativní chybu. Jak je vidět, ta se snižuje po inverz ní logaritmické křivce. Z tohoto měření se zdá být ideální hodnota equilibria přibližně na hodnotě 5 pro 9

4. 12. 213 MI-PAA úkol č. 4 Antonín Daněk dosažení nejlepšího poměru chyba / doba běhu. Vzhledem k tomu, že testování probíhalo na instancích o velikosti 4, můžeme též říci, že vhodná hodnota je právě velikost intsance. 5.2 POČÁTEČNÍ TEPLOTA Doba běhu roste s počáteční teplotou logaritmicky, její zvětšování nám tedy nečiní velký problém. S přihlédnutím ke grafu relativní chyby je však zvětšování teploty od hodnoty 1 nesmyslné již nedochází k dalšímu zlepšování výsledků. Toto měření nastiňuje, že při dostatečně pomalém chlazení není třeba příliš velké počáteční teploty. 5.3 TEPLOTA TUHNUTÍ Teplota tuhnutí má do jisté míry obdobné vlastnosti jako počáteční teplota (inverzně). Při jejím růstu nám dochází inverzně logaritmicky ke zrychlování běhu, ale lineárně nám roste chyba. Z tohoto důvodu bych navrhoval zvolit co nejnižší teplotu tuhnutí, protože za cenu logaritmického zpomalení dostaneme lineární zlepšení. Navrhuji teploty 1-2 stupně. 5.4 RYCHLOST CHLAZENÍ Doba běhu opět roste s rostoucím koeficientem chlazení (chladíme pomaleji) logaritmicky (zrcadlově), ale zároveň chyba klesá lineárně. Je tedy vhodné chladit co nejpomaleji. Algoritmus je však velmi zpomalen, jak se rychlost chlazení limitně blíží hodnotě 1 a je proto vhodné se vyhnout hodnotám,99 či ještě vyšším, protože za velkou cenu získáme opět jen lineární vylepšení. Navrhuji hodnoty,95,98, podle toho, kolik máme čas. Pro rychlost chlazení jsem také provedl měření pro dynamicky vypočtenou počáteční teplotu (vypočtenou tak, aby přibližně 5% horších sousedů bylo odmítnuto a 5% přijato). Jak relativní chyba, tak doba běhu je však téměř identická s měřeními provedenými při staticky nastavené hodnotě výchozí teploty na 5 (viz grafy). Toto přičítám vhodně zvolené hodnotě 5 a dále také faktu, že tato hodnota ovlivňuje relativní chybu při tomto nastavení pouze od hodnoty horší než 1 (vypočtená hodnota byla téměř vždy větší) a doba běhu je ovlivněna pouze logaritmicky. 5.5 VELIKOST INSTANCE Relativní chyba je velikostí instance téměř neovlivněna, projevuje se však rostoucí trend. Doba běhu logicky roste, avšak pouze lineárně. 5.6 IDEÁLNÍ NASTAVENÍ Ideální nastavení bude pravděpodobně třeba upravit pro jiné typy úloh či dokonce instancí, ale pokusím se vyvodit co nejideálnější / nejobecnější nastavení na základě mých měření: Equilibrium (rovnovážná poloha): Velikost instance Počáteční teplota: Vypočtena dle pravidla 5:5 Teplota tuhnutí: 1-2 stupně Rychlost chlazení: koeficient,95,98 1