BSc Matematika Alapszak
Tantárgyleírás
2020.
Tantárgyleírás
2020.
Matematikai algoritmusok és felfedezések2
- Óraszám (ea+gy): 2 + 2
- Specializáció: matematikus
- Kredit (ea+gy): 3 + 3
- Számonkérés: kollokvium + gyak. jegy
- Tárgykód (ea, gy): felfed2x0_m20ea, felfed2x0_m20ga
- Ajánlott félév: 5
- Státusz: köt. vál.
- Specializáció: alk. mat.
- Kredit (ea+gy): 3 + 3
- Számonkérés: kollokvium + gyak. jegy
- Tárgykód (ea, gy): felfed2x0_m20ea, felfed2x0_m20ga
- Ajánlott félév: 5
- Státusz: köt. vál.
- Specializáció: elemző
- Kredit (ea+gy): 3 + 3
- Számonkérés: kollokvium + gyak. jegy
- Tárgykód (ea, gy): felfed2x0_m20ea, felfed2x0_m20ga
- Ajánlott félév: 5
- Státusz: köt. vál.
Óraszám
ea(+k) + gy(+k) |
Kredit
ea + gy |
Számonkérés | Specializáció | Tárgykód
ea/gy |
Ajánlott
félév |
Státusz |
---|---|---|---|---|---|---|
2 + 2 | 3 + 3 | kollokvium + gyak. jegy |
matematikus | felfed2x0_m20ea felfed2x0_m20ga |
5 | köt. vál. |
3 + 3 | kollokvium + gyak. jegy |
alk. mat. | felfed2x0_m20ea felfed2x0_m20ga |
5 | köt. vál. | |
3 + 3 | kollokvium + gyak. jegy |
elemző | felfed2x0_m20ea felfed2x0_m20ga |
5 | köt. vál. |
Tantárgyfelelős
Erős | Gyenge | előfeltételek |
---|---|---|
Gyakorlat | ||
Erős:
Matematikai algoritmusok és felfedezések1E
(felfed1x0_m20ea)
| ||
Előadás | ||
Gyenge:
a gyakorlat
|
Megjegyzések
- A tantárgy oktatásának módja: Előadás és géptermi gyakorlat.
- Követelmény: Gyakorlaton beadandók és zárthelyi. Előadáson a követelmény vizsga, az oktató azonban megajánlhat jegyet az évközi munka alapján.
A tematikát kidolgozta:
Szükséges előismeretek
A Matematikai algoritmusok és felfedezések1 kurzus anyaga. Ajánlott a Véges matematika2 és az Operációkutatás tantárgyak ismerete. Az alábbi haladó Python ismereteket átvesszük a kurzus során: objektum orientált programozás, lambda függvény definiálás, dekorátorok, generátorok, fájl írása, olvasása, vizualizáció: matplotlib, Sagemath, widgets, @interact, csv file típus, grafikus felület, Scikit-learn, tensorflow.
A tantárgy célkitűzése
- A tantárgy elsődleges célja a hogy megismertesse a hallgatókat a matematikai és tudományos programozás alapjaival. Olyan témakörök, algoritmusok, módszerek bemutatására törekszünk, amelyek segítséget nyújtanak mind elméleti, mind alkalmazott matematikai problémák megoldásában.
- A tantárgy másodlagos célja Python programozási nyelven komolyabb (de 1000 sor alatti) hallgatói programok létrehozása.
- A kurzus során az oktatásban, valamint a beadandó feladatok esetében is olyan példák és feladatok kiválasztására törekszünk, ami segíti a diákok algoritmikus gondolkodásának fejlesztését valódi matematikai problémákon keresztül.
Irodalom
- Peter Wentworth, Jeffrey Elkner, Allen B. Downey and Chris Meyers: Hogyan gondolkozz úgy, mint egy informatikus: Tanulás Python 3 segítségével 3. Online elérhető.
- Peter Wentworth, Jeffrey Elkner, Allen B. Downey and Chris Meyers: How to think like a computer scientist. Online elérhető (ennek a könyvnek sok verziója van).
- Mark Lutz: Learning Python. Online elérhető.
- A Python nyelv hivatalos honlapja.
- Magyar fordítás a Python 3.6 dokumentációjához.
Tematika
- Kombinatorikus problémák, algoritmusok: dinamikus programozás, hátizsák probléma, Közelítő algoritmusok (min 2-élösszefüggő feszítő részgráf), elvágó pontok megkeresése, Max-vissza sorrend es alkalmazasai, merevség.
- Gráfelméleti algoritmusok: különböző adatstruktúrák konvertálása, random gráfok definiálása és evolúciója (random könyvtár).
- Algebrai algoritmusok: szimbolikus számítások, generátor függvények.
- Geometriai algoritmusok: konvex burok, felező egyenes, Voronoi cella.
- Operációkutatás: folyam feladat, egészértékű programozás.
- Adatbányászat: perceptron algoritmus (először sima Pythonban), klaszterezés (k-means), k-NN algoritmus.