predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · principi programskih...

30
Inštitut za računalništvo http://cs.feri.um.si/ Predstavitev študentskih projektov in izbirnih predmetov Za študente in študentke 2. in 3. letnika univerzitetnega študijskega programa Računalništvo in informacijske tehnologije (feb. 2022 – feb. 2023)

Upload: others

Post on 04-Sep-2021

11 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Inštitut za računalništvo http://cs.feri.um.si/

Predstavitev študentskih projektov in izbirnih

predmetov

Za študente in študentke 2. in 3. letnika univerzitetnega študijskega programa

Računalništvo in informacijske tehnologije (feb. 2022 – feb. 2023)

Page 2: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Inštitut za računalništvo http://cs.feri.um.si/

Splošno o projektih (1/2)

• Projektne vsebine so smiselno povezane z osnovnimi znanji s področij računalništva in informacijskih tehnologij.

• Cilji projektov so uporabne rešitve. Imajo praktični pomen, nekatere so povezane s problemi partnerjev iz gospodarstva.

• Vsak projekt traja eno leto: od okoli 20. feb. 2022 do okoli 20. feb. 2023, t.j. projekt se začne s poletnim semestrom 2. letnika in zaključi na koncu zimskega semestra 3. letnika.

Page 3: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Inštitut za računalništvo http://cs.feri.um.si/

Splošno o projektih (2/2)

• Projekt obsega točno določenih 8 predmetov: 4 predmete v 2. letniku in 4 predmete v 3. letniku.

• Študent, ki izbere projekt, izbere avtomatsko 8 na projekt vezanih predmetov.

• Izbere se tudi predmet Projektni praktikum, ki je usmerjen v upravljanje projekta, teste izvedljivosti prototipov in izdelavo dokumentacije…

Page 4: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Inštitut za računalništvo http://cs.feri.um.si/

Osnovni cilji projektov

• Pridobiti izkušnje iz snovanja projekta in reševanja problemov

• Navajanje na timsko delo in prevzemanje odgovornosti znotraj skupine.

• Pridobiti izkušnje iz izdelave projektne dokumentacije.

• Spoznati in razumeti pomembnost ustrezne predstavitve opravljenega dela.

Page 5: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Inštitut za računalništvo http://cs.feri.um.si/

Izbor projekta (1/2)

• Ministrstvo za izobraževanje, znanost in šport je normiralo velikost skupine, v kateri naj bi bilo 15 študentov.

• Načela dobrega gospodarja (zaradi financiranja in optimalne izkoriščenosti prostorskih in kadrovskih potencialov na Inštitutu za računalništvo) nas silijo, da ustrezno prilagodimo število študentov v posameznem projektu. Vsako leto se trudimo narediti minimalne korekcije števila študentov.

Page 6: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Inštitut za računalništvo http://cs.feri.um.si/

Izbor projekta (2/2)

• Študent pri vpisu v drugi letnik izpolni poseben formular, v katerem zapiše naziv projekta, v katerega se želi vključiti.

• Izpolnjeni formular odda v študentski referat.

• Pri izbiri projekta bodo imeli prednost študentje z višjo povprečno oceno izpitov.

Page 7: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Projekt 1

Inštitut za računalništvo http://cs.feri.um.si/

Izgradnja platforme veriženja blokov in njena

uporaba pri razvoju digitalnih dvojčkov

Page 8: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Cilji projekta

1. Izdelati lastno verigo blokov

2. Izdelati digitalnega dvojčka oz. navidezno

predstavitev izbranega procesa, produkta ali storitve

Končni izdelek bo tako digitalni dvojček, ki bo podatke hranil v

verigi blokov in bo omogočal uporabo pametnih pogodb.

Študentje bodo tekom projekta spoznali:

• delovanje distribuiranih računalniških sistemov,

• kriptografijo in zaščito podatkov,

• izdelavo spletnih aplikacij,

• zasnovo in razvoj programskega jezika,

• izdelavo virtualnega modela,

• razvoj na mobilnih napravah in

• razpoznavanje vzorcev.

Inštitut za računalništvo http://cs.feri.um.si/

Page 9: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Kaj je veriga blokov?

Inštitut za računalništvo http://cs.feri.um.si/

• Veriga blokov transakcij

• Distribuiran sistem

• Omogoča uvedbo lastne valute

• Omogoča pametne pogodbe

Page 10: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Naredili bomo svojo verigo blokov!

Inštitut za računalništvo http://cs.feri.um.si/

• Spletna aplikacija

• Zapis in potrjevanje transakcij

• Varnostni mehanizmi proti zlorabi

Page 11: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Kaj je digitalni dvojček?

Inštitut za računalništvo http://cs.feri.um.si/

• Digitalna predstavitev oz. kopija fizičnega predmeta, sistema ali

procesa (entitete)

• Preprosto povedano to pomeni izdelava zelo zapletenega

virtualnega modela, ki je natančen ekvivalent (ali dvojček) fizične

stvari

• Entitete so lahko ljudje, kraji, organizacije, stroji, tovarne, mesta, proizvodni procesi, oskrbovalna verige...

Page 12: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Primer digitalnega dvojčka za Maribor

Inštitut za računalništvo http://cs.feri.um.si/

Page 13: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Primer digitalnega dvojčka za Maribor

Inštitut za računalništvo http://cs.feri.um.si/

Digitalni dvojček bo pridobival neprekinjen pretok

podatkov iz različnih virov:

• Informacije o fizičnih parametrih okolja, pridobljene v

realnem času iz inteligentnih senzorjev (temperatura

zraka, vlažnost, onesnaženost zraka, onesnaženost s

hrupom, semaforji ...)

• Informacije o prometu zasebnega, komercialnega in

javnega prevoza, pa tudi o prometnih zastojih

• Podatki iz odprtih virov (kot so razni portali in storitve,

podatki o meteoroloških razmerah, odprto poročanje

raznih organizacij...)

Page 14: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Primer digitalnega dvojčka za Maribor

Inštitut za računalništvo http://cs.feri.um.si/

Digitalni dvojček mesta omogoča naslednje funkcije:

• Spremljanje trenutnega stanja v mestu

• Daljinsko upravljanje sistemov• Izboljšan odziv na izredne razmere

• Ocena učinkovitosti projektnih rešitev

• Izboljšavo javnega prevoza in logistike

• Analiza porabe energije

• Testiranje scenarijev in strateško načrtovanje

• Identifikacijo potencialnih tveganj

• Napoved razmer glede na zgodovinske podatke

• Shranjevanje dogodkov v verigo blokov

Page 15: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Digitalni dvojček

Inštitut za računalništvo http://cs.feri.um.si/

Zasnovali bomo digitalnega dvojčka, ki bo uporabljal

verigo blokov za shranjevanje podatkov in bo

omogočal:

• Vizualizacijo in interakcijo s fizičnim objektom oz.

sistemom

• Zajem podatkov iz raznih senzorjev in drugih virov

• Simulacijo in napoved različnih scenarijev

• Analizo dogajanja v preteklosti

• Optimizacijo sistemov, naprav ali procesov s

spreminjanjem vrednosti v simulacijskem modelu

Page 16: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Vključeni predmeti - letni semester(2.l)

Inštitut za računalništvo http://cs.feri.um.si/

Spletno programiranje (Tomaž Kosar)

Izdelava spletnega vmesnika (vnos nastavitev, pregled)

Zaledni sistem za prenos podatkov (nastavitve in podatki iz senzorjev)

Principi programskih jezikov (Tomaž Kosar)

Zasnova simulacije brez vizualnega dela

Pridobivanje podatkov iz raznih odprtih virov

Prevajanje programskih jezikov (Marjan Mernik)

Branje različnih formatov za izmenjavo podatkov (.gpx, .tcx, ...)

Zasnova lastnega označevalnega jezika

Sistemska administracija (Janez Brest)

Podpora razvoju in vzpostavitev potrebe programske opreme

Kontrola izvorne kode, verzioniranje, varnostno kopiranje, veje in združevanje

Administriranje programske opreme, potrebe za izvajanje spletnih aplikacij

(Docker, spletni strežnik, podatkovni strežnik, varnostne nastavitve)

Page 17: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Vključeni predmeti - zimski semester(3.l)

Inštitut za računalništvo http://cs.feri.um.si/

Razvoj računalniških iger (Matej Črepinšek)

Izdelava 2D modela digitalnega dvojčka (pokrajina, človek, predmet…)

Platformno odvisen razvoj aplikacij (Matej Črepinšek)

Razvoj mobilne aplikacije za zajem in objavo podatkov iz senzorjev

Uvod v računalniški vid in razpoznavanje vzorcev (Božidar Potočnik)

Uporaba razpoznavanja vzorcev nad zajetimi podatki

Uporaba strojnega učenje za uglaševanje digitalnega dvojčka

Paralelno in porazdeljeno računanje (Janez Brest)

Izdelava lastne porazdeljene verige blokov za sledljivost blaga in vseh

virov (denar, voda, gorivo, blagovna menjava, razni dogodki …)

API za transakcije in pametne pogodbe

Page 18: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Projekt 2:

Umetna inteligenca v avtonomni vožnji

Inštitut za računalništvo https://cs.feri.um.si/

Page 19: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Platforma: lastno miniaturno vozilo

Inštitut za računalništvo https://cs.feri.um.si/

• Ogrodje:

• možnost izgradnje lastnega vozila iz obstoječih elektronskih komponent in

lastnih delov, proizvedenih s 3D tiskalnikom

• servo mehanizem za krmiljenje koles

• Mikrokrmilnik:

• razvojne ploščice STM F411 (ARM Cotrex-M4)

• Senzorji:

• enotočkovni lidar VL35L0X (do razdalje 2 m), Arduino kamera,

• pospeškometer, žiroskop, magnetometer, Mikrofon,

• sprejemnik WiFi ESP8266,

Page 20: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Cilji projekta

• Implementirati algoritme za zajem, stiskanje in

obdelavo podatkov s senzorjev.

Inštitut za računalništvo https://cs.feri.um.si/

Page 21: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Cilji projekta

• Izdelati algoritme za razpoznavo okolice in

podporo samostojni vožnji in jih vgraditi v

preprosto lastno miniaturno vozilo.

Inštitut za računalništvo https://cs.feri.um.si/

Page 22: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Rešitve: rezultati prejšnjih generacij

Inštitut za računalništvo https://cs.feri.um.si/

Page 23: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Rešitve: rezultati prejšnjih generacij

Inštitut za računalništvo https://cs.feri.um.si/

Page 24: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Cilji projekta

• Izdelati 3D model okolja za preizkušanje vozila.

Inštitut za računalništvo https://cs.feri.um.si/

• 2. letnik: prostodostopni model,

• 3. letnik: izdelava lastnega 3D

modela FERI in njene lokalne okolice

Page 25: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Cilji projekta

• Implementirati algoritme za vizualizacijo

zbranih podatkov v realnem času

Inštitut za računalništvo https://cs.feri.um.si/

3,4 km

3 mA

15:32 23/33

Page 26: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Rešitve: rezultati prejšnjih generacij

Inštitut za računalništvo https://cs.feri.um.si/

Page 27: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Izzivi in osvojena znanjaPovezava senzorskih,

računskih in komunikacijskih

modulov v delujoč računalniški sistem.

Programiranje sistemske programske opreme za

lastne računalniške sisteme.

Zajem senzorskih podatkov, odstranjevanje šuma in

ocenjevanje informacij iz zajetih podatkov.

Zasnova in implementacija algoritmov umetne inteligence za podporo avtonomni vožnji.

Testiranje v simuliranih in realnih okoljih

Inštitut za računalništvo https://cs.feri.um.si/

Page 28: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Izzivi in osvojena znanja

3D modeliranje in

programiranje

uporaba igračarskihpogonov za prikaz podatkovpodatkovna

analitika in vizualizacija

realnih podatkov v digitalnem

svetu

Ustvariti svoje 3D okolje in v njem navigirati:

Inštitut za računalništvo https://cs.feri.um.si/

Page 29: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Vključeni predmeti - letni semester(2.l)

Inštitut za računalništvo https://cs.feri.um.si/

Umetna inteligenca (Damjan Strnad)

Razpoznava okolice in izogibanje ovir. Izbira poti do cilja (zemljevid).

Računalniški algoritmi za samostojno vožnjo.

Uvod v računalniško geometrijo (Borut Žalik)

Ocenitev lokacije v prostoru (triangulacija glede na oddajnike WiFi).

Ocena prevožene poti (hitrosti) in gradnja prevožene poti po prostoru.

Sistemska programska oprema (Aleš Holobar)

Povezava komponent v delujoč računalniški sistem in programiranje

sistemske programske opreme. Analiza in uporaba komunikacijskih

protokolov.

Signali in slike (Aleš Holobar)

Obdelava signalov in slik iz senzorjev (kamera, lidar, zvok).

Page 30: Predstavitev študentskih projektov in izbirnih predmetov · 2021. 6. 10. · Principi programskih jezikov (Tomaž Kosar) ... Računalniški algoritmi za samostojno vožnjo. Uvod

Vključeni predmeti - zimski semester(3.l)

Inštitut za računalništvo https://cs.feri.um.si/

Računalniška grafika (Damjan Strnad)

Izdelava 3D modela okolja vožnje (FERI/bližnja okolica) za vključitev v

simulacijo in vizualizacijo parametrov vozila.

Grafični prikaz podatkov vozila (vizualizacija podatkov za analizo vožnje).

Multimedia (Borut Žalik)

Stiskanje pretočnih vsebin/podatkovnih tokov s senzorjev.

Snovanje računalniških in digitalnih sistemov (Aleš Holobar)

Zajem podatkov s senzorjev (kamera, lidar, zvok).

Vgradnja algoritmov za samostojno vožnjo v vozilo (C in knjižnice).

Vgrajeni sistemi (Matjaž Colnarič)

Izbrana poglavja iz programiranja mikroprocesorjev ARM.

Uporaba sprejemnika WiFi za pridobitev triangulacijskih signalov.