1. del predmeta: Modeliranje letenja ptic v jatah

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. Preučevanje naravnih pojavov je tako zelo zanimivo
področje, saj nam omogoča natančnejši vpogled v njeno delovanje, obenem
pa nam omogoča tudi prenos pridobljenih znanj v tehnologijo. A v naravi
svet ni črno-bel, prisotne so sivine.

V življenju ste se že
večkrat srečali z izzivom, ki je zahteval nedvoumen pritrdilen ali
nikalen odgovor … in ste omahovali. Odločitev ni bila preprosta, oba
primera sta ustrezala, noben ni bil pravi. Svet računalništva, kot ga
poznamo, temelji na dvojiški (dvo-vrednostni) logiki, ki v osnovi
omogoča le odgovor da ali ne; vmesne poti ni.

Predmet Aktualne
raziskovalne vsebine: naravno računalništvo se ukvarja z »omahovanjem.«
Ukvarja se z metodami uvajanja »tretje« možnosti, odgovora, ki ni ne
pritrdilen ne nikalen, in njihovo uporabo pri modeliranju naravnih
sistemov.

Pri predmetu bomo spoznali osnove trojiške
(tro-vrednostne) logike, kot najpreprostejše razširitve dvojiške
(dvo-vrednostne) logike, in nadaljevali z mehko logiko kot primerom
zvezne logike. Večji del semestra bomo namenili uporabi teh dveh logik
pri modeliranju naravnih sistemov, pri čemer se bomo osredotočili
predvsem na modeliranje dinamike gibanja v skupini. Algoritmi, ki jih
bomo spoznali, se uporabljajo za upravljanje avtonomnih vozil,
načrtovanje evakuacijskih poti, načrtovanje prometa, v zabavni
industriji (računalniške igre, filmi), ...

Delo bo večinoma
potekalo v programskem jeziku C++ in okolju Cinder, pri čemer bo delo
zajemalo tudi izdelovanje 3D grafičnih prikazov. Predmet tako zahteva
poznavanje osnov vektorske aritmetike, programiranja (zaželeno
poznavanje jezika C/C++, Java) in programiranja 3D grafike (grafična
knjižnica OpenGL).


2. del predmeta: Računalniške metode v sintezni biologiji

Sintezna
biologija je novo znanstveno področje, ki se ukvarja z načrtovanjem in izdelavo
novih, sintetičnih, bioloških sistemov. Številni uspehi področja so rodili
aplikacije kot so na primer pametna zdravila, biološki sistemi kot obnovljivi
viri energije in sistemi za zmanjševanje onesnaženosti kot tudi računalniške
stukture, ki bodo lahko v bližnji prihodnosti predstavljale osnovne logične
elemente bioloških računalnikov.

V
okviru predmeta Računalniške metode v sintezni biologiji se bodo študenti poglobili
v aktualne računalniške metode, ki se v zadnjem času uporabljajo na tem interdisciplinarnem
področju. Računalniški pristopi so v tem kontekstu postali nepogrešljivi, saj
na osnovi modeliranja bioloških sistemov omogočajo njihovo analizo, načrtovanje
in verifikacijo pred samo biološko realizacijo. Prav tako se bodo študenti
spoznali tako z naravnimi kot tudi s sintetičnimi biološkimi sistemi, ki
omogočajo procesiranje informacij na podoben način kot to v današnjem času
vršijo digitalni elektronski sistemi, ki sestavljajo sodobne računalnike.



1st part: Modelling and simulation of collective behaviour

Experts
from the field of computer science seek inspiration for solving current
problems in various fields. On numerous occasions Mother Nature
provided them the inspiration for solutions of the most puzzling
problems. This seems intuitive, as throughout natural evolution living
organisms have learned to adapt to and survive the challenges that they
face on a daily basis. The study of living organisms and natural
phenomena is a very interesting one as it seeks to elucidate the rules
that govern the natural world, but it also enables one to transfer the
acquired knowledge into technology. But the natural world is not
black-and-white, it is full of shades of grey (many more than fifty).

In
life you were probably already faced with a challenge that required an
unambiguous affirmative or negative answer … and yet you hesitated. The
dilemma was not simple, both answers fitted, none was right. Computers,
as we have been taught, are based on binary (two-valued) logic, which in
its essence allows only for a YES/NO answer; with no middle truth.

The
course Current research topics I: Part I is dedicated to “hesitation.”
It deals with the middle truth, the answer that is neither affirmative
nor negative, and its application to nature-inspired systems and
modelling of natural systems.

Throughout the course you will be
introduced to ternary (three-valued) logic as the simplest extension of
binary (two-valued) logic, and from there to fuzzy logic as an example
of continuous logic. Most of the course will be dedicated to the use of
these logics in models of natural systems, where the principal focus
will be the modelling and simulation of collective behaviour. The
algorithms that we will discuss are used to control unmanned aerial
vehicles (UAV), planning of evacuation routes, traffic, entertainment
industry (computer games, films), etc.

Lab work will mostly be
carried out in the programing language C++ and the Cinder framework,
where it will include also the development creation of 3D
visualizations. The prerequisites of this course are therefore
understanding of basic vector arithmetic, programming (C/C++, Java) and
3D graphics (OpenGL graphics library).


2nd part: Computational Approaches in Synthetic Biology

Synthetic biology is an emergent
scientific field which aims the design and construction of novel, i.e.
synthetic, biological systems. Several successful applications were reported
recently such as intelligent therapeutics, renewable energy sources and systems
for environmental pollution removal. Also, basic information processing
structures were already realized, which will probably present the basic parts
of biological computers in the near future.

The course will provide an outline
of the state of the art computational approaches used in this interdisciplinary
field. Computational approaches support the rapid progress of the filed while
they allow us to thoroughly analyse the novel biological systems before its
experimental (i.e. biological) realization. Moreover, we will introduce the
biological systems which are able to process information in similar manners as
digital electronic systems that comprise modern computers.