Training BAPC 2019 (honours)

3 EC

Semester 2, periode 5, 6

5122TB2H3Y

Eigenaar Bachelor Wiskunde
Coördinator dr. N.J. Starreveld
Onderdeel van

Studiewijzer 2018/2019

Globale inhoud

Elke zomer wordt er een Benelux Algorithm Programming Contest (BAPC) georganiseerd. Zie: www.bapc.eu. Deze honoursmodule is een training ter voorbereiding aan deze internationale wiskunde-programmeerwedstrijd. Je leert er 'problem solving' op een hoog niveau met hulp van de computer: je krijgt problemen waarvoor je een algoritme moet ontwikkelen om die op te lossen, en je algoritme moet binnen een redelijke tijd een antwoord kunnen geven. Dus je moet slim programmeren! Daarnaast heb je een flinke dosis creativiteit en inventiviteit nodig die je in dit vak ontwikkelt. Om deze reden leren de studenten in dit vak voornamelijk oplossingstechnieken, in plaats van concepten. Het vak zal gegeven worden in Python, met extra info over C/C++ of Java als de studenten graag in die talen willen werken.

De voorrondes van 2019 zijn in september, de selectie daarvoor zal na afloop van het vak plaatsvinden. De twee (of misschien drie) beste teams uit Amsterdam mogen naar de Benelux contest.

Studiemateriaal

Literatuur

    • Steven Halim: Competitive Programming 3

Leerdoelen

Studenten worden voorbereid op de BAPC met het doel om hoog in de competitie te eindigen. Na afloop van dit vak:

  • hebben studenten ervaring opgedaan met grafenalgoritmen, getaltheorie, datastructuren en dynamic programming op competitieniveau.
  • hebben studenten problem solving skills op competitieniveau ontwikkeld met betrekking tot wiskunde en informatica sámen: creativiteit, inventiviteit en doorzettingsvermogen;
  • kunnen studenten algoritmen ontwikkelen om een probleem op te lossen op competitieniveau, ze kunnen door complexiteitsanalyse garanderen dat de algoritmes snel een antwoord geven, en ze kunnen deze programmeren in Python/C/C++. 
  • kunnen studenten in een multidisciplinair team van wiskunde en informatica samenwerken om wetenschappelijke problemen op te lossen.

Onderwijsvormen

  • Werkcollege
  • (Computer)practicum
  • Zelfstudie

Verdeling leeractiviteiten

Activiteit

Uren

 
Wercollege

16

 

Practicum

16

 

Zelfstudie

52

 

Totaal

84

(3 EC x 28 uur)

Aanwezigheid

Aanwezigheidseisen opleiding (OER-B):

  • Van elke student wordt actieve deelname verwacht aan het onderdeel waarvoor hij/zij staat ingeschreven.
  • Als een student door persoonlijke omstandigheden niet aanwezig kan zijn bij een verplicht onderdeel van het programma, dient hij/zij dit zo snel mogelijk schriftelijk te melden bij de betreffende docent en de studieadviseur.
  • Het is niet toegestaan om verplichte onderdelen van een onderdeel te missen als er geen sprake is van overmacht.
  • Bij kwalitatief of kwantitatief onvoldoende deelname, kan de examinator de student uitsluiten van verdere deelname aan het onderdeel of een gedeelte daarvan. Voorwaarden voor voldoende deelname worden van te voren vastgelegd in de studiewijzer en op Canvas.
  • Bij alle onderwijseenheden van jaar 1 en 2 is een student verplicht bij minimaal 80% van de werkcolleges en tutoraten aanwezig te zijn. Bovendien moet worden deelgenomen aan eventuele tussentoetsen en verplicht gesteld huiswerk. Als niet aan deze verplichting is voldaan, wordt de student uitgesloten voor de herkansing van de onderwijseenheid. In geval van persoonlijke omstandigheden, zoals in OER-A Artikel 6.4 omschreven, wordt in overleg met de studieadviseur een afwijkende regeling voorgesteld.

Aanvullende eisen voor dit vak:

De hoor/werkcolleges zijn verplicht. Een van de zestien werkcolleges mogen worden gemist zonder voorafgaand aan het college een goede reden te hebben gemeld bij de docent. In alle andere gevallen dient de docent op de hoogte gesteld te worden van de afwezigheid en de reden daarvan. 

Toetsing

Onderdeel en weging Details

Eindcijfer

Actieve deelname is verplicht, dit wordt getoetst met

  1. inleveropdrachten
  2. wedstrijdtoetsjes

Aan het eind krijgt de student een Voldaan/Niet voldaan.

Fraude en plagiaat

Dit vak hanteert de algemene 'Fraude- en plagiaatregeling' van de UvA. Hier wordt nauwkeurig op gecontroleerd. Bij verdenking van fraude of plagiaat wordt de examencommissie van de opleiding ingeschakeld. Zie de Fraude- en plagiaatregeling van de UvA: http://student.uva.nl

Weekplanning

Weeknummer Onderwerpen Studiestof
1

Introductie

 
2

Introductie computational graph theory, graph traversal (BFS)

 
3

Minimum spanning tree, more graph traversal (DFS)

 
4

Number theory / algebra

 
5

Dynamic programming (1)

 
6

Dynamic programming (2)

 
7

Data structures and practical complexity analysis

 
8

Dijkstra’s algorithm (+ oefenwedstrijd)

 

 

Rooster

Het rooster van dit vak is in te zien op DataNose.

Honoursinformatie

Dit vak is een honoursvak van de bachelor wiskunde. Het vak is toegankelijk ook voor studenten die niet het honoursprogramma volgen en ook voor studenten van andere opleidingen.

 

Verwerking vakevaluaties

Hieronder vind je de aanpassingen in de opzet van het vak naar aanleiding van de vakevaluaties.

Contactinformatie

Coördinator

  • dr. N.J. Starreveld