Modely rozvrhování produkce s využitím Matlabu



Podobné dokumenty
Celková částka pro tuto výzvu: Kč v rozdělení dle tabulky č.1

Nemocnice a centra zobrazovacích metod d v ují systém m Rimage pro publikování disk s informacemi o pacientech, které mohou zachránit život

Inteligentní zastávky Ústí nad Labem

170/2010 Sb. VYHLÁŠKA. ze dne 21. května 2010

MSSF Benefit praktický průvodce pro žadatele v rámci Operačního programu Rozvoj lidských zdrojů

Programový komplet pro evidence provozu jídelny v modul Sklad Sviták Bechyně Ladislav Sviták hotline: 608/

ÚVOD DO INFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE

INFORMATIKA V CHOVECH PRASAT

Podrobný postup pro doplnění Žádosti o dotaci prostřednictvím Portálu Farmáře. 1. kolo příjmu žádostí Programu rozvoje venkova ( )

Česká zemědělská univerzita v Praze Fakulta provozně ekonomická. Obor veřejná správa a regionální rozvoj. Diplomová práce

Mobilní reklama ve vyhledávání

Software IS Řízení stavebních zakázek

PROGRAM OBNOVY VENKOVA VYSOČINY

ABSOLVENTSKÉ PRÁCE ŽÁKŮ DEVÁTÉHO ROČNÍKU

Pokyny k instalaci FRIATRACE Verze 5.3

KÓDOVÝ ZÁMEK 1105/2 A 1156/10

ZÁKLADNÍ POVINNOSTI DOPRAVCE I PRÁCI S DATY Z DIGITÁLNÍHO TACHOGRAFU

Žáci mají k dispozici pracovní list. Formou kolektivní diskuze a výkladu si osvojí grafickou minimalizaci zápisu logické funkce

Informace o zkoušce k získání profesního osvědčení učitele výuky a výcviku řízení motorových vozidel

Modul Řízení objednávek.

Nabídka seminářů Finanční gramotnost

Komentář k datovému standardu a automatizovaným kontrolám obsahu F_ODPRZ_BAT

účetních informací státu při přenosu účetního záznamu,

-1- N á v r h ČÁST PRVNÍ OBECNÁ USTANOVENÍ. 1 Předmět úpravy


Fotogrammetrie a DPZ soustava cílů

Katedra obecné elektrotechniky Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava 16. ZÁKLADY LOGICKÉHO ŘÍZENÍ

Co najdete v ASPI? (pro uživatele SVI FSE UJEP)

Poukázky v obálkách. MOJESODEXO.CZ - Poukázky v obálkách Uživatelská příručka MOJESODEXO.CZ. Uživatelská příručka. Strana 1 / 1. Verze aplikace: 1.4.

Aplikace počítačů v provozu vozidel 9

INTELIGENTNÍ DŮM. Zdeněk Kolář, Viktor Daněk. Střední průmyslová škola sdělovací techniky Panská 856/3, Praha 1

ZADÁNÍ ÚZEMNÍ STUDIE (PRO LOKALITU Z5 ÚZEMNÍHO PLÁNU ŽELEZNÝ BROD)

TIP: Pro vložení konce stránky můžete použít klávesovou zkratku CTRL + Enter.

117D813 Podpora rozvoje strukturálně postižených regionů

obecně závazné vyhlášky o vedení technické mapy obce A. OBECNÁ ČÁST Vysvětlení navrhované právní úpravy a jejích hlavních principů

Analýza oběžného kola

Dětské hřiště sídliště Na Olešce Dětské hřiště sídliště Řeky. Zadání. Hřiště sídliště Na Olešce. Hřiště sídliště Řeky

MĚSTO BENEŠOV. Rada města Benešov. Vnitřní předpis č. 16/2016. Směrnice k zadávání veřejných zakázek malého rozsahu. Čl. 1. Předmět úpravy a působnost

WEBDISPEČINK NA MOBILNÍCH ZAŘÍZENÍCH PŘÍRUČKA PRO WD MOBILE

Návod k použití aplikace jízdního řádu v mobilním telefonu. Stažení

PROGRAM PODPORY OBNOVITELNÝCH ZDROJŮ A ÚSPOR ENERGIE V OBYTNÝCH BUDOVÁCH

IMPLEMENTACE SW NÁSTROJE PROCESNÍHO ŘÍZENÍ ATTIS

PŘÍLOHA 1.7 SMLOUVY O PŘÍSTUPU K VEŘEJNÉ PEVNÉ KOMUNIKAČNÍ SÍTI PROGRAM ZVYŠOVÁNÍ KVALITY

Výzva k podání nabídek na. Dodávka notebooků pro cílovou skupinu

Marketing. Modul 7 Internetový marketing

ŘÁD UPRAVUJÍCÍ POSTUP DO DALŠÍHO ROČNÍKU

Výsledky přijímacích zkoušek

Příloha č. 2 Vyhledávání souřadnic definičních bodů v Nahlížení do KN OBSAH

SMLOUVA O POSKYTNUTÍ DOTACE Z ROZPOČTU MĚSTA NÁCHODA

Android Elizabeth. Verze: 1.3

ÚŘAD PRO CIVILNÍ LETECTVÍ

Algoritmizace a programování

29 Evidence smluv. Popis modulu. Záložka Evidence smluv

VPS1 1/5. POPIS SIGNALIZAČNÍCH LED Červená připraveno k provozu, nebo komunikaci s PC Zelená čip přiložen (nekomunikuje s PC)

Směrnice pro zadávání veřejných zakázek malého rozsahu města Poděbrady

VÝZVA A ZADÁVACÍ DOKUMENTACE

Manuál Kentico CMSDesk pro KDU-ČSL

Manuál uživatele čipové karty s certifikátem

Veřejnoprávní smlouva o poskytnutí investiční dotace č. 1/2016

Memoria Mundi Series Bohemica z trezoru na Internet

Seriál: Management projektů 7. rámcového programu

Testovací aplikace Matematika není věda

HD satelitní přijímač SLOTH Opticum Ultra plus

Uživatelská dokumentace

Návod k používání registračního systému ČSLH

Upíše-li akcie osoba, jež jedná vlastním jménem, na účet společnosti, platí, že tato osoba upsala akcie na svůj účet.

Euroklíč Zásady podprogramu pro poskytování dotací v roce 2014 (dále jen Zásady podprogramu )

ZADÁVACÍ DOKUMENTACE

Orientační průvodce mateřstvím a rodičovstvím v zadávacích dokumentacích poskytovatele

Nastavení telefonu T-Mobile MDA Touch

Pokyn D Sdělení Ministerstva financí k rozsahu dokumentace způsobu tvorby cen mezi spojenými osobami

VZOR vyplnění je možné pouze v eaccountu

Koncepce hospodaření s bytovým fondem Městské části Praha 5

OPERAČNÍ SYSTÉMY MS-DOS

Školení starostů obcí. Povinnosti obce v oblasti požární ochrany 2015

STANOVENÍ KRITÉRIÍ ROZHODUJÍCÍCH PRO VÝBĚR A HODNOCENÍ NABÍDEK.

4. Počítačová síť. Co je to počítačová síť

Příloha č. 54. Specifikace hromadné aktualizace SMS-KLAS

2 Trochu teorie. Tab. 1: Tabulka pˇrepravních nákladů

Obsah. Obsah. Úvod... 7

rozlišení obrazovky 1024 x 768 pixelů operační systém Windows 2000, Windows XP, Windows Vista 1 volný sériový port (volitelný) přístup na internet

Obecně závazná vyhláška města Žlutice č. 2/2011 Požární řád obce

Podmínky udělování, udržování, rozšiřování, omezování a odnímání certifikace

Příprava odborného pojednání Yvona Řepová

Podklady pro zadávací řízení

Podpora specifického vzdělávání v Label Design, a.s. cesta k vytvoření kvalitního zázemí odborných zaměstnanců a špičkové kvality produkce a servisu.

Absolventské práce 9. ročníku pravidla pro tvorbu, průběh obhajob, kritéria hodnocení

1 Hlasové, textové a multimediální služby

o nakládání s elektrozařízeními a elektroodpady), ve znění pozdějších předpisů

PŘÍRUČKA K PŘEDKLÁDÁNÍ PRŮBĚŽNÝCH ZPRÁV, ZPRÁV O ČERPÁNÍ ROZPOČTU A ZÁVĚREČNÝCH ZPRÁV PROJEKTŮ PODPOŘENÝCH Z PROGRAMU BETA

Aritmetika s didaktikou II.

Regenerace zahrady MŠ Neděliště

Vymezení poloz ek způ sobily ch ná kládů meziná rodní ch projektů ná principů LA pro rok 2017

Příloha: Dodatečné informace, včetně přesného znění žádosti dodavatele o dodatečné informace

Obsah 1. Grafický manuál firmy 2. Podklady grafického manuálu 3. Varianty loga 4. Logo a logotyp

modul Jízdy a Kniha jízd uživatelská příručka

Vzor pro poskytnutí dotace na vodohospodářskou infrastrukturu

Návrh vyhlášky o odborné způsobilosti v elektrotechnice VYHLÁŠKA

SimOS. Jakub Doležal Radek Hlaváček Michael Očenášek Marek Reimer

RAPEX závěrečná zpráva o činnosti systému v roce 2012 (pouze výtah statistických údajů)

Transkript:

Modely rozvrhování produkce s využitím Matlabu Semestrální práce pro 4EK425 (Modely produkčních systémů) Autor: Jaroslav Zahálka

Obsah Úvod 3 Popis produkčního systému 3 Matlab a TORSCHE Scheduling Toolbox 4 Modely s jedním procesorem 6 Modely s více procesory 7 Závěr 9

Úvod Modely s rozvržením produkce jsou jednou z nejdůležitějších odnoží oblasti optimalizace produkčních systémů. Tato práce má za cíl na úloze jednoduššího charakteru předvést řešení několika problémů z této problematiky a zároveň ilustrovat využití profesionálního softwarového prostředí Matlab a jeho doplňků k tomu určených. Matlab samotný nemá ve své základní instalaci žádné prostředky pro řešení problémů rozvrhování produkce, ale existuje plug-in TORSCHE Scheduling Toolbox, který má ambice tento nedostatek pokrýt. Následující práce tedy nejdříve nastíní řešený problém a pak postupně probere vhodné algoritmy implementované v tomto toolboxu a použitelné pro tuto úlohu. Popis produkčního systému Produkční systém, pro kterou budeme řešit jednotlivé úlohy, bude automatická linka, na které jsou skládány jednotlivé díly osobních počítačů. Pro naše účely je problém zjednodušen na deset operací, které mohou probíhat nezávisle na sobě. Jedná se o instalace jednotlivých komponent počítače do základní desky a tzv.casu krycí části základní jednotky počítače.každá činnost je charakterizována svou dobou trvání t i, termínem nejdříve možného začátku realizace r i a termínem požadovaného dokončení d i. Činnosti jsou následující: 1. instalace procesoru označíme procesor 2. instalace pevného disku označíme disk 3. instalace pamětového modulu označíme paměť 4. instalace grafické karty označíme grafika 5. instalace zvukové karty označíme zvuk 6. intalace síťové karty označíme disk 7. instalace chladícího větráku označíme větrák 8. instalace CD mechaniky označíme cdrom 9. instalace disketové mechaniky označíme diskety 10. instalace zdroje označíme zdroj

Tabulka shrnuje charakteristiky činností (časy jsou v sekundách): procesor disk paměť grafika zvuk síť větrák cdrom diskety zdroj t i 15 20 8 10 10 12 20 17 17 25 r i 0 15 18 25 45 70 65 50 95 110 d i 20 35 52 52 60 80 100 90 110 120 Matlab a TORSCHE Scheduling Toolbox Matlab je pokročilý výpočetní software, který má vlastní programovací jazyk pro popis řešených problémů a díky kterému je možné vytvářet i tzv. plug-iny přídavné moduly rozšiřující základní funkcionalitu výchozího programu. Jedním z nepřeberného množství těchto doplňků je právě TORSCHE Scheduling Toolbox zaměřený na úlohy rozvrhování produkce. Toolbox byl vytvořen na elektrotechnické fakultě ČVUT Praha a přehledný informační web o jeho použití s možností stažení je na adrese http://rtime.felk.cvut.cz/scheduling-toolbox/. Instalace Matlabu i samotného plug-inu je nenáročná a dobře popsaná, největší problém je s verzí Matlabu, která musí být vyšší než 6.5 (poslední verze jsou 7.3 a vyšší) a hardwarovou náročností programu. Na pomalejších počítačích není použití Matlabu kvůli jeho nárokům na velikost paměti a rychlost procesoru nejpříjemnější. Po zdárném zavedení toolboxu do systému je umožněn přístup k novým objektům a funkcím, díky kterým je možné definovat a řešit úlohy plánování. Základní příkazy jsou task, taskset, problem, plot a pak jednotlivé algoritmy: Objekt task představuje reprezentaci jedné činnosti systému, které lze přiřadit charakteristiky jako např. Processing time (doba trvání), Release time (nejdříve možný začátek realizace) a Deadline (požadovaný čas dokončení). Taskset představuje soubor činností (tedy objektů Task), které tvoří systém a je s nimi nakládáno jako s celkem. Problem je objekt zastřešující řešenou úlohu a je popsán Grahamovou notací, např. 1 r i C max. Syntaxe je pak např. problem('1,rj,cmax').

Algoritmy jsou implementovány jako funkce, jejichž parametrem je většinou objekt problem a taskset. Například pro úlohu 1 r i Cmax se používá funkce alg1rjcmax(taskset,problem). Příkaz plot se používá k vizualizaci vypočítaného řešení. Ke všem příkazům lze vypsat nápovědu pokynem help. Vyčerpávající přehled možností systému lze najít na adrese http://rtime.felk.cvut.cz/scheduling-toolbox/manual/. Pro představu následuje přehled algoritmů a typů úloh, které lze díky toolboxu řešit: Název Příkaz Problém Algoritmus pro 1 rj Cmax alg1rjcmax 1 rj Cmax Bratleyho algoritmus bratley1 rj,~dj Cmax Hodgsonův algoritmus alg1sumuj1 ΣUj Algoritmus pro P Cmax algpcmax P Cmax McNaughtonův algoritmus mcnaughtonrule P pmtn Cmax Algoritmus pro P rj,prec,~dj Cmax algprjdeadlinepreccmax P rj,prec,~dj Cmax Huův algoritmus hu P in-tree,pj=1 Cmax Bruckerův algoritmus brucker76 P in-tree,pj=1 Lmax Hornův algoritmus horn 1 pmtn,rj Lmax Plánování seznamu (List scheduling) listsch P prec Cmax Hoffmanův a Grahamův algoritmus algorithmcoffmangraham P2 prec,pj=1 Cmax Plánování s kladným a záporným spntl SPNTL časovým zpožděním Cyklické plánování cycsch CSCH SAT plánování (SAT scheduling) satsch P prec Cmax Definice dané úlohy v Matlabu zjednodušeným zápisem by tedy vypadala následovně: T=taskset([15 20 8 10 10 12 20 17 17 25]); T.Name={'procesor' 'disk' 'pamet' 'grafika' 'zvuk' 'sit' 'vetrak' 'cdrom' 'diskety' 'zdroj'}; T.ReleaseTime = ([0 15 18 25 45 70 65 50 95 110]); T.Deadline = ([20 35 52 52 60 80 100 90 110 120]); Na takto zavedený systém můžeme dále aplikovat celou řadu algoritmů a vytvářet jednotlivé rozvrhy optimální podle daných kritérií. Příkazem plot(t) lze zobrazit výchozí rozvržení činností včetně svých časových charakteristik. Šipky ve směru vzhůru zobrazují nejdříve možný začátek činnosti a šipky dolů požadované ukončení realizace. Výsledek zobrazuje následující obrázek.

Modely s jedním procesorem Nejjednodušší úloha je výpočet kritéria C max v jednoprocesorovém systému. V našem případě hodnota vychází 154 sekund a daný rozvrh můžete vidět na následujícím obrázku. Úloha byla vyřešena díky funkci alg1rjcmax(t,p), kdy všechny hodnoty r j jsou rovny nule. Další úlohou je 1 r j C max která se řeší algoritmem řadícím dávky vzestupně podle doby nejdříve možného začátku r j. Řeší se stejnou funkcí jako předchozí úloha - alg1rjcmax(t,p). C max je opět 154 sekund.výsledek zobrazuje následující obrázek.

Modely s více procesory Pokud se bude náš systém skládat z více procesorů, např. bude linka obsluhována více automaty skládajícími díly počítačů, můžeme se zabývat modely s více procesory. První úlohou je rozdělení dávek v systému se třemi procesory, kde není možné činnosti přerušovat v Grahamově notaci úloha 3 C max. Úloha je definována jako problem('p Cmax') a řešení je dosaženo algoritmem algpcmax(t,p,3). Algoritmus pro hledání optimálního rozvržení používá metody celočíselného programování.hodnota kritéria C max činí 52 sekund. Obrázek ukazuje optimální řešení: Obdobným problémem je úloha se dvěma procesory bez přerušení dávek 2 C max. Zde vychází optimální C max =77 a rozvržení činností na procesory ukazuje opět vygenerovaný obrázek na následující straně.

Úlohu rozdělení dávek na víc procesorů lze upravit o požadavek možného přerušení činností. V případě naší úlohy to asi není nejrozumnější požadavek, ale pro ilustrační účely schopností Matlabu se můžeme tohoto nedopatření dopustit. Nejprve budeme tedy řešit úlohu označenou jako 3 pmtn C max, na kterou byl vyvinut speciální algoritmus známý jako McNaughtonův. Ten je implementován v Matlabu jako funkce mcnaughtonrule() v našem případě ji tedy použijeme se třemi parametry jako mcnaughtonrule(t,p,3). Kritérium C max vychází 51,3 sekund. Prohlédněte si znázornění příslušného optimálního rozvrhu: Obdobnou úlohou je 2 pmtn C max, která se řeší také Mcnaughtonovým algoritmem a kritérium C max pro ní vychází 77 sekund. Na další stránce se opět nachází grafická podoba optimálního rozvrhu.

Závěr V této práci byly popsány základní možnosti využití Matlabu pro řešení úloh rozvrhování produkce s několika ilustračními problémy řešenými algoritmy probíranými v předmětu 4EK425. Použitý plug-in TORSCHE Scheduling Toolbox dokáže řešit i spoustu dalších úloh, zároveň však v současné verzi postrádá schopnost počítat některé základní problémy a určovat hodnoty kritérií. Určitě by však nebyl problém alespoň některé z jednodušších algoritmů a postupů používaných při výuce 4EK425 dodatečně naimplementovat.