Matematikai programozás Python nyelven


A önképző kör plakátja

Időpont: minden csütörtökön 18.00-20.00, online (pontosítás a résztvevőkkel egyeztetés után)

Formaönképző/szakkör, kredit nélkül

Történet:

Az alkalmazott matematikus szakmában szinte kivétel nélkül szükség van számítógépes megvalósításra, legyen szó pénzügyi, mérnöki, egészségügyi vagy természettudományos területről, sőt tisztán "alkalmazott matematikus" munkakör kevés cégnél található meg. A mai munkaerő piaci környezetben már nem csak az elvárás, hogy egy fejlesztői/elemzői munkára jelentkező jelölt képes legyen problémamegoldó eljárásokat leprogramozni, hanem több-kevesebb tapasztalattal kell rendelkezni olyan témakörökben, mint a verziókövetés, a fenntartható kód vagy a csapatmunka. Sőt, az esetek többségében nem csak az a fontos, hogy a jelölt az előbbi képességekkel rendelkezzen, hanem hogy milyen programozási nyelvben van tapasztalata: a cégek többsége a modern vagy széles körben használt nyelvek ismeretét várja, úgy mint a C++, Java, Python vagy az R.

Cél:

A szakkör célja, hogy a munkaerő piac és a modern kor kihívásaira felkészülvén az egyik legnépszerűbb programozási nyelv, a Python alapjaival ismerkedjünk meg, matematikai témakörökön keresztül, már az elejétől objektum-orientált megközelítéssel, különös figyelmet fordítva a fenntartható kódolásra. Ahhoz, hogy valaki hallgatóként a jövőben megjelenő Bolyai Intézet és ipari szereplők közötti együttműködésekben részt vehessen, elengedhetetlen olyan programozási nyelvvel és fejlesztői eszközökkel dolgozni, amelyekkel a cégek is dolgoznak, ezért cél az is, hogy megismerkedjünk kommunikációs eszközzel (Slack), csapatban való kódolásra alkalmas platformmal (GitLab) és integrált fejlesztői környezettel (PyCharm). Lesz olyan alkalom, amikor munkatapasztalatokról mesél a szervező illetve meghívott vendégek, akik az iparban dolgoznak.

Akiknek ajánlott:

Az önképző jellege miatt elsősorban olyan motivált hallgatókat várok, akik számára természetes a gondolat, hogy a problémamegoldás megvalósításához programozniuk kell és szeretnének tapasztalatot szerezni fenntartható kód írásában, modern fejlesztői eszközök használatában. A tárgyalt témakörök matematikailag az első éves tárgyak ismeretét igénylik, programozás szempontjából az koncepcionális alapok ismeretét (ciklusok, feltételkezelés, tömbök), azaz Python ismerete nem szükséges. Fontos hangsúlyozni, hogy a motiváció mellett (hiszen kredit nem jár ezért a munkáért) nyitottságra, elszántságra és tanulni akarásra lesz szükség.

IDE (Integrated Development Environment): PyCharm

Verziókövetés és csapatmunka: GitLab

Kommunikációs platform: Slack

Dokumentumok tárolása: Dropbox

Online alkalmak: Google Meet



Python
1) Programozási alapok (ciklus, feltételkezelés, adatstruktúrák, stb.)
2) Objektum-orientált programozás (osztály, példány, konstruktor, operátorok, metódusok, öröklődés, stb.)
3) Alapvető függvénycsomagok: numpy (mátrixszámításokra), matplotlib (ábrázolásra)
4) Mesa modellező keretrendszer
5) Fenntartható kódolás (PEP8, dokumentáció, annotáció, stb.)
6) PyCharm, mint a Jetbrains termékcsalád Python IDE-je; Google Colaboratory, a felhő alapú Jupyter munkafüzet

Matematika
1) BoundingBox osztály: reprezentációk, metszet
2) Complex osztály: komplex számok, műveletek komplex számokkal, reprezentációk és konverzió közöttük

3) Matrix osztály: mátrixok, műveletek mátrixokkal
4) Konvolúció mátrixokon
5) Ágens-alapú modellek és sejtautomaták


Aki szeretne részt venni az önképző kör munkájában, a vizizsolt89@gmail.com e-mailcímre küldjön egy rövid bemutatkozást (évfolyam, szakirány, programozási tapasztalat, érdeklődési kör) és néhány mondatot arról, miért szeretne csatlakozni. Ezután egy rövid, kötetlen beszélgetésre kerül sor (max. 30 perc), amely után kiválasztott jelentkezők hozzáférést kapnak a szakkörön használt platformokhoz. 

A szervezőről:

Vizi Zsolt (honlap): 

BSc-s szakdolgozatomban kémiai reakciók, MSc-s diplomamunkámban vakcinálási modellek, doktori disszertációmban hálózaton terjedő betegség sztochasztikus és differenciálegyenletes modelljeinek számítógépes vizsgálatával foglalkoztam. 2016 és 2019 között a Robert Bosch Kft-nél dolgoztam algoritmusfejlesztő és gépi tanulás fejlesztő pozíciókban önvezető autós technológiákon, több ipari együttműködési projektben voltam vezető kutató, 2020 óta a koronavírus modellezésén, számítógépes szimulációján is dolgozom a magyar kormánynak. Szívügyem az "ipari matematika", ezzel a szakkörrel olyan hallgatókat szeretnék toborozni, akikkel a jövőben együtt dolgozhatok ilyen témában ipari/kutatási projektekben.