Počítačová chemie (3. přednáška)

Slides:



Advertisements
Podobné prezentace
LOGISTICKÉ SYSTÉMY 14/15.
Advertisements

Komplexní čísla. Komplexní číslo je uspořádaná dvojice [x, y], kde číslo x představuje reálnou část a číslo y imaginární část. Pokud je reálná část nulová,
NEJKRATŠÍ CESTY MEZI VŠEMI UZLY
Fakulta životního prostředí Katedra informatiky a geoinformatiky
Dualita úloh lineárního programování a analýza citlivosti
Limita funkce. Koncentrace 137Cs v odpadním kanálu jaderné elektrárny se v časovém intervalu (t1, t2) řídí rovnicí c (t) = c0e -(t-t0). V čase t1 dojde.
Diskrétní matematika Opakování - příklady.
Aplikace teorie grafů Základní pojmy teorie grafů
PA081 Programování numerických výpočtů Přednáška 2.
PA081 Programování numerických výpočtů
ALGO – Algoritmizace 1. cvičení
Sylabus V rámci PNV budeme řešit konkrétní úlohy a to z následujících oblastí: Nelineární úlohy Řešení nelineárních rovnic Numerická integrace Lineární.
Medians and Order Statistics Nechť A je množina obsahující n různých prvků: Definice: Statistika i-tého řádu je i-tý nejmenší prvek, tj., minimum = statistika.
Lineární algebra.
LOGISTICKÉ SYSTÉMY 7/14.
Matice D.: Matice je systém m .n čísel, uspořádaný do m řádků a n sloupců. Je to jenom symbol, nemá to žádnou číselnou hodnotu! Označení: řádek, řádkový.
Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti
5. Přednáška funkce BRVKA Johann P.G.L. Dirichlet (1805 – 1859)
Fakulta životního prostředí Katedra informatiky a geoinformatiky
Téma: Shodnosti a souměrnosti
BRVKA Leonard Paul Euler (1707 – 1783). Pod označením INVERZNÍ proces chápeme opačný děj, takový, který probíhá opačným směrem, např. tání a tuhnutí.
Fakulta životního prostředí Katedra informatiky a geoinformatiky
TI 7.1 NEJKRATŠÍ CESTY Nejkratší cesty - kap. 6. TI 7.2 Nejkratší cesty z jednoho uzlu Seznámíme se s následujícími pojmy: w-vzdálenost (vzdálenost na.
GYMNÁZIUM, VLAŠIM, TYLOVA 271
Chemická vazba.
ORIENTOVANÉ GRAFY V této části se seznámíme s následujícími pojmy:
F U N K C E.
MATEMATIKA I.
2.1.2 Graf kvadratické funkce
Stromy.
Fakulta životního prostředí Katedra informatiky a geoinformatiky
Algebra II..
Funkce více proměnných.
P-těžké, np-těžké a np-úplné problémy
Relace, operace, struktury
Rozpoznávání v řetězcích
Výpočetní složitost Odhlédneme-li od realizace algoritmu na konkrétním hardwaru a v konkrétním prostředí informačního systému, lze časovou složitost hodnotit.
Dostupné z Metodického portálu ISSN: , financovaného z ESF a státního rozpočtu ČR. Provozováno Výzkumným ústavem pedagogickým v Praze.
Barvení grafů Platónská tělesa
Simplexová metoda pro známé počáteční řešení úlohy LP
Počítačová chemie (5. přednáška)
Kanonické indexování vrcholů molekulového grafu Molekulový graf: G = (V, E, L, ,  ) Indexování vrcholů molekulového grafu G: bijekce  : V  I I je indexová.
Domácí úkol - chemická vzdálenost Jaká je chemická vzdálenost azirenu a aminopropinu? Z jakých molekul - zkuste najít tři příklady, snažte se o co nejmenší.
Počítačová chemie (2. přednáška)
NP-úplné problémy v grafech
Sylabus V rámci PNV budeme řešit konkrétní úlohy a to z následujících oblastí: Nelineární úlohy Řešení nelineárních rovnic Numerická integrace Lineární.
Dostupné z Metodického portálu ISSN: , financovaného z ESF a státního rozpočtu ČR. Provozováno Výzkumným ústavem pedagogickým v Praze.
Vzájemná poloha dvou rovin
Vyhledávání vzorů (template matching)
Radim Farana Podklady pro výuku
Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 1 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce 13 1 / 14 NP-ÚPLNÉ.
© Institut biostatistiky a analýz INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ ANALÝZA A KLASIFIKACE DAT prof. Ing. Jiří Holčík, CSc.
Počítačová chemie (3. přednáška) Úvod ( 1. přednáška ) Molekula –Struktura molekuly (2., 3. a 4. přednáška) –Geometrie molekuly (5. přednáška) –Vhled do.
Hledání cyklů Komunikační sítě Elektrické obvody Odběr surovin a výrobků v průmyslové výrobě Logistika Chemie ….
Matice Přednáška č.4. Definice: Soubor prvků nazýváme maticí typu i-tý řádek j-tý sloupec prvky matice.
Soustavy lineárních rovnic Matematika 9. ročník Creation IP&RK.
CW – 05 TEORIE ROZHODOVACÍCH PROCESŮ Ústav technologie, mechanizace a řízení staveb Fakulta stavební VUT v Brně © Ing. Václav Rada, CSc. 23. PŘEDNÁŠKA.
NEJKRATŠÍ CESTY Nejkratší cesty - kap. 6.
Úvod do databázových systémů
Funkce Funkce je zobrazení z jedné číselné množiny do druhé, nejčastěji Buď A a B množiny, f zobrazení. Potom definiční obor a obor hodnot nazveme množiny:
Množina bodů dané vlastnosti
Znázornění dopravní sítě grafem a kostra grafu Předmět: Teorie dopravy - cvičení Ing. František Lachnit, Ph.D.
Regresní analýza výsledkem regresní analýzy je matematický model vztahu mezi dvěma nebo více proměnnými snažíme se z jedné proměnné nebo lineární kombinace.
CW-057 LOGISTIKA 43. PŘEDNÁŠKA Teorie grafů – 2 Leden 2017
Množina bodů dané vlastnosti
Toky v sítích.
Množina bodů dané vlastnosti
Soustavy lineárních rovnic
Definiční obory. Množiny řešení. Intervaly.
Počítačová chemie (3. přednáška)
Transkript prezentace:

Počítačová chemie (3. přednáška) Úvod (1. přednáška) Molekula Struktura molekuly (2., 3. a 4. přednáška) Geometrie molekuly (5. přednáška) Vhled do praxe (6. přednáška) Molekulové modelování Molekulová mechanika (7. a 8. přednáška) Kvantová mechanika (9. a 10. přednáška) Molekulová dynamika (11. přednáška) Vhled do praxe (12. přednáška)

Izomorfismus Automorfismus Chemická vzdálenost Struktura molekuly II Izomorfismus Automorfismus Chemická vzdálenost

Izomorfismus molekulových grafů Neformálně I: Dva molekulové grafy jsou izomorfní, pokud reprezentují stejnou molekulu. Neformálně II: Dva molekulové grafy jsou izomorfní, liší-li se pouze indexováním vrcholů. Neformálně III: Dva molekulové grafy jsou izomorfní, pokud: Každý uzel Ni grafu G lze zobrazit na uzel Ni¢ grafu G¢. Sousední uzly uzlu Ni lze zobrazit na sousední uzly uzlu Ni¢.

Izomorfismus molekulových grafů Formálně: Grafy G = (V, E, L, j, b) a G¢ = (V¢, E¢, L¢, j¢, b) jsou izomorfní, pokud existuje bijektivní zobrazení (permutace) f: V ®V¢ s následujícími vlastnostmi: pokud uzly u, v Î V tvoří n hran {u, v} grafu G, pak uzly f(u), f(v) Î V¢ tvoří n hran {f(u), f(v)} grafu G¢ pokud uzel u Î V tvoří n smyček {u, u} grafu G, pak uzel f(u) Î V¢ tvoří n smyček {f(u), f(u)} grafu G¢ zobrazení f zachovává ohodnocení vrcholů: j(u) = j ¢(f(u)) pro každé u Î V Vztah mezi izomorfismem a izomerií: Molekuly M1 a M2 jsou izomorfní => M1 a M2 jsou izomerní.

Izomorfismus a matice sousednosti Molekulové grafy určené pomocí matice sousednosti: G = (V, A, j, b) a G¢ = (V¢, A¢, j¢, b) Izomorfismus (=permutace) f: V ®V´ K permutaci f lze sestrojit permutační matici P. Poznámka: Permutační matice vznikne z jednotkové matice permutací jejich řádku. Potom platí: A = PT A¢ P

Algoritmy pro testování izomorfismu I Využití hrubé síly (brute force): Popis algoritmu: Pro každou permutaci f: V ® V¢ se otestuje, zda se jedná o izomorfismus. Složitost: Množiny V i V¢ mají stejný počet vrcholů, označme si ho n. => existuje n! permutací f: V ® V¢ => algoritmus se nachází ve složitostní třídě O(n!)

Časová složitost Velmi neformálně: Příklad: Problém je NP-úplný, pokud pro něho nelze vytvořit algoritmus s nejhůře polynomiální časovou složitostí. Příklad: algoritmy řešitelné v polynomiálním čase patří například do složitostních tříd: O(n), O(n log n), O(n2), O(n3), atd. NP-úplné algoritmy patří například do složitostních tříd: O(2n), O(n!), O(nn), atd.

Isomorfismus - časová složitost & řešení problému Problém isomorfismu obecných grafů patří pravděpodobně (není to dokázáno, ale vše tomu nasvědčuje :-) mezi NP-úplné problémy. Řešení problému: Hrubou silou Zefektivnění: backtracking dělení vrcholů do tříd Omezená třída grafů: rovinné grafy Porovnání číselných charakteristik grafů

Izomorfismus - backtracking Zefektivnění metody „hrubou silou“ Nezabývá se všemi zobrazeními. Přidává další vrchol jen k parciálním zobrazením, které splňují podmínky izomorfismu. V nejhorším případě má tato metoda také faktoriální složitost, ale pro běžné případy je výpočet podstatně kratší než při využití hrubé síly.

Izomorfismus - backtracking - princip a) zobrazí libovolný uzel (uzlu z G neboli vzoru přiřadí uzel z G´ neboli obraz) b) otestuje, zda je vzniklé parciální zobrazení izomorfismus (pro nové* uzly platí: vzory i obrazy mají stejné ohodnocení a stejné stupně): pokud ano, zobrazí sousedy nových vzoru(ů) na sousedy nových obraz(ů) a opakuje krok b) pokud ne, vrátí se o krok zpět a volí jiné zobrazení * Nové = zobrazené v posledním kroku. Z rekurzivity algoritmu je zřejmé, že pro původní (dříve přidané) uzly je parciální zobrazení izomorfismus => nemusíme pro ně nic testovat :-).

Izomorfismus - backtracking - příklad Molekulový graf G: Molekulový graf G´: Hrubá síla: Bactracking: v1, v2, v3, v4 -> v´1, v´2, v´3, v´4; -> v´1, v´2, v´4, v´3; v1 -> v´1 -> v´1, v´3, v´2, v´4; -> v´1, v´3, v´4, v´2; v1 -> v´2 -> v´1, v´4, v´2, v´3; -> v´1, v´4, v´3, v´2 v1 -> v´3 v1, v2, v3 -> v´3, v´1, v´4 -> v´2, v´1, v´3, v´4; -> v´2, v´1, v´4, v´3; -> v´2, v´3, v´1, v´4; -> v´2, v´3, v´4, v´1; v1, v2, v3 -> v´3, v´4, v´1 -> v´2, v´4, v´1, v´3; -> v´2, v´4, v´3, v´1 v1, v2, v3 , v4 -> v´3, v´4, v´1 , v´2 -> v´3, v´1, v´2, v´4; -> v´3, v´1, v´4, v´2; v1 -> v´4 -> v´3, v´2, v´1, v´4; -> v´3, v´2, v´4, v´1; -> v´3, v´4, v´1, v´2; -> v´3, v´4, v´2, v´1 Hrubá síla: 24 iterací (4!) Backtracking: 7 iterací -> v´4, v´1, v´2, v´3; -> v´4, v´1, v´2, v´3; -> v´4, v´2, v´1, v´3; -> v´4, v´2, v´3, v´1; -> v´4, v´3, v´1, v´2; -> v´4, v´3, v´2, v´1

Izomorfismus - dělení vrcholů do tříd Kritéria dělení do tříd: ohodnocení atomu stupeň vrcholu Princip: Vrcholy grafu G, náležící do určité třídy, jsou zobrazovány pouze na vrcholy grafu G´, náležející do téže třídy. Poznámka: Lze také využít jemnější rozdělení do tříd: Kromě ohodnocení a stupně atomu vezmeme při rozdělování do úvahy i ohodnocení a stupně jeho sousedů. Rozdělit uzly podle počtu jednoduchých, dvojných a trojných vazeb, které daná vazba tvoří.

Izomorfismus - dělení vrcholů do tříd - příklad Molekulový graf G: Molekulový graf G´: Třídy: T1 = {v4} (ohodnocení X, stupeň 2) T2 = {v3} (ohodnocení X, stupeň 4) T3 = {v1, v2} (ohodnocení Y, stupeň 3) T´1 = {v´2} (ohodnocení X, stupeň 2) T´2 = {v´1} (ohodnocení X, stupeň 4) T´3 = {v´3, v´4} (ohodnocení Y, stupeň 3) Princip: Je možno zobrazovat pouze členy skupiny Ti na členy skupiny T´i Proto existují jen dvě možná zobrazení: v1, v2, v3 , v4 -> v´3, v´4, v´1 , v´2 v1, v2, v3 , v4 -> v´4, v´3, v´1 , v´2

Izomorfismus - dělení vrcholů do tříd Kritéria dělení do tříd: ohodnocení atomů stupeň vrcholů Princip: Vrcholy grafu G, náležící do určité třídy, jsou zobrazovány pouze na vrcholy grafu G´, náležející do odpovídající třídy (popsané stejnými kritérii). Poznámka: Jemnější rozdělení do tříd - kromě ohodnocení a stupně atomu vezmeme při rozdělování v úvahu i ohodnocení a stupně jeho sousedů. Rovněž můžeme vrcholy dělit podle toho, kolik z nich vychází jednoduchých, zdvojených a ztrojených hran.

Izomorfismus - rovinné grafy Definice: Graf nazýváme rovinným, pokud je možno vytvořit jeho rovinné nakreslení. Nakreslení grafu je postup, který každému vrcholu grafu přiřadí bod roviny a každé hraně {u, v} přiřadí souvislý prostý oblouk, který spojuje body, přiřazené vrcholům u a v. Rovinné nakreslení = Nakreslení, které je provedeno tak, že dva oblouky mají nejvýše 1 společný bod. A to jen v případě, že tento společný bod odpovídá vrcholu, ze kterého obě hrany vycházejí.

Izomorfismus - rovinné grafy - příklad Rovinný graf G: Rovinné nakreslení grafu G: Graf G´: Pro G´ neexistuje rovinné nakreslení => G´ není rovinný graf

Izomorfismus - rovinné grafy Třída rovinných grafů je podtřídou obecných grafů. V chemii má velká část molekul rovinné grafy. Vyjímky: zeolity, fullereny, některé bioorganické látky (alkaloidy, hormony, ...), složitější polymery a biopolymery. Určení, zda je graf rovinný: Algoritmus hledající jeho rovinné nakreslení; O(n) Izomorfismus rovinných grafů: Hopcroftův a Tarjanův algoritmus; O(n log n) => Izomorfismus rovinných grafů není NP-úplný problém :-)

Izomorfismus - číselné charakteristiky grafů počet vrcholů a hran invarianty vyplývající z matice sousednosti: charakteristický polynom matice kořeny charakteristického polynomu vlastní vektory normované matice determinant matice ...

Izomorfismus - obecný algoritmus Porovnání číselných charakteristik grafů: nesouhlasí => grafy nejsou izomorfní souhlasí: Jsou grafy rovinné? jeden ano, druhý ne => grafy nejsou izomorfní oba ano => algoritmus pro izomorfismus rovinných grafů oba ne => algoritmus pro izomorfismus obecných grafů

Izomorfismus - využití v chemii Platí: Izomorfní grafy reprezentují stejné molekuly. Využití: Prohledávání databází molekul. Vstup: molekulový graf Výstup: informace o vstupní molekule (případně hlášení, že molekula nebyla nalezena) Postup: hledání izomorfismu mezi vstupní molekulou a prvky databáze Nevýhoda: Velká časová složitost. Hledání molekuly o velikosti N v databázi s M molekulami: O(M.N!)

Automorfismus = izomorfismus grafu sama na sebe = operace symetrie nad molekulovými grafy, které zachovávají topologii grafu (= nemění matici sousednosti) Topologická ekvivalence: Dvojice vrcholů vi a vj je topologicky ekvivalentní, pokud existuje takový automorfismus w, který zobrazuje jeden vrchol na druhý: w(vi) = vj

Automorfismus - příklad Molekula formaldehydu má dva automorfismy: w1: v1 v1 w2: v1 v1 v2 v2 v2 v2 v3 v3 v3 v3 v4 v4 v4 v4 Popis automorfismů (operací symetrie): w1 identita w2 osová symetrie (osa prochází vrcholy v3 a v4) Vrcholy v1 a v2 jsou topologicky ekvivalentní.

Automorfismus a matice sousednosti Molekulový graf určený pomocí matice sousednosti: G = (V, A, j, b) Automorfismus (=permutace) w: V ®V K permutaci w lze sestrojit permutační matici P. Potom platí: A = PT A P

Automorfismus - grupa Množina všech automorfismů: Aut = {w1, w2, …}, kde w: V ® V Operace skládání zobrazení: o: (w, w) ® w Grupa automorfismů: Gaut = (Aut, o) Grupa automorfismů může být izomorfní s nějakou bodovou grupou prostorové symetrie. Pro formaldehyd: Gaut = ({w1, w2},o)

Chemická vzdálenost molekul Označení: Chemická vzdálenost molekul (molekulových systémů) M a M´ se označuje D(M, M´). Význam: D(M, M´) je číslo, charakterizující rozdíl mezi strukturami molekul M a M´. Aby měla tato vzdálenost smysl, musí být vstupní molekuly izomerní. Čím menší je rozdíl struktur, tím menší je chemická vzdálenost. Izomorfní molekuly mají chemickou vzdálenost rovnu 0. Využití: Plánování syntézy (vyhledávání reaktantů s minimální nenulovou chemickou vzdáleností).

Chemická vzdálenost molekul - definice v chemii Popis chemické vzdálenosti: D(M, M´) je číslo, charakterizující jak komplikovaná je chemická přeměna jedné molekuly v druhou. Konkrétně: D(M, M´) je počet valenčních elektronů (ať již vazebných nebo nevazebných), jejichž přemístěním v rámci M získáme M´. Příklad: M = formaldehyd: M´ = hydroxykarben: D(M, M´) = 8 Přesná definice chemické vzdálenosti: D(M, M´) = nejmenší počet valenčních elektronů, které je nezbytné v rámci M přemístit, abychom získali M´.

Chemická vzdálenost molekul - matematická definice Využijeme matici sousednosti - ta pro každý atom popisuje, kde jsou umístěny jeho elektrony (v kolika vazbách s jakými atomy a v kolika nevazebných elektronových párech) . První matematickou definici chemické vzdálenosti formulovali Dugundji a Ugi (1973). Definovali chemickou vzdálenost jako Hammingovu normu rozdílu matic sousednosti. Definice Hammingovy normy: Nechť M je matice typu N x N, pak její Hammingova norma je:

Chemická vzdálenost molekul - matematická definice Definice D(M, M´) podle Dugundjiho a Ugiho: Nevýhoda této definice: Matice sousednosti má řádky a sloupce indexované pomocí názvů vrcholů. Při odečítání matic musíme explicitně dbát na to, aby se odečítaly vždy pouze prvky matice, příslušející stejné dvojici chemických prvků. Je zřejmé, že nemá smysl zjišťovat, jaký je například rozdíl mezi počtem elektronů na vazbě C s C a na vazbě O s H. => Musíme do výše uvedené definice zahrnout izomerii.

Chemická vzdálenost molekul - matematická definice II => Než začneme matice A a A´odečítat, musíme řádky a sloupce matice A´ zpermutovat tak, aby pro i = 1, 2, … N platilo: Pokud vrcholy v a v´ označují stejný (i-tý) řádek matic sousednosti A a A´, pak j(v) = j(v´) . Analogicky pro sloupce.

Chemická vzdálenost molekul - matematická definice III Vhodnou permutací řádků a sloupců matice A´ je zobrazení podobnosti y. Definice y (opakování :-): Bijektivní zobrazení V ® V¢, které zachovává ohodnocení vrcholů chemickými značkami: j(u) = j¢(y(u)) pro každé u Î V

Chemická vzdálenost molekul - matematická definice IV Pro zobrazení y vytvoříme permutační matici P. Pro matici A´ tedy vytvoříme permutovanou matici: PT A´ P Původní definici D(M, M´) podle Dugundjiho a Ugiho upravíme následovně: D(M, M´) = || A - PT A´ P ||

Chemická vzdálenost molekul - matematická definice V Upravená matematická definice stále není korektní. Proč? Pro 2 molekuly může existovat více zobrazení podobnosti. Které z nich vybrat? Chemická definice D(M, M´) říká: D(M, M´) = nejmenší počet valenčních elektronů, které je nezbytné v rámci M přemístit, abychom získali M´. => Musíme vybrat takové zobrazení, aby hodnota || A - PT A´ P || byla minimální.

Chemická vzdálenost molekul - matematická definice VI Korektní definice chemické vzdálenosti tedy vypadá následovně: D(M, M´) = min || A - PT A´ P ||, kde minimalizace se provádí přes všechny zobrazení podobnosti y (a jejich permutaèní matice P) Chemická vzdálenost pro izomerní molekulové grafy vytváří metriku. Platí totiž tři definiční vlastnosti metriky: Symetričnost: D(M, M´) = D(M´, M) Trojúhelníková nerovnost: D(M, M²) £ D(M, M´ ) + D(M´, M²) Nezápornost: D(M, M´) ³ 0

Chemická vzdálenost molekul - algoritmus Algoritmus pro výpočet chemické vzdálenosti: D(M, M´) := ¥ FOR " zobrazení V ® V¢ DO IF Jde o zobrazení podobnosti THAN. Sestroj pro zobrazení permutační matici P. D(M, M´) := min ( D(M, M´) , || A - PT A´ P || )

Chemická vzdálenost molekul - složitost Výpočet chemické vzdálenosti patří k NP-úplným problémům. Musíme totiž zkonstruovat všechna možná zobrazení V ® V¢ a pro |V| = N je těchto zobrazení N!. Pro větší molekuly je tato složitost neakceptovatelná => využívají se optimalizace & heuristiky. Poznámka: Problém izomorfismu je zúžením problému chemické vzdálenosti: D(M, M´) = 0 Û M je izomorfní s M´

Chemická vzdálenost molekul - příklad výpočtu Formaldehyd: Hydroxykarben: v1 v2 v3 v4 v1 0 0 1 0 v2 0 0 1 0 v3 1 1 0 2 v4 0 0 2 4 v1 v2 v3 v4 v1 0 1 0 0 v2 1 2 1 0 v3 0 1 4 1 v4 0 0 1 0 PT A´ P = v1 v2 v3 v4 v1 0 0 1 0 v2 0 0 0 1 v3 1 0 2 1 v4 0 1 1 4 D(M,M´)= 8 P = 1 0 0 0 0 0 1 0 0 0 0 1 0 1 0 0 Y1 = 1 2 3 4 1 3 4 2 PT A´ P = v1 v2 v3 v4 v1 0 0 0 1 v2 0 0 1 0 v3 0 1 2 1 v4 1 0 1 4 P = D(M,M´)= 8 0 1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 Y2 = 1 2 3 4 2 3 4 1

Literatura o izomorfismu, automorfismu a chemické vzdálenosti Kvasnička V., Kratochvíl M., Koča J.: Matematická chemie a počítačové řešení syntéz. Academia (1987) Kučera L.: Kombinatorické algoritmy. SNTL (1989) Kratochvíl M., Matyska L.: Logická struktura chemie. Masarykova univerzita (1994)