Topic outline

  • O predmetu

    Študenti imajo morda napačen vtis, da so algoritmi in podatkovne strukture znanost o postopkih urejanja in obratih uravnoteženih dreves. Prva naloga predmeta je odpraviti ta škodljivi vtis in se prepričati, da so drevesa, bisekcija, teorija informacij, dvojiški številski sistem, končni avtomati in celo rekurzija (ta sploh!) najbolj vsakdanje reči na svetu.

    Nato (ali še boljše, istočasno) pa nas bo zanimalo, kako o tem prepričati še druge, neračunalnikarje. Kako desetletnemu otroku razložiti končne avtomate (iskanje otoka zakladov), NP-polne probleme (težave piranskega župana s sladoledarji) in strojno učenje (z računalnikom iz bombonov, seveda). Kako je vse to videti, si lahko ogledate na strani z materiali, ki jih bomo uporabljali pri predmetu.

    Čeprav bomo razmišljali splošneje, nas bo zanimalo predvsem, kako učiti otroke. Za to bomo morali izvedeti nekaj malega o psihologiji in poučevanju. Pač v okviru skromnih mej predavateljevega znanja.

    Predmet ne bo visel v zraku: ne zanima nas, kako se to dela, temveč bomo to tudi naredili. Vsak študent si bo moral najti delo, ki mu leži - od vodenja krožka do izdelave podcasta.

  • Dvojiški zapis števil

    Ali Kaj odgovoriti babici, ko vas vpraša, kaj pomeni, da računalniki uporabljajo samo ničle in enice. In tudi Kaj se lahko novega naučimo ob razmišljanju ob dvojiškem zapisu števil.

    • Zapis drugih vrst podatkov, stiskanje in korekcija napak

      Zveza med bisekcijo, stiskanjem podatkov, drevesi in entropijo.
      • Algoritmi (recimo urejanja)

        V okviru teh predavanj izvemo, v kakšnem kontekstu bi bilo lahko to, da ste se v okviru svojega študija učili vse možne postopke urejanja, pravzaprav koristno.
        • Končni avtomati

          Končni avtomati so zanimiv primer snovi, ki jo skozi igro pokažemo tudi otrokom - nekoliko težko pa jim je razložiti, kako jih uporabljamo v računalništvu.
          • Grafi in časovna zahtevnost

            Na nekaj algoritmih na grafih bomo pokazali problem eksponentne časovne zahtevnosti, NP polnosti... Opazimo tudi, kako se lahko navidez povsem različni problemi prevedejo na isti problem, ki ga rešujemo z istim algoritmom.
            • Poučevanje rekurzije

              Tole sem si pripravil za neko drugo predavanje, a lahko pride prav tudi pri tem predmetu
              • Problemi iz kriptografije

                Skrivne pisave so vedno zabavna reč. Kriptografija je tudi lep primer, na katerem lahko pokažemo, kaj je "računalniška zvitost".
                • Umetna inteligenca

                  Ob umetni inteligenci pogosto razočarani: otroci mislijo, da to kar vidijo v filmih, resnično obstaja, študente pa razočara, da je umetna inteligenca ena sama matematika. Vseeno se lahko o temi razvije zanimiv pogovor, podkrepimo pa ga z aktivnostjo, v kateri naredimo računalnik iz bombonov.