Studiegids

nl en

Algoritmiek

Vak
2024-2025

Toegangseisen

Aanbevolen voorkennis: Programmeermethoden.

Beschrijving

Het vak behandelt diverse algemene algoritmische methoden voor het oplossen van problemen, alsmede enkele bekende algoritmen zoals het algoritme van Dijkstra. Elke methode wordt geillustreerd aan de hand van bekende of minder bekende voorbeelden.

Probleemoplossingsmethoden die worden behandeld zijn o.a.: toestand-actie-ruimte/state space tree, brute force, exhaustive search, verdeel en heers, backtracking, dynamisch programmeren, gretige algoritmen en branch-and-bound. Verder kijken we bij veel algoritmes ook naar de tijdcomplexiteit.

Bij het vak horen drie programmeeropdrachten in de programmeertaal C++, in elk waarvan een besproken oplossingsmethode toegepast moet worden om een gegeven probleem op te lossen.

Leerdoelen

Na afloop van dit vak is de student in staat om:

  • (verschillen tussen) diverse probleemoplossingstechnieken te beschrijven

  • algoritmes voor concrete problemen te ontwerpen door toepassing van diverse probleemoplossingstechnieken

  • diverse standaard algoritmes (+ datastructuren) te beschrijven en toe te passen

  • standaard algoritmes en zelf ontworpen algoritmes te analyseren

  • te beredeneren waarom bepaalde (formuleringen bij) algoritmes wel of niet correct zijn

  • algoritmes die bij diverse probleemoplossingstechnieken behoren te implementeren

  • te rapporteren over (resultaten van) de implementatie van de algoritmes

Rooster

Het meest recente rooster is te vinden op de Studenten-website:

In MyTimetable (login) kun je alle vak- en opleidingsroosters vinden, waarmee jij je persoonlijke rooster kunt samenstellen. Onderwijsactiviteiten waarvoor je je via MyStudymap hebt ingeschreven, worden automatisch in je rooster getoond. Daarnaast kun je My Timetable gemakkelijk koppelen aan een agenda-app op je telefoon en worden roosterwijzigingen automatisch in je agenda doorgevoerd; bovendien ontvang je desgewenst per e-mail een notificatie van de wijziging. Je kunt notificaties aanzetten bij Instellingen, na login.

Vragen? Bekijk de video, lees de instructie of neem contact op met de ISSC helpdesk. Let op: Joint Degree studenten Leiden/Delft dienen de informatie uit de Leidse en Delftse MyTimetable's samen te voegen om een volledig rooster te zien. Deze video leg uit hoe dat werkt.

Onderwijsvorm

Per week 2 uur hoorcollege, 2 uur werkcollege en 2 uur practicum. Er worden drie programmeeropdrachten gegeven. Tijdens het werkcollege worden opgaven op papier gemaakt. Tijdens de practicumbijeenkomsten wordt achter de computer aan de programmeeropdrachten gewerkt.

Toetsing en weging

Drie programmeeropdrachten in de loop van het semester, en schriftelijk tentamen aan het eind van het semester. Het minimumcijfer voor elke programmeeropdracht is 0, het minimumcijfer voor het tentamen is 1. Zowel tentamen als (alle) programmeeropdrachten moeten voldoende (minstens 5.5) zijn. In dat geval is het eindcijfer van het vak een gewogen gemiddelde van de cijfers voor het tentamen (twee derde) en de programmeeropdrachten (samen een derde). Als het tentamencijfer minder dan 5.5 is, is het tentamencijfer tevens het eindcijfer. Als het tentamen voldoende is, maar niet alle programmeeropdrachten voldoende zijn, volgt er nog geen eindcijfer. Voldoende deelcijfers voor losse programmeeropdrachten uit eerdere jaren kunnen niet automatisch meegenomen worden naar het nieuwe jaar. Voor meer informatie, zie de website van het vak.

De docent zal de studenten informeren hoe de inzage en de nabespreking van de tentamens zal plaatsvinden.

Literatuurlijst

Anany Levitin, Introduction to The Design and Analysis of Algorithms, third edition (Pearson, 2012, ISBN: 978-0-273-76411-3).

Inschrijven

From the academic year 2022-2023 on every student has to register for courses with the new enrollment tool MyStudyMap. There are two registration periods per year: registration for the fall semester opens in July and registration for the spring semester opens in December. Please see this page for more information. An exemption is the fall semester for 1st year bachelor students, the student administration will enroll this group.

Please note that it is compulsory to register for every exam and retake. Not being registered for a course means that you are not allowed to participate in the final exam of the course.

Extensive FAQ on MyStudymap can be found here.

Contact

Onderwijscoördinator LIACS bachelors

Website

Algoritmiek

Opmerkingen

Voor meer informatie over Brightspace kun je op deze link klikken om de handleidingen van de universiteit te bekijken. Bij overige vragen of problemen kan contact opgenomen worden met de helpdesk van de universiteit Leiden.