1 / 22

Umělá inteligence

Umělá inteligence. proč?. Kdy UI nepotřebujeme?. pokud jsme schopni vytvořit stroj, který bude úlohu řešit problém je algoritmizovatelný příklad. Kdy UI potřebujeme?. když to nejde. Piškvorky. online úloha data se mění v průběhu řešení data nejsou dopředu známa

dewey
Download Presentation

Umělá inteligence

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Umělá inteligence proč?

  2. Kdy UI nepotřebujeme? • pokud jsme schopni vytvořit stroj, který bude úlohu řešit • problém je algoritmizovatelný • příklad

  3. Kdy UI potřebujeme? • když to nejde

  4. Piškvorky • online úloha • data se mění v průběhu řešení • data nejsou dopředu známa • ale to v zásadě nevadí, je to jen komplikace • více cílových stavů • potřebujeme strategii • předvídat tah soupeře • zhodnotit různá řešení • strategie = dlouhodobý plán kroků nutných k dosažení cíle

  5. Inteligentní stroj Stroj projde Turingovým testem, pokud skutečný člověk po položení několika písemných otázek nedokáže rozlišit, jestli odpověď pochází od stroje nebo od (skrytého) člověka. • rozpoznání obrazu, zpracování obrazu (identifikace písemné otázky) • robotika, manipulátory (příjem otázky nebo jiného objektu) • zpracování přirozeného jazyka (zpracování textu otázky a „porozumění“ otázce) • strojové učení (vytvoření databáze znalostí, která se použije k zodpovězení otázky) • reprezentace znalostí (ukládání informací naučených během provozu a jejich vyhledávání) • automatické usuzování (vytvoření odpovědi na základě významu otázky a známých znalostí) Alan Turing, 1950

  6. 1950 - 2011 • Počítač roku 1950 • 1 × 1 x 0,001Mhz (server x core x frekvence) • 1920B RAM • 5120B HDD • Počítač roku 2011(1:51) – Watson • 90 × 32 × 3,25 GHz • > 15TB RAM • ∞ HDD

  7. Zpět na zem • Jaká je strategie pro piškvorky (3×3)?

  8. Strategie 3×3 • Tah na střed • Tah na roh, kde je volná diagonála • Pokud můžeme dokončit řadu, dokončeme ji • Pokud může protihráč dokončit řadu, zablokujme ji • Tah na hranu, kde zablokujeme protihráče a současně můžeme vytvořit řadu • Tah na volnou hranu, pokud není volná hrana, tah na roh.

  9. Implementace ELSE //čtvrtý tah // podle přechozího tahu zkusíme vždy nejprve dokončit vodorovnou nebo svislou řadu, potom // zkusíme tah na stranu, kde je poslední možnost vytvořit řadu, pro každý směr je jedno pravidlo IF PředchozíTah = A2 THEN IF Volno(C2) THEN Tah(C2) ELSE Tah(B1) ELSE IF PředchozíTah = B1 THEN IF Volno(B3) THEN Tah(B3) ELSE Tah(C2) ELSE IF PředchozíTah = B3 THEN IF Volno(B1) THEN Tah(B1) ELSE Tah(A2) ELSE IF PředchozíTah = C2 THEN IF Volno(A2) THEN Tah(A2) ELSE Tah(B3) IF PrvníTah THEN Tah(B2) ELSE IF DruhýTah THEN // máme provést druhý tah // najdemevolnou diagonálu IF Volno(A1) AND Volno(C3) THEN // je volnépole A1 i pole C3 Tah(A1) ELSE Tah(A3) ELSE IF TřetíTah IF Soupeř(A1) THEN // musíme blokovat soupeře tahem na stranu IF Soupeř(A3) THEN Tah(A2) ELSE IF Soupeř(C1) THEN Tah(B1) ELSE IF Soupeř(C3) THEN // musíme blokovat soupeře tahem na stranu IF Soupeř(A3) THEN Tah(B3) ELSE IF Soupeř(C1) THEN Tah(C2) IF NOT TahProveden THEN // nenašli jsme soupeřovu nedokončenou řadu, soupeř táhl špatně IF Můj(A1) THEN //vlastníme pole A1, dokončíme diagonální řadu Tah(C3) ELSE Tah(C1)

  10. Jak by byl úplný program velký? • zatím zahrnuje 17 možných tahů

  11. Řešení • situace hrací plochy: • pokud začíná počítač: 9 · 7 · 5 · 3 = 945 (105) • univerzálně: 9! = 362 880 • některé nejsou dosažitelné • některé nejsou smysluplné • počítač nehraje současně za oba • výsledek: něco mezi 30 a 1329 • hrací plocha 4×4 = 2,09 · 1013 • hrací plocha 5×5= 1,55 ·1025 • papír A5≈ 1260 polí = 1,6·103361

  12. Co z toho vyplývá • Velikost programu závisí na velikosti úlohy. • Dobrá strategie může snížit složitost úlohy o několik řádů. • Málokterá strategie je zaručená. • Blokovací strategie nefunguje vůbec. • Časová složitost řešení hrubou silou roste faktoriálem. • Délka naivního algoritmu roste skoro stejně rychle.

  13. Časová složitost • Závislost počtu operací na velikosti vstupu. • Neříká jak dlouho to bude trvat. • Říká jak se to bude zpomalovat. • Příklad

  14. Řešení? • Transformace úlohy na stavový prostor. • Definujeme: • možné stavy problému • možné přechody z jednotlivých stavů • počáteční stavy • cílové stavy • Celý stavový prostor můžeme reprezentovat pomocí grafu • pokud možno stromového • pokud možno konečného

  15. Co jsme tím získali? • Úlohu jsme převedli na: • nalezení a výběr nejvhodnějšího přechodu do dalšího stavu • už jen potřebujeme zjistit co je nevhodnější stav • Můžeme to zkusit alespoň odhadnout • každý stav ohodnotíme • heuristická funkce – odhad hodnocení • vybereme ten nejlepší • pro odhad hodnocení stavu musíme zjistit i stavy, které za ním následují • algoritmus nahlíží do budoucnosti

  16. Řešení • Hodnocení • piškvorky jsou hra s „nulovou sumou“ • viz příklad • Prohledání • úplné prohledávání do šířky • úplné prohledávání do hloubky • minimaxová metoda, prořezávání • 90% algoritmů umělé inteligence

  17. Co dál? • Většina umělé inteligence se zabývá tím • jak hodnotit stavy • jak rychle prohledávat velké stavové prostory

More Related