Chemická informatika v organické chemii - programování v Pythonu a integrace umělé inteligence - MC270P75
Anglický název: Chemical Informatics in Organic Chemistry - Python Programming and Artificial Intelligence Integration
Český název: Chemická informatika v organické chemii - programování v Pythonu a integrace umělé inteligence
Zajišťuje: Katedra organické chemie (31-270)
Fakulta: Přírodovědecká fakulta
Platnost: od 2024
Semestr: zimní
E-Kredity: 2
Způsob provedení zkoušky: zimní s.:
Rozsah, examinace: zimní s.:1/1, Z [HT]
Počet míst: neomezen
Minimální obsazenost: 3
4EU+: ne
Virtuální mobilita / počet míst pro virtuální mobilitu: ne
Stav předmětu: vyučován
Jazyk výuky: čeština, angličtina
Poznámka: povolen pro zápis po webu
Garant: doc. RNDr. Jindřich Jindřich, CSc.
Vyučující: doc. RNDr. Jindřich Jindřich, CSc.
Výsledky anket   Termíny zkoušek   Rozvrh ZS   
Anotace -
Cílem předmětu je naučit základy programování ve skriptovacích jazycích (Python, Javascript, Povray) se zaměřením na řešení chemicky orientovaných problémů. Probíraná témata: Správa zdrojového kódu (GIT). Základy jazyka Python, programové zpracování datových souborů (.xls, .csv., .txt, .xml, .html), práce s SQL databázemi, chemické strukturní formáty (SMILES, mol, InChI, cml, ...) a jejich konverze, hledání podle struktury. Použití numpy, matplotlib s využitím Jupyter pro statistické výpočty a generování grafů. Použití Povray pro přípravu grafiky. Použití frameworku Django pro tvorbu webových aplikací. Při tvorbě všech skriptů bude využívána umělá inteligence a probírány její výhody a rizika.
Poslední úprava: Jindřich Jindřich, doc. RNDr., CSc. (12.08.2024)
Literatura -

https://dl2.cuni.cz/course/view.php?id=2161

Git https://git-scm.com/
Python https://python.org
R https://www.r-project.org, https://www.r-project.cz
SQL https://www.w3schools.com/sql/default.asp, https://www.amazon.com/dp/0980455251/
Povray https://www.povray.org/
Django https://www.djangoproject.com
Jupyter https://jupyter.org/


J.Gasteiger, T. Engel: Chemoinformatics: A Textbook 
http://www.amazon.com/Chemoinformatics-Textbook-Johann-Gasteiger/dp/3527306811

Poslední úprava: Jindřich Jindřich, doc. RNDr., CSc. (12.08.2024)
Požadavky ke zkoušce -

Pro udělení zápočtu je nutné každý týden vyřešit úspěšně a včas praktická cvičení k tématům daného týdne.

Poslední úprava: Jindřich Jindřich, doc. RNDr., CSc. (08.05.2012)
Sylabus -

1. Správa zdrojového kódu
- přehled používaných systemů - CVS, SVN, GIT, MERCURIAL...
- GIT, praktické příklady použití

2. Programovacího jazyk Python - úvod
- práce z příkazové řádky
- objektový přístup
- zakladní použití - zpracování textových souborů (.txt, .csv, ..)
- testování

3. Práce s HTML a XML soubory v jazyce Python
- Python funkce pro internetovou komunikaci
- automatické stahování stránek/souborů z webových stránek
- extrakce údajů z html stránky

4. Python a SQL databáze
- přehled používaných SQL systémů
- Python DB API
- práce s daty

5. Chemicky orientované úlohy v jazyce Python
- chemické strukturní formáty (SMILES, MOL, InChI, InChIKey, cml, ...)
- Python knihovny pro práci s chemickými strukturami (openbabel, inchi)

6. Použití Python pro statistické výpočty a generování grafů
- import datových souborů
- prokladání funkcí
- vizualizace - grafy

7. Použití Povray pro přípravu grafiky a animací v profesionální kvalitě
- Povray skripty pro tvorbu 3D grafiky (Ray-tracing)

8. Webové aplikace - úvod
- knihovní funkce Python pro tvorbu webového serveru
- přehled webových frameworků v jazyce Python (Zope, Pylons, Django, Pylons, Flask, ...)
- servery poskytující chemické služby

9. Tvorba webových aplikací s Django
- úvod do Django frameworku
- templátovací jazyk
- propojení skriptů s webovou aplikací

10. Webová aplikace, JavaScript a jQuery
- tvorba uživatelsky přívětivých AJAX aplikací

11. Testování webových aplikací
- Selenium
- Django testy

Poslední úprava: Jindřich Jindřich, doc. RNDr., CSc. (12.08.2024)
Výsledky učení -

Student, který ukončí kurz:

Používá nástroj pro správu zdrojového kódu (Git).

Pracuje běžně v příkazové řádce.

Za využítí AI, používá Python pro tvorbu skriptů usnadňujících činnost v oblastech jako je zpracování textu (.txt, .csv), HTML nebo XML stránek,  vytváření databází a zápis a čtení dat z nich, práce s chemickými strukturami a jejich reprezentacemi (SMILES, MOL, InChI, InChIKey), vytváření reprodukovatelných grafů a vizualizací.

Používá  Povray (a jeho skriptovací jazyk) pro přípravu prezentační grafiky a animací.

Vytváří webové aplikace za využití frameworku Django a využívá Javascript pro tvorbu AJAX aplikací.

Poslední úprava: Jindřich Jindřich, doc. RNDr., CSc. (12.08.2024)