Laborationsinformation

Relevanta dokument
Laborationsinformation

N = {i}: noder (hörn) Graf: G = (N, B) Definitioner. Väg: Sekvens av angränsande bågar. Cykel: Väg som startar och slutar i samma nod.

1 VIGROPT: Visual Group Optimization

Institutionen för matematik och datavetenskap Karlstads universitet. GeoGebra. ett digitalt verktyg för framtidens matematikundervisning

GeoGebra i matematikundervisningen - Inspirationsdagar för gymnasielärare. Karlstads universitet april. Liten introduktionsguide för nybörjare

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition

INTRODUKTION TILL LADOK

Komma igång med 3L Pro Komma igång med 3L. Copyright VITEC FASTIGHETSSYSTEM AB

ALEPH ver. 16 Introduktion

Eulercykel. Kinesiska brevbärarproblemet. Kinesiska brevbärarproblemet: Metod. Kinesiska brevbärarproblemet: Modell. Definition. Definition.

TAOP33/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS

Laborationsinformation TAOP88 Optimering för ingenjörer, VT17

KURSMÅL WINDOWS STARTA KURSEN

Tentamensinstruktioner. När Du löser uppgifterna

TAOP33/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS

TAOP33/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS

A. Datorn från grunden

TAOP86/TEN 1 KOMBINATORISK OPTIMERING MED

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition

Inställningstips Windows

Projektinformation TAOP61 Optimering av realistiska sammansatta system Projekt 4: Lösning av snöröjningsproblemet

Switch Driver 4. Programvara för Radio Switch, JoyBox och JoyCable. Sensory Software

Inställningstips Windows 8

Kom igång med Denna korta manual hjälper dig med att komma igång med programmen Vital och ViTex.

TNSL05 Optimering, Modellering och Planering. Föreläsning 5

LATHUND WINDOWS RXK Läromedel, Riddarplatsen 36 Plan Järfälla Tel: , Fax: e-post: info@rxk.

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition

Installationsguide Junos Pulse för MAC OS X

Grundläggande datorkunskap. Kom igång med dator

IT-system. BUP Användarmanual

OptiWay GIS Vind. Manual - Version OptiWay

Egna genvägar. Subhashish Pradhan T.C. Hollingsworth Översättare: Stefan Asserhäll

Optimeringslära Kaj Holmberg

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER

Mäta rakhet Scanning med M7005

Verktygsfält. Hantering av webbkarta Grundinstruktion. Sida 1 av 6. De olika verktygen och delarna förklaras i detalj längre ner i dokumentet.

LADOK MINIMANUAL. Att logga in i Ladok. Huvudmenyn. Studentcentrum, Ladok

INSTALLATION...3 ATT KOMMA IGÅNG...3 PROGRAMMETS DESIGN...4 LÄGGA TILL TABELL...4 EDITERA TABELL...4 EDITERA RELATION...5 SPARA OCH AVSLUTA...

BILDBOK. Programmet stöder talsyntes SAPI 4 och SAPI 5. Programmet kan spela upp ljudfiler (*.wav) och (*.mp3)

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER

Tentamensinstruktioner. När Du löser uppgifterna

TNK049 Optimeringslära

Beställning till Husfoto. Handledning

STEGBESKRIVNING - WEBB

Inställningstips Windows 10

Innehåll. Inledning. Inställningar. Inledning Inställningar Kortkommandon Övriga inställningar Kommandofönstret Övrigt

Bruksanvisning Bläckfisken USB

Till flera av ovanstående finns det dessutom varianter, vilka kommer att presenteras i de olika avsnitten.

Word Grunderna 1. Om du kan det allra enklaste i Word, hoppa över uppgifterna A-E.

ANVÄNDARGUIDE VITAL & TALANDE TANGENTBORD

Skärmtangentbordet som är enkelt att använda både med mus, touchskärmar och interaktiva whiteboards

Software Translator 6.1 Manual

Din guide till. Klientinstallation MS Driftservice

Datum Ert datum Vår beteckning Banförvaltningen Vidmakthållande SE Borlänge Besöksadress: Jussi Björlings väg 2

Nyheter i PowerPoint 2010

Words and Sentences Träna engelska!

Handbok Spectacle. Boudhayan Gupta Boudhayan Gupta Översättare: Stefan Asserhäll

Manual GISportalen (MapGuide) På Internet

SIDTITEL TANGENTBORDSGENVÄGAR

Läslandet 2 Ord och meningar

SPRINT-HANDBOK (version 0.4)

Guide till att använda Audacity för uttalsövningar

Introduktion till Matlab

Socialdokumentation och Genomförandeplan i Procapita

Svenska Ishockeyförbundet OVR Face-Off

Hjälp för Timmerweb Mobil 3

Rullningslisten. Klicka på rullningslistpilar (pil upp eller pil ner) 1 för att förflytta dig i önskad riktning, en liten bit i taget.

Kom igång. Readyonet Lathund för enkelt admin. Logga in Skriv in adressen till din webbsida följt av /login. Exempel:

Kortkommandon Allmänna i Windows 7

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition

ANVÄNDARGUIDE. ViTex

Grundläggande Ordbehandling Microsoft Word

NYHETER I AUTOCAD 2006

TAOP86/TEN 1 KOMBINATORISK OPTIMERING MED

Skrivbordet innehåller färre ikoner, men det fungerar som tidigare att lägga till genvägar.

TAOP33/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS för D och C. Tentamensinstruktioner. När Du löser uppgifterna

Word kortkommando. 5. I rutan till höger klickar du på kommandot eller elementet.

På följande sidor återfinns en kort dokumentation som beskriver några användbara programfunktioner.

Instruktion för konvertering av e-post i Lotus Notes med Swing PDF Converter

CW Plotdef - Användarbeskrivning

Manual för banläggning i OCAD IF ÅLAND

TAOP86/TEN 1 KOMBINATORISK OPTIMERING MED

Fönster och dörr. Kapitel 3 - Fönster och dörr... 3

Personlig anpassning av Microsoft Word Vers

Flöde i nätverk. Flöde i nätverk. Specialfall av minkostnadsflödesproblemet

Referens till. WeavePoint 6 Mini

Workshop PIM 2 - PowerPoint

Manual TorTalk Mac 1.0

Introduktion till Matlab

NYHETER I AUTOCAD LT 2006

Universitetskanslersämbetets Högskoleutforskare. En introduktion till analysvyn exemplet måluppfyllelse

Personlig anpassning av Microsoft Word Vers

SeaClean städbeställning via hyttelefonerna

Användarmanual TextAppen Online

Din manual ARCHOS 604 WIFI

AssiML. Användarbeskrivning

E-POST3 Ett lättanvänt e-postprogram med stöd för talsyntes

Att skriva på datorn

Manual TorTalk version 1.3

Transkript:

Linköpings Tekniska Högskola 2015 08 25 Matematiska institutionen/optimeringslära Kaj Holmberg Laborationsinformation 1 VINEOPT: Visual Network Optimization 1.1 Introduktion VINEOPT är ett program för visualisering och optimering av graf- och nätverksproblem, såsom linjära minkostnadsflödesproblem, maxflödesproblem och billigaste väg-problem, samt billigaste uppspännande träd-problem, handelsresandeproblem och brevbärarproblem. Programmet möjliggör grafisk inmatning av nätverksdata och ritar upp nätverket på skärmen. Man kan förändra nätverket på olika sätt (dvs. ändra alla nätverksdata), samt förändra bilden av nätverket (zooma etc). Man kan spara det förändrade nätverket. Dessutom kan lösare för optimeringsproblem anropas, och lösningen visualiseras i nätverket eller visas i tabeller. Programmet är skrivet i Tcl/Tk av Kaj Holmberg. Programmet startas med kommandot dine 1 i ett terminalfönster. (Om man bara ger dine, får man välja mellan 1 för VINEOPT, 2 för VILEOPT och 3 för NILEOPT.) När VINEOPT avslutas, ges möjligheten att ta bort temporära filer, vilket vanligtvis rekommenderas. 1.2 Grundfönster När VINEOPT startas, öppnas grundfönstret där de flesta operationerna äger rum. Fönstret innehåller följande delar. Överst, under titelraden, finns den huvudsakliga menyraden, med undermenyerna File (läsa data/spara data/avsluta) Alt -f, Optimize (optimering) Alt -o, Visual (förändringar av hur nätverket visas) Alt -v, Change (förändringar av data) Alt -c, Check (kontroll) Alt -e, Selection (urval) Alt -s, Sets (mängder) Alt -t, Help (hjälp) Alt -h. Den först statusraden under det grafiska fönstret visar olika meddelanden. Den andra statusraden visar vilket ändringsläge (mode) man är i (se avsnitt 1.5.4), därefter problemets namn och storlek. Sist på raden visas koordinaterna för musen (i nätverkets skala). Koordinatrutan blir röd då programmet gör beräkningar eller sysslar med in/utmatning, och då bör man vänta lite innan en annan aktivitet påbörjas. Därunder kommer den tredje statusraden, som ger kortfattade instruktioner om hur man gör i det aktuella läget, samt ibland information om vad man nyss gjort. Längst ner kommer fjärde statusraden, som 1

anger problemtyp samt om man ändrat problemet utan att spara. 1.3 Nätverkstyper VINEOPT kan hantera många olika problemtyper, baserade på olika nätverkstyper. En grundläggande problemtyp är linjära minkostnadsflödesproblem i riktade nätverk, med följande data. Bågdata: startnod, slutnod, bågkostnad, undre gräns för flödet, övre gräns för flödet. Noddata: efterfrågan (nettosänkstyrka). Koordinater för noderna (x, y). Nodernas namn. 1.4 Kortkommandon Följande kortkommandon är användbara. Mellanslag : OK (istället för Enter/Return). F4: Avsluta programmet. F3: Stäng aktivt fönster. F10: Öppna menyn File. Control ger tillsammans med pil (höger/vänster/upp/ner) förflyttning av nätverket åt motsvarande håll. Om även Shift hålls nere sker förflyttningen i större steg. Control tillsammans med = ger fri förflyttning. Om musen rörs med mittknappen nedtryckt, förflyttas hela bilden av nätverket. Control tillsammans med + eller - ger zoomning (in/ut). Control och * möjliggör fri zoomning. Slutligen ger Control -( större noder och Control - ) mindre noder. ( Autoscale i Visualization -menyn återfinner nätverket om du skulle slarva bort det.) Vid numerisk inmatning öppnas textfönster, som man kan editera i (med normala kommandon). Skriv bara siffror och undvik att skriva in bokstäver, andra tecken eller Enter/Return. Tab flyttar musen till nästa ruta eller knapp. Control -s sparar data, vilket är bra att göra ofta eftersom VINEOPT inte har något Ångra -kommando. Nyhet: Om man skriver (paragraf), läses OpenStreetMap in som bakgrundsbild. Om man har använt koordinater enligt Sweref 99 TM, ger Control -R automatisk zoomning till aktuellt område. (Annars kan man hamna i Ishavet.) Ett sätt att få rätt koordinater är att välja rätt område innan man börjar mata in noderna. Undvik Enter/Return helt i VINEOPT. Mellanslag kan ofta användas för att acceptera ett standardsvar. En fullständig lista på kortkommandon finns under Help-menyn. 2

1.5 Menyer 1.5.1 Läsa/spara data (File) Här kan man läsa in indata för ett problem. (Indatafilen innehåller information om nätverkstypen, som sätts automatiskt.) Man kan även spara data under aktuellt namn eller nytt. Även kortkommandot Control -s sparar data. Bilden på grafen kan exporteras till en postscript-fil, eller skrivas ut direkt på en skrivare (som klarar postscript). Det går även att lista och radera befintliga nätverksfiler. 1.5.2 Optimering (Optimize) VINEOPT innehåller lösare för bl.a. följande optimeringsproblem. Minkostnadsflödesproblemet. (R) Maxflödesproblemet. (R) Billigaste väg mellan två noder, från en till alla eller från alla till en. (R,O) Billigaste väg mellan alla nodpar. (R,O) Billigaste uppspännande träd. (O) Billigaste 1-träd. (O) Starkt sammanhängande komponenter. (O) Maximal viktad matchning. (O) Minimal viktad perfekt matchning. (O) Kinesiska brevbärarproblemet. (R,O) Handelsresandeproblemet. (R,O) Handelsresandeproblemet med återbesök. (O) Varje optimeringsproblem har i listan ovan markerats med R om det kan lösas för riktade grafer och med O om det kan lösas för oriktade grafer. Vissa optimeringskoder är fria för akademiskt (ej kommersiellt) användande. Flera av koderna är av egen produktion. När optimallösningen är funnen, visar VINEOPT totalkostnaden till höger i raden ovanför grafikfönstret. En numerisk lista över optimala flöden visas också, om man vill. 1.5.3 Visualisering (Visual) Här bestäms hur nätverket ritas upp. Man kan bl.a. välja att visa eller inte visa noder, bågar, nodnamn. Man kan få bågar med flöde speciellt markerade, liksom bågar som ingår i minsnittet. Bågkostnader, bågkapaciteter och bågflöde samt efterfrågedata och nodpriser kan fås utskrivna i nätverket. Billigaste vägar och billigaste vägträd kan visas. Man kan även välja hur bågarnas anslutning till noder ritas. Man kan markera en namngiven nod. Man kan zooma in/ut, göra noderna större eller mindre samt flytta nätverket upp/ner/höger/vänster i stora eller små steg. Man kan även ställa in bästa skalning. Dessutom kan alla färger ändras samt båg- och nodmarkeringar flyttas. En bakgrundsbild (i gif-format) kan visas i det grafiska fönstret. Man kan även se alla data och lösningar numeriskt i separata fönster, som kan skrivas 3

ut eller sparas på fil. Kortkommandot Control -f visar aktuellt flöde och kortkommandot Control -t visar aktuell tur. 1.5.4 Ändringar (Change) Här ställer man in vilket ändringsläge (mode) man skall vara i. Inställningen gäller tills man ändrar den. Följande lägen finns (med ev kortkommando angivet) bl.a.: Flytta nod (Move node). F2 Lägg till nod (Add node). F5 Ta bort node (Delete node). F6 Ändra efterfrågan (Change demand). F7 Lägg till båge (Add link). F8 Ändra data för båge (Change link). F9 Ta bort båge (Delete link). Flytta båge (Move link). Lägga till nod mitt på existerande båge (Add node in the middle of a link). Ange startnod (Choose starting node). Control -a Ange slutnod (Choose ending node). Control -z Byt plats på två noder (Swap two nodes). Markera noder (Select a set of nodes). Man kan även ändra data i tabellformat. Ett riktat nätverk kan göras oriktat, och ett oriktat riktat. Det är möjligt att lägga till/ta bort många bågar på olika sätt, t.ex. så att man får ett fullständigt nätverk. Flera data kan ändras på en gång, t.ex. addera en konstant till alla bågkostnader/bågkapaciteter eller sätta alla bågkostnader/bågkapaciteter till ett visst värde. Val av nod görs så att när vänsterknappen på musen trycks ner, väljes den nod som är närmast musen (även om den är en bit bort). Val av båge sker antingen genom att klicka på bågen (vilket kräver precision) eller genom att först välja startnod och sedan slutnod. (Parallella bågar kan alltså inte hanteras.) Noden närmast musen väljes som startnod när vänsterknappen trycks ner första gången. Noden närmaste musen väljes som slutnod när vänsterknappen trycks ner andra gången (dvs. då en startnod redan valts). Flytta nod: Noden flyttas med musen så länge vänsterknappen hålles nere. Lägga till nod: Noden placeras där musen är när man klickar med vänsterknappen. Den ges sänkstyrka noll. Ta bort nod: Noden närmast musen tas bort då vänsterknappen trycks ner. Samtliga bågar som ansluter till noden tas också bort. Ändra efterfrågan: Det dyker upp ett fönster där man kan mata in ny efterfrågan (nettosänkstyrka) för noden. Lägg till båge: Välj startnod och slutnod enligt ovan. När slutnod valts, dyker en meny upp, med bågkostnad (initierad till det Euklidiska avståndet mellan noderna), bågkapacitet (initierad till ett stort tal) samt undre gräns (initierad till 0). Alla dessa siffror kan ändras. Tryck sedan på Save för att spara. 4

Ändra bågdata: Välj båge (direkt eller via startnod och slutnod) enligt ovan. Fortsätt som när man lägger till en båge. Ta bort båge: Välj båge (direkt eller via startnod och slutnod) enligt ovan. Bågen tas bort så fort man valt slutnod. Flytta båge: Välj båge (direkt eller via startnod och slutnod) enligt ovan. Välj sedan ny startnod och ny slutnod. Lägg till nod mitt på båge: Välj båge som när man ändrar bågdata. Ursprungliga bågdata läggs på första bågen, den andra bågen får kostnad noll och stor kapacitet. Välj startnod: Noden närmast musen väljes som startnod när vänsterknappen trycks ner. Välj slutnod: Noden närmast musen väljes som slutnod när vänsterknappen trycks ner. Byt plats på två noder: Välj först ena noden, sedan den andra. Markera noder: Noden närmast musen läggs till markerat urval. (Markerade noder kan hanteras med huvudmenyn Selection.) 1.5.5 Kontroll (Check) Nätverksdata kan kontrolleras på olika sätt. Man kan summera ihop total efterfrågan (vilken skall vara noll i ett minkostnadsflödesproblem). Man kan kontrollera huruvida triangelolikheten gäller, undersöka nodernas valens samt kontrollera om nätverket är sammanhängande. 1.5.6 Urval (Selection) Man kan välja nod- eller bågmängder, grafiskt eller i tabeller, på olika sätt. Man kan sedan utföra många olika ändringar på den utvalda nod- eller bågmängden. (Många ändringar är samma som i huvudmenyn Ändringar, men utförs här bara på utvald nod- eller bågmängd.) 1.5.7 Mängder (Sets) När man har markerat vissa noder eller bågar, kan man definiera dem som en nod- eller bågmängd. Man kan definiera flera olika nod- och/eller bågmängder, samt låta de noder/bågar som inte ingår i någon mängd bilda en ny mängd. Dessa mängder kan spara på fil och läsas från fil. 1.5.8 Hjälp (Help) Här kan man få upp kortare hjälptext i separat fönster, på svenska eller engelska. Man kan även lista existerande kortkommandon. 5

Man kan välja mellan två säkerhetsnivåer, novice och expert, där det senare alternativet ger färre frågor av typen Vill du verkligen ta bort denna nod?. Kortkommandot Control - e väljer säkerhetsnivå expert. Det finns även möjlighet att ta bort alla temporära filer och att avbryta en inmatningsfas (t.ex. när programmet väntar på val av slutnod). Kortkommandot Control -i avbryter inmatningsfas. Man kan även se de problemkommentarer som sparats tillsammans med problemet. 1.6 Högerknappsmeny Om man trycker på högerknappen på musen när pekaren befinner sig i det grafiska fönstret, kan man göra vissa ändringar relaterade till den nod som är närmast pekaren, med hjälp av en meny som dyker upp. Man kan ta bort noden (och alla anslutande bågar), man kan byta namn på noden och man kan ändra sänkstyrka för noden. Dessutom kan man ta bort eller ändra data för en båge som ansluter till noden. Bågen väljes då i en meny som innehåller alla bågar som ansluter till noden. Om man står på en båge (så att den färgats blå) när man högerklickar, får man istället upp en meny för bågar, med liknande möjligheter. (Det kan vara svårt att pricka en båge exakt, vilket krävs, så ibland är det bättre att välja bågar m.h.a. noder.) 1.7 Till sist VINEOPT är i ständig utveckling. Nya finesser läggs till snabbare än dokumentationen hinner uppdateras. Gå gärna på upptäcksfärd i menyerna. Försök dock att inte bli alltför arg om något inte skulle fungera. Inget program är felfritt. VINEOPT har inget Undo -kommando, så man kan inte ångra sig. Spara därför problemet ofta. Skulle programmet uppföra sig konstigt är den enklaste boten att stänga ner programmet, starta om det, läsa in problemet och fortsätta där man var. Fortsätt aldrig använda programmet efter ett felmeddelande. 6