TTIT33 Scenario för Tema 3 i Termin 3



Relevanta dokument
Vinjetter TDDC91 Datastrukturer och algoritmer

Bakgrund och motivation. Definition av algoritmer Beskrivningssätt Algoritmanalys. Algoritmer. Lars Larsson VT Lars Larsson Algoritmer 1

Hitta k största bland n element. Föreläsning 13 Innehåll. Histogramproblemet

Vinjett 1: Relationsdatabas för effektivaste vägen

Magnus Nielsen, IDA, Linköpings universitet

Föreläsning 11. Giriga algoritmer

Tentamen Datastrukturer D DAT 036/INN960

Introduktion till algoritmer - Lektion 1 Matematikgymnasiet, Läsåret Lektion 1

Tommy Färnqvist, IDA, Linköpings universitet

Hjärtat av verksamheten finns i Lycksele med kontor, magasin och garage samt tvätthall.

Föreläsning 11. Giriga algoritmer

Föreläsning 13 Innehåll

TENTAMEN TDDD12 Databasteknik 7 januari 2010, kl 14-18

Sårbarhetsanalys för Stockholms kollektivtrafiknät. Erik Jenelius Oded Cats Institutionen för transportvetenskap, KTH

Teoretisk del. Facit Tentamen TDDC (6)

Programmeringsolympiaden 2015

Föreläsning 5 Innehåll

Ruttoptimering

Programmeringsolympiaden 2009 Kvalificering

IT-plan YTTRINGE FÖRSKOLA

Tentamen Datastrukturer (DAT037)

- Verktyget som ger dig full koll på din fordonspark

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

Tentamen Datastrukturer, DAT037 (DAT036)

Företagspresentation 2014

Tentamen Datastrukturer D DAT 035/INN960

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 11 Jonas Lindgren, Institutionen för Datavetenskap, LiU

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 8 Jonas Lindgren, Institutionen för Datavetenskap, LiU

TDDI16 Datastrukturer och algoritmer. Prioritetsköer, heapar, Union/Find

Tentamensinstruktioner. När Du löser uppgifterna

Regler för användning av Riksbankens ITresurser

DD1321, Tentamen i tillämpad programmering och datalogi Lördagen den 18 dexember 2010 kl 13 18

Inledning Syfte Metod Avgränsningar Om Wahlquist Teori Varför uppgradera? Leverantören vill det Implementera helt nya funktioner (revolutionärt)

Göteborgs Stads riktlinjer för resepolicies

Upprättad av institutionens ledningsgrupp. Handlingsplanen kommer att följas upp halvårsvis. Ansvarig för genomförande

Väg 44, förbifart Lidköping, delen Lidköping-Källby

UPPGIFT 1 V75 FIGUR 1.

Datastrukturer och algoritmer. Föreläsning 15 Inför tentamen

Kollektivtrafikforskning vid Campus Norrköping

Tentamen i: Affärssystem och tjänsteorienterad arkitektur

Installationsguide Unifaun Transport

Manual för version V2

ANVÄNDARVILLKOR för TomToms Webbplatser

SILENTIUM AB COPYRIGHT

Optimering. Optimering

SERVICELOGISTIK MED ASCOM JOB AGENT ASCOM JOB AGENT VÄGEN TILL EFFEKTIV SERVICELOGISTIK

Tentamen Datastrukturer D DAT 036/INN960

Introduktionsmöte Innehåll

Programmeringsolympiaden 2011 Kvalificering

Booking, Dispatch and Tracking system. birssi.net

TENTAMEN TDDB77 Databaser och Bioinformatik 19 april 2002, kl 14-18

Datastrukturer och algoritmer

Tentamen Datastrukturer för D2 DAT 035

Föreläsning 1. Introduktion. Vad är en algoritm?

Föreläsning Datastrukturer (DAT036)

SÄKRA DIN AFFÄR VART DEN ÄN TAR DIG. Protection Service for Business

TÄBY SIMHALL. Kapacitetsanalys Stora Marknadsvägen. Rapport Upprättad av: Frida Aspnäs, Tobias Thorsson

Workshop 3. -Hur kan vi samverka och fördela tillgängligt bränsle vid brist?

DIG IN TO Administration av nätverk- och serverutrustning

Aktuellt inom SSG och nyckeltal för underhållsverksamhet. Mats Karlsson. Kramfors SCOPE-möte

Policy för Ulricehamn en lärande organisation

HP Next Day Hardware Support HP Care Pack Services

Programmeringsolympiaden 2017

Mjukare värden ger bättre resultat

Flex - Manual. Innehåll

IT-Policy Vuxenutbildningen

GPS NAVIGATION SYSTEM QUICK START USER MANUAL

TDDC30/725G63. Objektorienterad programmering i Java, datastrukturer och algoritmer

RAPPORT: ANALYS AV ÖKAD LASTBILSTRAFIK PGA KOMBITERMINAL I FALKÖPING

Algoritmer, datastrukturer och komplexitet

Uppdaterad Lathund Synpunkten för handläggare och ansvarig chef

TNK047 [TEN1] OPTIMERING OCH SYSTEMANALYS

TAOP61/TEN 1 OPTIMERING AV REALISTISKA SAMMANSATTA SYSTEM

Samordnade transporter vilka är miljökonsekvenserna

Tentamen i Objektorienterad modellering och design Helsingborg

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

Övningen vill visa på vikten av valet av datastruktur, trots att de ofta erbjuder samma funktionalitet genom sina gränssnitt.

Logistik som du vill ha den

Föreläsning 5 Innehåll. Val av algoritm och datastruktur. Analys av algoritmer. Tidsåtgång och problemets storlek

Datastrukturer och algoritmer

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

Försättsblad till skriftlig tentamen vid Linköpings Universitet

Resultat av simuleringar skolval

Algoritmer, datastrukturer och komplexitet

Tentamen i: Affärssystem och tjänsteorienterad arkitektur

Programmeringsolympiaden 2010 Kvalificering

Föreläsning 1. Introduktion och sökning i graf. Vad är en algoritm?

TENTAMEN. För kursen. Databasteknik. Ansvarig för tentamen: Cecilia Sönströd. Förfrågningar: Anslås inom 3 veckor

Karlstads universitet Institutionen för Informationsteknologi Datavetenskap

An English version of the questions is found at the back of each page.

729G75: Programmering och algoritmiskt tänkande. Tema 1. Föreläsning 1 Jody Foo

Programschemat är beslutat av utbildningsledare Kristina Lundqvist vid akademin för innovation, design och teknik

Handledning. för ensidigt upprepat, starkt styrt eller bundet arbete i utgångskassa

TDDC30/725G63. Objektorienterad programmering i Java, datastrukturer och algoritmer

Teoretisk del. Facit Tentamen TDDC (6)

VILKA PERSONUPPGIFTER BEHANDLAR VI OCH HUR ANVÄNDER VI DEM?

Programmeringsolympiaden 2014

Miljöpolicy. Miljökonsekvensbeskrivning

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

Regel. Användning av Riksbankens IT-resurser. Inledning. Användning av IT-resurser

Transkript:

LINKÖPINGS UNIVERSITET Institutionen för datavetenskap / Matematiska institutionen TTIT33 Scenario för Tema 3 i Termin 3 Du befinner dig vid företaget Posten Data AB, där man löpande uppmärksammar behov av underhåll och utveckling av Postens datasystem. Företaget har sedan en tid tillbaka en ny avdelningschef som under de senaste åren arbetat inom ett privat transportföretag. Hon har som profil att stimulera datoranvändning hos den personal som arbetar med transporter och transportplanering vid Posten. Hennes avsikt är att planerarna på sikt, i större utsträckning ska välja att arbeta med datorer som hjälpmedel i komplexa beslutssituationer. Under en tid har avdelningschefen regelbundet träffat berörda personer inom Posten Logistik AB för att identifiera sådana planerings- och beslutssituationer, där någon typ av datoriserat beslutshjälpmedel skulle kunna vara till nytta. Detta har mynnat ut i ett antal mer eller mindre väldefinierade situationer som chefen nu vill att en grupp medarbetare ska ta sig an. Avdelningschefen har vid sitt tidigare företag arbetat med utveckling av programvara för beslutshjälp och vet att detta ställer höga krav på kunskaper om datastrukturer och optimering, speciellt algoritmkonstruktion. Hon har därför definierat ett projekt i form av en kunskapsuppbyggande förstudie, inom vilken arbetet med situationerna ska ske. Det förväntas ingen redovisning av detta arbete. Den totala tidsramen för arbetet är sju veckor. Lycka till! 1

Situation 1: Man har inom Posten Logistik AB skrivit programvara för sortering av kundinformation. Inte alla terminaler användar samma algoritm. Man har nu bestämt att försöka standardisera användningen av sorteringsalgoritmer. Som ett första steg har man kört de olika algoritmerna på samma dator. Man har använt olika storlek på indata: 10, 100, 1000, 10 000, 100 000 och 1 000 000 poster med kundinformation. Vi visar exekveringstiderna (i sekunder) för de olika algoritmer i tabellen nedan. NA betyder att man var tvungen att avbryta körningen av algoritmen eftersom det tog för lång tid. Vilken av dessa algoritmer är bäst? Behöver man mer information för att bestämma sig eller räcker det med testkörningsresultaten? Algoritm 1 2 3 4 storlek indata = 10 0.00044 0.00057 0.00041 0.00046 storlek indata = 100 0.00675 0.00420 0.00171 0.00244 storlek indata = 1000 0.59564 0.05565 0.02927 0.02587 storlek indata = 10 000 58.864 0.71650 0.42998 0.31532 storlek indata = 100 000 NA 8.8591 5.7298 3.5882 storlek indata = 1 000 000 NA 104.68 71.164 41.282 2

Situation 2: Snart är det dags för den miljonte kunden hos Posten Företagspaket och det ska firas. Den kunden ska få ett stort pris, men Posten vill också ge ett mindre pris till kund 100 000, 200 000,..., 900 000 och till de tusen bästa kunderna. Också bästa kunden per postterminal får ett pris. Information om kunderna finns lagrad per postterminal. 3

Situation 3: Posten startar just upp ett projekt tillsammans med stadens trafikcentral, med syftet att chaufförerna vid Posten ska kunna få så kallad route guidance. Detta innebär att man i varje fordon installerar en dator som, då chauffören så önskar, ger information om bästa (snabbaste) ruttval med hänsyn taget till aktuell trafiksituation. Man har delat upp ansvarsområdena så att trafikcentralen ska garantera att information om den aktuella trafiksituationen löpande överförs till Postens dator. Detta sker i form av restider för alla gatuoch vägavsnitt. Trafikcentralen har även föreslagit lämplig utrustning (datorer) som ska installeras i fordonen. Posten har köpt in en databas med all nödvändig information om det aktuella gatu- och vägnätet. Inom Posten Data AB ska den programvara utvecklas som identifierar ett bästa ruttval varje gång då detta efterfrågas. Man kan tänka sig tre olika ruttvalssituationer: 1. Chauffören vill ha bästa ruttval från en punkt till en annan. 2. Chauffören har ett antal adresser som ska besökas och vill veta vilken som kan nås snabbast, näst snabbast etc. 3. Chauffören har ett antal adresser som ska besökas och vill veta den bästa rutten längs alla dessa. Ruttvalsproblemen ska lösas med Postens dator och informationen ska sedan skickas ut till respektive fordons dator. Man kommer att ha höga krav på svarstiderna vilket kräver effektiva implementeringar av alla algoritmer. Om något problem visar sig vara teoretiskt svårt att lösa till optimalitet ska det lösas med någon icke-optimerande algoritm. 4

Situation 4: Det ställs hela tiden nya krav på snabbhet och säkerhet vid Postens sorteringsanläggningar och man arbetar kontinuerligt med förbättring av existerande anläggningar samt planering av nya. I nyplaneringen har man önskemål om ett datorbaserat beslutsstöd med vilket man interaktivt kan analysera kapaciteten på föreslagna sorteringsanläggningar. Man har tagit fram följande kravspecifikation: Användaren ska interaktivt specificera en modell av sorteringsanläggningen genom att definiera någon typ av nätverk med noder och bågar. Därefter ska man kunna analysera anläggningen i följande avseenden: 1. För olika val av matningshastigheter på transportavsnitten, som ska kunna anges och ändras interaktivt, vill man uppskatta hela anläggningens kapacitet (antal paket per tidsenhet). Man får då anta att varje transportavsnitts kapacitet endast beror av matningshastigheten. 2. Efter att den totala kapaciteten beräknats vill man kunna identifiera var i anläggningen en ökning av matningshastigheten leder till en ökad total kapacitet i anläggningen. 3. För olika val av matningshastigheter på transportavsnitten vill man testa om anläggningen klarar ett givet paketflöde, som ges i form av inflöden och utflöden vid de platser där paketen slussas in i respektive ut ur anläggningen. I detta fall gör man samma antagande om transportavsnittens kapaciteter, som i punkt 1 ovan. Man har tillgång till en programkod för simplexalgoritmen. Hur kan denna användas för att lösa de problem som uppkommer i punkterna 1-3? Är detta effektivt, dvs löses problemen effektivt med simplexalgoritmen? Om ej, hur skall problemen istället lösas på mest effektiva sätt? 800 400 400 350 350 350 600 350 600 600 350 350 600 350 350 400 400 Ett exempel på hur en sorteringsanläggning kan se ut ges i vidstående figur. Paketen kommer in i anläggningen via de fyra transportavsnitten (inmatningsbanden) i mitten, med kapacitet 600 paket/tidsenhet vardera. Härifrån slussas de in i cirkulationsplatsen där paketen sorteras ut på de fem yttre transportavsnitten (utmatningsbanden), där fyra har kapacitet 400 paket/tidsenhet och en kapacitet 800 paket/tidsenhet. Cirkulationsplatsen har två våningar där paketen cirkulerar med- respektive moturs. Varje transportavsnitt (totalt 8 stycken per våning) har kapacitet 350 paket/tidsenhet. När paketen slussas in i cirkulationsplatsen delas de upp på detvåvåningarna med hjälpavenavdelare på transportbandet. 5

Situation 5: När en kund skickar ett paket lagras olika typer av information, t.ex. kundens namn och adress, mottagarens namn och adress, registreringsnummer, pallnummer, chaufför etc. I vissa situationer (t.ex. när en kund ringer angående statusen på sitt paket) behöver man snabbt kunna hämta information. Vissa delar av informationen svarar då mot indata medan andra delar svarar mot svaret. Sammansättningen av information i indata respektive svar varierar beroende på situation. Insättning och uppdatering av information förekommer ganska ofta. Borttagning av information förekommer relativt sällan. I det nuvarande systemet är väntetiderna för de olika operationerna för långa. 6