TU Delft
Jaar
Druk deze pagina af Druk deze pagina af     
NEDERLANDSENGLISH
Organisatie
2012/2013 Elektrotechniek, Wiskunde en Informatica Bachelor Technische Informatica
TI2730-B
Computational Intelligence
ECTS: 4
Verantwoordelijk Docent
Naam E-mail
Prof.dr. C.M. Jonker    C.M.Jonker@tudelft.nl
Contacturen / week x/x/x/x
4/0/0/0 hoorcollege
Onderwijsperiode
1
Start onderwijs
1
Tentamenperiode
1
2
Cursustaal
Nederlands
Vakinhoud
Dit vak geeft een introductie in een aantal technieken uit de kunstmatige intelligentie.
De nadruk ligt daarbij op zelflerende en zelforganiserende systemen.
We beginnen met de vraag 'wat is (kunstmatige) intelligentie?' en beantwoorden deze vraag vervolgens aan hand van een aantal metaforen:

- Redeneervermogen: Expertsystemen gaan uit van een traditionele regelgebaseerde aanpak en staan het dichtst bij conventionele programmeertechnieken. Kansmodellen en fuzzy logic stellen ons in staat ook met onzekere, onvolledige en onnauwkeurige gegevens te redeneren.
- Hersenstructuur: Neurale netwerken leren automatisch aan hand van voorbeelden en kunnen overweg met fouten in de invoer en met invoer die zij niet eerder hebben gezien.
- Evolutie: Evolutietheorie geeft ons een algoritme dat oplossingen kan vinden in complexe, veranderende omgevingen.
- Gedrag in de natuur: Mieren, bijen en vogels dienen als inspiratie voor systemen die complexe problemen met eenvoudige regels kunnen oplossen. Artificial life stelt de vragen `wat is leven?' en `kan een computerpogramma leven?'.
Leerdoelen
Na afloop van het vak moet een student:
• kunnen bepalen welke in het vak behandelde kunstmatige intelligentie techniek het meest van toepassing is voor een gegeven probleem.

• kunnen uitleggen hoe een regelgebaseerd systeem is opgebouwd.
• kunnen motiveren of een regelgebaseerd systeem ingezet kan worden voor een gegeven probleem.
• kunnen bepalen wanneer forward chaining respectievelijk backward chaining van toepassing is.
• backward chaining en forward chaining redeneermethoden kunnen uitvoeren.
• kunnen uitleggen waar conflict resolution voor nodig is en verschillende methoden kunnen uitvoeren.

• kunnen uitleggen hoe een regelgebaseerd systeem onzekerheid kan modelleren.
• het verschil tussen certainty factors en Bayesian reasoning kunnen uitleggen.
• de tekortkomingen van certainty factors kennen.
• aan hand van een beschrijving van een probleem een Baysiaans netwerk kunnen ontwerpen.
• eenvoudige Bayesiaanse systemen kunnen doorrekenen.
• aan hand van de uitkomsten van een Bayesiaans netwerk conclusies kunnen trekken.

• kunnen uitleggen wat fuzzy expertsystemen zijn en wanneer deze toegepast kunnen worden.
• het verschil tussen fuzzy logic en kansrekenen kunnen uitleggen.
• operaties op fuzzy sets kunnen toepassen.
• voor een gegeven probleem een fuzzy expertsysteem dat gebruikt maakt van Mamdani of Sugeno fuzzy inferentie kunnen opzetten.
• de stappen van fuzzy inferentie kennen en kunnen uitvoeren.

• kunnen uitleggen hoe een kunstmatig neuraal netwerk werkt en waneer dit ingezet kan worden.
• de structuur van perceptrons en feedforward netwerken kennen.
• de tekortkomingen van een perceptron kennen (of kunnen afleiden).
• voor een gegeven probleem een neuraal netwerk kunnen opstellen, trainen en testen.
• kunnen uitleggen hoe leren werkt in een neuraal netwerk met meerdere lagen.
• leerregels kunnen uitleggen.
• de voor- en nadelen van neurale netwerken kennen.
• het verschil tussen supervised en unsupervised learning kunnen uitleggen.
• de structuur en werking van Hopfield netwerken, BAM en Kohonen netwerken kunnen uitleggen.

• kunnen uitleggen wat evolutionary computation inhoudt en wanneer dit ingezet kan worden.
• een evolutionary algorithm voor een gegeven probleem kunnen opstellen en toepassen:
• keuze kunnen maken tussen genetic algorithms, evolutionary strategies en genetic programming als oplossingsmethode.
• de chromosomen, fitnessfunctie, selectiemechanisme en operatoren kunnen definiλren.
• genetische algoritme voor een eenvoudig probleem kunnen doorrekenen.

• kunnen uitleggen wat zelforganiserende systemen zijn.
• voor een gegeven probleem een oplossing die gebruik maakt van particle swarm optimization kunnen opstellen en toepassen:
• kunnen definiλren van de particles en fitnessfunctie voor een gegeven probleem.
• particle swarm optimization voor eenvoudige gevallen kunnen doorrekenen.
• verschillende methoden voor het aanpassen van de snelheid van particles kunnen uitleggen.
• kunnen uitleggen hoe ant-based algorithms werken.
• kunnen uitleggen hoe ant-based clustering werkt.
• ant-based clustering voor eenvoudige gevallen kunnen doorrekenen.
Onderwijsvorm
Hoorcolleges
Wijze van toetsen
Schriftelijk tentamen en opdrachten