Practicum I&M College deel 1

Slides:



Advertisements
Verwante presentaties
Garmin Forerunner Martin Breedijk. Garmin Forerunner • Moderne vormgeving, licht van gewicht • Uiterst gevoelige SIRF III ontvanger • Weergave datavelden.
Advertisements

Autisme en Mindmap Thuis en op School
Wat is licht?.
Online Marketing voor het MBO “SEO, dat kun je zelf!”
DIA-OPMAAK (1) Dia-indeling H van Breugel A van der Coelen.
Onderwerpen Oude situatie Eerste aanpak en problemen
HALLO OPLETTEN : Waarom sql DOEN : Introductie opdracht
VPN Technologieën en oplossingen. VPN en IP VPN Leased line netwerk Echt ‘privaat’ netwerk: eigen lijnen met gegarandeerde capaciteit Per connectie een.
Advanced Algorithms Groep: EII7AAb
Kenmerken Veel aanbieders Vrije toe- en uitreding Homogene goederen
Project D2: Kempenland Sander Verkerk Christian Vleugels
Project D2: Kempenland Sander Verkerk Jeffrey van de Glind
Transport en locatie warehouse
Dijkstra Kortste pad algoritme.
Instructie Programmeren Task 5
IJspakketten Annette Ficker Tim Oosterwijk
IJspakketten Annette Ficker Tim Oosterwijk
MLA Bewaren van resultaten: mailen, printen, opslaan Universiteitsbibliotheek verder = klikken.
CO-CREATIE MEDMEC 03 Docent: Elske Revelman de Vries Product ontwerper.
Media & Creativiteit / Pia Terstroet (wiki)
T U Delft Parallel and Distributed Systems group PGS Fundamentele Informatica in345 Deel 2 College 5 Cees Witteveen.
HALLO OPLETTEN : Waarom sql DOEN : Introductie opdracht
Prakticum MTI mei/juni Administravia bijeenkomsten programmeerstijl: donderdag 16 mei 9-11 donderdag 23 mei 9-11 bijeenkomst MTI opdracht: vrijdag.
Lokale zoekmethoden Goed in de praktijk:
Air Traffic Control Groep D Geert Oomen Daan Doeze Jager
Informatieanalyse.
1 Software-ontwikkeling Project “Spelraamwerk voor 2 spelers”
College 4, jaar 2, Zomer 2010 Projectles Auteur: Ayman van Bregt Docent: Toine Nagel.
Sorteeralgoritmen. Sorteren: aanpak 1 Hoe ga je een rij getallen sorteren met PC? Sorteren door selectie (= selection sort): Zoek de kleinste waarde Sorteer.
Cooperative Transport Planning
T U Delft Groep Parallelle en Gedistribueerde Systemen PGS College in345 Deel 2 Cees Witteveen Parallelle en Gedistribueerde Systemen Faculteit Informatie.
De beste hypotheek tegen de laagste kosten! Door de kredietcrisis, eurocrisis, etc wordt het steeds lastiger om exact te berekenen hoeveel hypotheek u.
G!DS Basismodule Trainingsdag 2 Naam, functie Datum, plaats.
Welkom De techniek van websites
havo B Samenvatting Hoofdstuk 1
Pag. Software Engineering: SCRUM 2 Schedule Generator Zjef Van de Poel, Alexander De Cock, Adam Cooman, Matthias Caenepeel
Hoofdstuk 6 Allerlei verbanden.
Opdrachten maken met Smartbook 7 oktober 2014
Energie voor de toekomst? Opdracht A3. Inleiding Duurzame energie?  Energie produceren op een manier die blijvend gebruikt kan worden.
T U Delft Parallel and Distributed Systems group PGS Fundamentele Informatica in345 Deel 2 College 6 Cees Witteveen.
Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag top-down decompositie Opdrachten:
BEGINNER EV3 Programmeer Les
Subsidie individueel vervoer:
Kom verder. Saxion. Minor Internet Marketing SEA | Les 5. Social Media II.
?.
Genetisch Algoritme 1 Voordeel  GAs kunnen snel goede oplossingen leveren, zelfs voor moeilijke oplossingsruimten. Nadeel  GAs vinden niet gegarandeerd.
Waar heb jij de laatste 6 maanden, als consument een top klantenervaring gehad?
Snijpunt bepalen. Lijn p en lijn q snijden elkaar. Wat zijn de coördinaten van het snijpunt ?
Geocaching workshop Peter van Wijlick Computerclub Helden.
Plattegrond maken Explorers ’12. Uitleg Opdrachten: doormiddel van opdrachten maak je je plattegrond compleet. Kleur/legenda: vergeet niet om alles.
ECTS fiches Aanleiding WIE: Alle instellingen op Associatieniveau WAT: Vernieuwde structuur ECTS fiches  Vernieuwde KU Loket toepassing 
License Administration Workbench Handleiding voor het consolideren van gebruikersaccounts met de License Administration Workbench Global License Auditing.
Heuristieken en benaderingsalgoritmen Algoritmiek.
Gert Treurniet Christelijk Gymnasium Sorghvliet Docent wiskunde
Meten en meetkunde in het verkeer
Slide template: myfreeppt
Lean Six Sigma - Verbetermanagement
HERZIENING INFORMATICA DEEL 1.
De Multi (zwakke variant)
What is the meaning of? Student centered learning
GOUD is geld de rest krediet
Natuur speurtocht Genesis 2:1 Opdracht:
Onderzoek arrangeur-ontwerper
De Kwaliteit Verbetercyclus
Tim van de kerkhof Hari kustura
Marketing as a service ‘Hoe ziet de klantreis voor onze verschillende klanten eruit?’ Hoe wordt touchpoint ‘formulieren’ ervaren? ‘Zijn de formulieren.
havo B Samenvatting Hoofdstuk 1
Modderdorp UNPLUGGED Bron: csunplugged.org.
De Belichtingsdriehoek
<Geef de titel van het probleem op>
Transcript van de presentatie:

Practicum I&M College deel 1 Docent: Marjan van den Akker Studentassistent: Leonard Tersteeg http://www.cs.uu.nl/docs/vakken/pim/

Doel: Verkrijgen van programmeer-ervaring Kennismaking I&M vraagstuk Individuele programmeer-opdracht in Java

Krantenbezorgers op Manhattan: Opdracht Achtergrond Heuristieken (1) Werkwijze

Opdracht Gegeven: Centraal depot Locaties kranten-abonnees Krantenbezorgers Depot

Opdracht (2) Ontwikkelen van java-tool voor: Bepalen en weergeven van routes voor de krantenbezorgers zodanig dat de kosten zo laag mogelijk zijn

Verplichte functionaliteit: Inlezen locaties depot en abonnees en tekenen op scherm Inlezen van gegeven routes en weergeven op scherm Bepalen van routes met cheapest insertion heuristiek Bepalen van routes met simulated annealing Gebruiker kan routes tekenen, en kosten worden weergegeven.

Optionele functionaliteit Wegschrijven van routes naar een file Interactief veranderen van routes Uitrekenen van routes met nearest neighbour heuristiek Alternatieve implementatie van simulated annealing of andere heuristiek Mooie user interface

Aannamen Locaties zijn gegeven door (x,y)-coördinaat. Afstand: Manhattan afstand D((a,b),(c,d))= |a-c| + |b-d| Er zijn 5 krantenbezorgers

Aannamen (2) Kosten w1 Tlaatste krant+ w2 Tgemiddeld Tlaatste krant tijdstip waarop laatste krant bezorgd is Tgemiddeld gemiddeld bezorgtijdstip over alle klanten Tijd afstand

Routes In simulated annealing worden routes veranderd. Routes worden stapsgewijs opgebouwd en eventueel veranderd Daarom: Kies data-structuur voor route zodanig dat er makkelijk abonnees uitgehaald en toegevoegd kunnen worden.

Variant op Whizzkids prijsvraag: www.win.tue.nl/whizzkids/1996/index.html

Achtergrond Routes plannen; welk route-plan heeft zo laag mogelijke kosten Abonnees verdelen over bezorgers Route bepalen per bezorger Eén bezorger heeft met n abonnees heeft n! = n(n-1)(n-2) ….2.1 mogelijke routes.

N N! 2 5 120 10 3628800 15 1307674368000 25 15511210043330985984000000

Combinatorische optimalisering Heel veel oplossingen, welke is de beste? Exact de beste oplossing vinden: (slim) aftellen; heel veel rekentijd Heuristiek: vind redelijke oplossing in kortere tijd

Voorbeeld: Handelsreizigersprobleem (TSP) Gegeven: n steden D(i.,j) afstand van stad i naar stad j Wat is de kortste route langs alle steden?

Cheapest insertion heuristiek TSP Initialisatie: ga uit van tour met één punt Uitbreiding: i0 i1, i2,…,im,i0 tour langs gedeelte van de steden. Bepaal voor elke stad j buiten de route hoeveel het kost om deze zo goedkoop mogelijk toe te voegen. Laat j* de stad zijn waarvoor deze kosten minimaal zijn. Voeg j* zo goedkoop mogelijk toe Als nog niet alle steden in de tour, ga naar stap I.

Cheapest insertion TSP (2) Toevoegen van stad j tussen ik en ik+1 kost I(j,k)=D(ik,j) + D(j,ik+1) – D(ik, ik+1) Toevoegen stad j toe op de goedkoopste manier: Bepaal k* waarvoor I(j,k) minimaal is Dus bepaal k* waarvoor: I(j,k*) = mink{0,1,…,m} I(j,k) en voeg j tussen ik* en ik*+1 toe.

Cheapest insertion Manhattan Verdeel abonnees in 5 groepen Pas cheapest insertion heuristiek toe op elk van de groepen.

Cheapest insertion per groep Als bij TSP, abonnees zijn steden Kosten komen overeen met afstand Bezorger hoeft niet terug naar depot, dus geen volledige tour Ook mogelijk om abonnee aan het eind toe te voegen

Verdeel abonnees in 5 groepen x y - + (y-y0)(x-x0) Depot (x0,y0) - +

Verdeel abonnees in groepen (2) x>x0: gesorteerd op (y-y0)(x-x0) x=x0, y>y0 x<x0: gesorteerd op (y-y0)(x-x0) x=x0, y<y0 Verdeel in 5 groepen van gelijke grootte.

Nearest neighbour heuristiek TSP Initialisatie: kies beginpunt Uitbreiding: i1, i2,…,ik route door gedeelte van de steden. Voeg toe: j met D(ik,j) minimaal.

Nearest neighbour Manhattan Verdeel abonnees in 5 groepen als bij cheapest insertion Pas nearest neighbour heuristiek toe op elk van de groepen.

Werkwijze: In te leveren: In zip archief via submit (opgave 26): Werkende programma-code: alle JCreator files, met commentaar, readme file ! Verslag Samenvatting opdracht Klasse-structuur Evaluatie In zip archief via submit (opgave 26): www.cs.uu.nl/docs/submit/index.php?opgave Programma moet mondeling worden toegelicht

Beoordeling Werking van het programma Structuur Commentaar User interface Milestones Mondelinge toelichting

Planning Opdracht uit te voeren in 7 weken Effort: 160 uur = 7 x 23 uur Inleverdatum: Uiterlijk vrijdag 28 juni 23.59 uur !!!!! Anders herkansing!!

Milestones: 22 mei: abonnees inlezen en tekenen 6 juni: routes inlezen, weergeven, cheapest insertion 20 juni: simulated annealing Functionaliteit af aan begin practicum Demonsteren en eventueel toelichten Milestone missen = minpunten eindcijfer

Hints Maak EERST een opzet (klasse-structuur), in te leveren bij eerste milestone! Versie management !! Stel werk niet uit!! Beste oplossing: fles wijn !!!!

Vragen Begeleid practicum: Student-assistent: java, computer Maandag 15-17, BBL 456,458 (week 22-26) Woensdag 9-11, BBL 456,458 (week 20, 21) Donderdag 15-17 , BBL 456,458 (week 20-26) Student-assistent: java, computer Docent: opzet, algoritmen

Veel succes !!!