22.
mar
Zagovor doktorske disertacije Timoteja Lazarja
ob 15:15

Timotej Lazar bo v četrtek, 22. marca 2018, ob 15.15 zagovarjal doktorsko disertacijo z naslovom Generiranje namigov v sistemih za poučevanje programiranja.

Zagovor bo v diplomski sobi na Fakulteti za računalništvo in informatiko UL.

Vabljeni!

 

Povzetek:

Programiranje je uporabna in zmeraj pomembnejša veščina. V zadnjem desetletju so se pojavili mnogi spletni tečaji programiranja, za katere je izkazalo interes mnogo uporabnikov. Na takih tečajih je običajno preveč udeležencev, da bi učitelj delal z vsakim posameznikom. Prav neposredne povratne informacije pa lahko zelo olajšajo učenje.

Področje inteligentnih sistemov za poučevanje oziroma tutorjev se ukvarja s problemom samodejnega podajanja povratnih informacij. Ti sistemi so tradicionalno temeljili na domenskem modelu, ki ga učitelj definira vnaprej. Izdelava takega modela je težavna naloga, sploh v kompleksnih domenah, kot je programiranje.

Potencialna rešitev tega problema je uporaba podatkovno vodenih modelov, ki jih tutor samodejno zgradi tako, da opazuje, kako so učenci reševali naloge v preteklosti. Ko nov učenec naleti na podobno težavo, ga lahko sistem z namigi usmeri na pravo pot. Pri poučevanju programiranja je tak pristop precej zahteven, saj akcij pri pisanju programa ni lahko interpretirati.

Disertacija predstavlja dva nova pristopa k podatkovno vodenemu modeliranju programerskih domen. Prvi pristop modelira pisanje programa z zaporedjem popravkov kode in se uči prepisovalnih pravil za spreminjanje programov. S temi pravili lahko tutor samodejno odpravi napake v novih nepravilnih programih. Drugi pristop uporablja sintaktične vzorce v abstraktnih sintaktičnih drevesih, na podlagi katerih se uči pravil za ločevanje med pravilnimi in nepravilnimi programi. Oba modela lahko uporabimo za samodejno odkrivanje tipičnih napak v programih in generiranje namigov.

Razvili smo spletno aplikacijo za učenje programiranja, v kateri smo preizkusili oba pristopa. Rezultati kažejo, da lahko na podlagi obeh modelov generiramo namige, ki učencem pomagajo pri reševanju programerskih nalog.

 

Mentor: akad. prof. dr. Ivan Bratko

 

Komisija za zagovor:

dekan prof. dr. Gašper Fijavž predsednik

prof. dr. Igor Kononenko, član

prof. dr. Marko Robnik Šikonja, član

Prof. Gerhard Friedrich, PhD., član