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 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, nadat je bent ingelogd.
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 MyTimetables samen te voegen om een volledig rooster te zien. Deze video legt 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
Als student ben je zelf verantwoordelijk voor het tijdig inschrijven via MyStudyMap.
In deze korte video zie je stap voor stap hoe je je kunt inschrijven voor cursussen in MyStudyMap.
Uitgebreide informatie over de werking van MyStudyMap vind je hier.
Er zijn twee inschrijfperiodes per jaar:
de inschrijving voor het najaar opent in juli
de inschrijving voor het voorjaar opent in december
Zie deze pagina voor meer informatie over deadlines en inschrijven voor vakken en tentamens.
Let op:
Het is verplicht om je in te schrijven voor alle activiteiten die je gaat volgen van een vak.
Je inschrijving is pas voltooid wanneer je je cursusplanning indient in het tabblad ‘Klaar voor inschrijving’ door op ‘indienen’ te klikken.
Niet ingeschreven zijn voor een (her)tentamen betekent dat je niet mag deelnemen aan het (her)tentamen.
Contact
Onderwijscoördinator LIACS bachelors
Website
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.
Software
Vanaf collegejaar 2024/2025 werkt de faculteit Wiskunde en Natuurwetenschappen met het software distributieplatform Academic Software. Via het platform kun je toegang krijgen tot de software die je nodig hebt voor bepaalde vakken in je studie. Voor sommige software moet je laptop aan bepaalde systeemeisen voldoen. Dit staat aangegeven bij de software. Belangrijk is dat je de software installeert voor de start van het vak. Meer informatie over het laptopprofiel vind je op de studentenwebsite.