Strokovnjaki s področja računalništva navdih za reševanje aktualnih problemov iščejo v različnih virih. Povsem logično je, da inspiracijo za marsikatero rešitev najdejo v naravi, saj so zaradi evolucije organizmi v naravi razvili izjemne metode za reševanje različnih problemov, s katerimi se soočajo vsak dan. Posledica tega je, da mnogo zelo znanih algoritmov za reševanje kompleksnih problemov posnema obnašanje organizmov v naravi. Tako na primer eden od algoritmov za iskanje najkrajše poti posnema obnašanje mravelj, sistem za hitro vzpostavitev mobilnega brezžičnega omrežja pa imitira letenje ptic v jati. Cilj predmeta je študentom predstaviti uporabo znanj o delovanju narave in živih organizmov pri izgradnji računalniških sistemov ali algoritmov. Poleg konkretnega znanja bodo študenti dobili tudi teoretično ozadje, s čimer se bodo lažje prilagajali hitrim spremembam v današnji računalniški industriji. Spretnosti, pridobljene pri predmetu, so prenosljive, saj so predstavljene metode uporabne na zelo širokem spektru področij. Z naučenimi tehnikami si bodo študenti lahko pomagali tudi pri ostalih predmetih študija oziroma pri morebitni nadaljnji računalniški karieri, tako na doktorskem študiju kot v industriji.
Pregled vsebine predavanj:
1.
Lectures overview:
1. Introductory lecture (motivation, fuzzy logic, biomimicry, collective behaviour)
2. Cinder++ (C++ API for creative coding, OpenGL)
3.-7. Fuzzy logic (fuzzy sets, membership functions, FIS, time and fuzzy logic, fuzzy arithmetic, fuzzy type 2, use cases)
8-12. Autonomous agents and collective behaviour (modelling and simulation of collective behaviour, particle systems, boids, SPP model, animats, modelling perception, drives, action selection, verification)
13-15. Artificial life and artificial worlds (learning agents, learning collective behaviour, framstics, stickyfeet, fuzzy evolution and fuzzy genetic algorithms)
Lab work:
Group project in modelling and simulation related to the topics covered in the course.- nosilec: Iztok Lebar Bajec