The Appearance of Multiparadigm Programming Languages in the Teaching of Artificial Intelligence

Dátum
Folyóirat címe
Folyóirat ISSN
Kötet címe (évfolyam száma)
Kiadó
Absztrakt

The main goal of my dissertation was to come up with a new methodology that helps make teaching programming-oriented computer science in higher education more effective. The new methodology is based on long-term projects spanning the whole duration of students' studies, forcing them to apply the knowledge acquired during the project-related subjects. As a small part of the proposed methodology, I put special emphasis on the teaching of the subject Introduction to Artificial Intelligence. I propose the introduction of multiparadigm languages on the seminars of subjects dealing with artificial intelligence in practice. Giving more implementations of search algorithms using different approaches may help students understand the logic behind those algorithms. I give detailed examples of such implementations in C# and F# and also compare those implementations. Programming contests can be a fairly motivating factor for students. Together with two of my colleagues, we have developed a web application which is able to manage programming contests as well as to evaluate solutions to programming assignments submitted by students. I briefly introduce this application and describe its benefits against other similar software and our experience with it. Az értekezésem fő célja egy új módszertan kidolgozása volt a programozásorientált informatika felsőfokú oktatásának eredményesebbé tétele érdekében. Az új módszertan a hallgatók teljes tanulmányi idejét felölelő hosszú távú projekteken alapul, amelyek a legtöbb kötelező tárgy ismereteit magukban foglalják. A javasolt módszertan egyik apró elemeként különös hangsúlyt fektettem A mesterséges intelligencia alapjai című tantárgy oktatására. Javaslom a multiparadigmás nyelvek bevezetését a gyakorlati mesterséges intelligenciával foglalkozó tantárgyak oktatásába. Ha a kereső algoritmusok több, különböző megközelítést használó implementációját adjuk a hallgatók kezébe, az segíthet számukra megérteni az algoritmusok logikáját. Részletes példákat adok ilyen implementációkra C# és F# nyelven, amelyeket össze is hasonlítok egymással. A programozó versenyek is kitűnő motivációt jelenthetnek a hallgatóknak. Két kollégámmal közösen kifejlesztettünk egy webalkalmazást programozó versenyek lebonyolításának, valamint a hallgatók által különböző programozási feladatokra beküldött forráskódok kiértékelésének a támogatására. Röviden bemutatom ezt az alkalmazást, továbbá ismertetem az előnyeit más hasonló szoftverekkel szemben, valamint a vele szerzett tapasztalatainkat is.

Leírás
Kulcsszavak
teaching methodology, oktatási módszertan, artificial intelligence, mesterséges intelligencia, state-space representation, állapottér-reprezentáció, search algorithms, kereső algoritmusok, functional programming, funkcionális programozás, F#, programming contests, programozó versenyek, ProgCont
Forrás