Umělá inteligence I. Roman Barták, KTIML.
|
|
- Michaela Štěpánková
- před 8 lety
- Počet zobrazení:
Transkript
1 Umělá inteligence I Roman Barták, KTIML roman.bartak@mff.cuni.cz Na úvod Zatím pro nás byl model světa černou skříňkou, ke které přistupujeme pouze přes: funkci následníka test cílového stavu heuristickou funkci (vzdálenost do cíle) Dnes si ukážeme jednu z možných obecných reprezentací problémů problém splňování podmínek (CSP) má vnitřní strukturu, kterou lze využít při řešení obecné metody pro řešení CSP kombinace prohledávání a odvozovacích technik
2 Sudoku? Logická hádanka, jejímž cílem je doplnit chybějící čísla 1-9 do tabulky 9 9 tak, aby se čísla neopakovala v žádném řádku, sloupci ani v malých čtvercích 3 3. Trochu historie 1979: poprvé publikováno v New Yorku Number Place Umísti číslice 1986: populární v Japonsku Sudoku zkráceno z japonštiny "Súdži wa dokušin ni kagiru" Čísla musí být jedinečná 2005: populární mezinárodně Začínáme se Sudoku Jak poznáme, kam které číslo patří? Využijeme informace, že každé číslo je v řádku maximálně jedenkrát. A co když to nestačí? Podíváme se do sloupců resp. zkombinujeme informaci ze sloupců a řádků. Umělá inteligence Podle I, Roman Barták
3 Sudoku o krok dáld Pokud řádky ani sloupce neposkytnout přesnou informaci, alespoň si můžeme poznamenat, kde dané číslo může ležet. Poloha čísla může být odvozena i z přítomnosti jiných čísel a z vlastnosti, že každé číslo se musí objevit alespoň jednou. Umělá inteligence Podle I, Roman Barták Sudoku obecně Na každé políčko se podíváme jako na proměnnou nabývající hodnoty z domény {1,,9}. Mezi všemi dvojicemi proměnných v řádku, sloupci či malém čtverci je podmínka nerovnosti. Hodnoty nesplňující podmínky škrtáme. Takto zadaný problém se nazývá problém splňování omezujících podmínek. Škrtání hodnot filtrace domén se provádí tak dlouho, dokud se nějaká doména mění.
4 CSP Problém splňování podmínek se skládá z: konečné množiny proměnných popisují atributy řešení, o kterých je potřeba rozhodnout například pozici dámy na šachovnici domén konečné množiny hodnot pro proměnné popisují možnosti, které máme při rozhodování např. čísla řádků pro umístění dámy někdy se definuje jedna superdoména společná pro všechny proměnné a individuální domény se v ní vytyčí přes unární podmínky konečné množiny podmínek podmínka je libovolná relace nad množinou proměnných například pozicea poziceb může být definována extenzionálně (jako množina kompatibilních n-tic) nebo intenzionálně (formulí) Najděte obarvení států (červená, modrá, zelená) takové, že sousední státy nemají stejnou barvu. Řešení problému WA = č, NT = z, Q = č, NSW = z, V = č, SA = m, T = z Příklad CSP Reprezentace formou CSP proměnné: {WA, NT, Q, NSW, V, SA, T} superdoména: {č, m, z} podmínky: WA NT atd. Lze také popsat formou sítě podmínek (vrcholy=proměnné, hrany=podmínky)
5 Základní pojmy Stav odpovídá přiřazení hodnot do (některých) proměnných. Konzistentní stav (přiřazení) neporušuje žádnou z podmínek. V úplném stavu (přiřazení) mají všechny proměnné přiřazenu hodnotu. Cílem je najít úplný konzistentní stav (přiřazení). Někdy se k definici problému přidává objektivní funkce, tj. funkce definovaná na (některých) proměnných. Potom je optimálním cílovým stavem úplný konzistentní stav (přiřazení), který maximalizuje/minimalizuje hodnotu objektivní funkce. Jak řešit CSP? Zatím jsme se naučili prohledávací algoritmy, tak je zkusíme i pro CSP. počáteční stav: prázdné přiřazení možné akce: přiřazení hodnoty do volné proměnné takové, že neporuší žádnou podmínku cíl: úplné konzistentní přiřazení Poznámky: řešící postup je stejný pro všechny CSP řešení je vždy v hloubce n, kde n je počet proměnných můžeme bez problémů použít DFS (bez kontroly cyklů) pořadí akcí nemá žádný vliv na řešení (problém je tzv. komutativní) WA=č, NT=z je stejné jako NT=z, WA=č pro řešení CSP lze používat i jiná typy větvení než enumeraci (například půlení domén)
6 Backtracking rekurzivní algoritmus Základní neinformovaný algoritmus pro řešení CSP postupně přiřazujeme hodnoty do volných proměnných pokud žádná hodnota přiřadit nelze, potom u poslední přiřazené proměnné zkusíme jinou hodnotu Takto fakticky vypadá prohledávání do hloubky. Skutečný backtracking udržuje pouze stavy na cestě z kořene do aktuálního listu resp. aktuální ohodnocení proměnných! Backtracking v příkladp kladě
7 Backtracking efektivita Jak ovlivnit efektivitu prohledávání? volbou správné hodnoty zpravidla problémově závislé volbou proměnné pro ohodnocení i když nakonec musíme přiřadit hodnoty do všech proměnných, může pořadí proměnných ovlivnit velikost prohledávaného prostoru úspěšné problémově nezávislé heuristiky včasnou detekcí slepých větví odvozením dodatečné informace využitím struktury problému některé problémy (např. CSP se stromovým grafem podmínek) lze vyřešit bez navracení variable ordering Backtracking Nejvíce omezená proměnná výběr proměnné tj. proměnná s nejmenším počtem možných akcí tj. proměnná s nejmenší doménou tzv. dom heuristika Proměnná s nejvíce podmínkami s volnými proměnnými tzv. deg heuristika používá se pro dodatečný výběr pokud dom heuristika neurčí jedinou proměnnou (dom+deg heuristika) V obou případech se jedná o instanci pravidla prvního neúspěchu (fail-first), které doporučuje vybrat proměnnou, jejíž ohodnocení nejspíše povede k neúspěchu.
8 value ordering Backtracking výběr r hodnoty Pří výběru hodnoty naopak preferujeme hodnotu, která nejspíše patří do řešení pravidlo prvního úspěchu (succeed-first). Jak ji ale obecně poznáme? například hodnota, která nejméně omezí zbývající volné proměnné (nechá v problému největší flexibilitu) červená barva pro Q umožní použít modrou barvu pro SA modrá barva pro Q vyloučí všechny barvy pro SA přesnější hodnotu lze najít například zjištěním počtu řešení relaxovaného problému, kde je daná hodnota použita výpočtově náročné, proto se často používají problémově závislé heuristiky forward checking Kontrola dopředu Nemohli bychom uhodnout dopředu, že daná cesta nevede do cíle? po přiřazení hodnoty můžeme dopředu zkontrolovat podmínky, které vedou z aktuální proměnné do volných proměnných kontrola dopředu zkontrolovat = vyřadit hodnoty, které podmínku nesplňují po přiřazení červené do WA tuto barvu odstraníme ze sousedů, tj. NT a SA po přiřazení zelené do Q tuto barvu odstraníme ze sousedů, tj. NT, SA, NSW po přiřazení modré do V tuto barvu odstraníme ze sousedů, tj. NSW a SA, které má nyní prázdnou doménu, a proto se musím vrátit
9 constraint propagation Propagace podmínek Nemohli bychom z podmínek odvodit ještě více informací? pokud bychom se při kontrole dopředu podívali i na podmínky mezi dosud neohodnocenými proměnnými, zjistíme, že sousedé NT a SA nemohou být najednou modří, což jsou jediné hodnoty v jejich doménách protože se přiřazená hodnota propaguje přes všechny podmínky do dalších proměnných, hovoříme o propagaci podmínek nebo také o pohledu dopředu (look ahead) realizuje se metodou udržování konzistence podmínek arc consistency Hranová konzistence každá podmínka odfiltrujte z domén svých proměnných hodnoty, které ji nesplňují často se realizuje směrově odstraněním hodnot z domény proměnné X, které nemají podporu v doméně proměnné Y z (binární) podmínky (X,Y) a naopak filtraci je třeba zavolat kdykoliv se změní doména proměnné Y filtrace se tak opakuje, dokud se zmenšují domény až do dosažení pevného bodu nebo vyprázdnění nějaké domény
10 Algoritmus AC-3 Algoritmus lze volat inkrementálně v rámci prohledávání - pokud se instanciovala proměnná X i, i potom se fronta inicializuje všemi hranami (podmínkami), které do ní vedou. Pokud se změnila doména proměnné X i, i potom je potřeba zkontrolovat všechny hrany (podmínky), které do ní vedou s výjimkou X j j. Filtrace domény proměnné X ii odstraní hodnoty, které nemají kompatibilní hodnotu v proměnné X jj a zároveň oznámí, zda se něco smazalo. Pokud známe sémantiku podmínky, nemusíme kontrolovat hodnotu po hodnotě (např. u X<Y) Časová složitost algoritmu O(ed 3 ), kde e je počet podmínek a d velikost domény, není optimální, protože se opakovaně testují stejné dvojice hodnot. Pamatováním si výsledků testů lze udělat optimálně v O(ed 2 ), AC-4, AC-3.1, AC-2001 Silnější konzistence Obecně lze definovat k-konzistenci, jako zajištění, že pro konzistentní hodnoty (k-1) různých proměnných lze najít konzistentní hodnotu libovolné další proměnné hranová konzistence (AC) = 2-konzistence konzistence po cestě (PC) = 3-konzistence X 1 a b a b c X 3 X 2 a b Problém je AC ale není PC. Je-li problém i-konzistentní i=1,..,n (n je počet proměnných), potom umíme řešit bez navracení. v DFS vždy najdeme hodnotu další proměnné, která je kompatibilní s i předchůdci Bohužel, složitost k-konzistence je exponenciální v k.
11 Globáln lní podmínky Místo silnějších typů konzistencí se v praxi spíše používají tzv. globální podmínky, které v sobě sdružují několik jednoduchých podmínek a speciálním filtračním algoritmem zajišťují pro tuto množinu podmínek globální konzistenci. Příklad: podmínka all_different({x 1,, X k }) nahrazuje binární nerovnosti X 1 X 2, X 1 X 3,, X k-1 X k all_different({x 1,, X k }) = {( d 1,, d k ) i d i D i & i j d i d j } filtrační algoritmus založen na párování v bipartitních grafech X a b 1 a b c X 3 X a b 2 X 1 X 2 X 3 a b c 1. najde maximální párování 2. odstraní hrany, které nejsou součástí žádného maximálního párování 3. odstraní příslušné hodnoty Bipartitní graf na jedné straně proměnné, na druhé straně hodnoty Hrana spojuje hodnotu s proměnnou, pokud je v její doméně Fináln lní poznámky Deklarativní přístup k řešení problémů vytvoříme model (proměnné, domény, podmínky) použijeme obecný řešič podmínek Možná rozšíření optimalizační problémy řešeno metodou větví a mezí (branch-and-bound) měkké podmínky podmínka určuje pouze preferenci, kterou je dobré respektovat Řeší se podobně jako optimalizační problémy Jiné řešící techniky lokální prohledávání (na cestě nezáleží) celočíselné programování
12 Oblasti aplikací Bioinformatika sekvencování DNA hledání 3D struktury proteinů Plánování autonomní plánování operací kosmických lodí (Deep Space 1) Rozvrhování výroby úspory po aplikaci CSP: denně US$ milión Pro zájemce Systémy pro řešení podmínek SICStus Prolog (v našich laboratořích) ECLiPSe (Open Source, GECODE (Open Source C++, Přednáška Programování s omezujícími podmínkami LS 2/0 Zk
u odpovědí typu A, B, C, D, E: Obsah: jako 0) CLP Constraint Logic Programming
Průběžná písemná práce Průběžná písemná práce Obsah: Průběžná písemná práce Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ délka pro vypracování: 25 minut nejsou povoleny žádné materiály
Obsah: CLP Constraint Logic Programming. u odpovědí typu A, B, C, D, E: jako 0)
Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Průběžná písemná práce Úvod do umělé inteligence 6/12 1 / 17 Průběžná písemná práce Průběžná písemná práce délka pro vypracování: 25
Hranová konzistence. Arc consistency AC. Nejprve se zabýváme binárními CSP. podmínka odpovídá hraně v grafu podmínek
Hranová konzistence Arc consistency AC Nejprve se zabýváme binárními CSP podmínka odpovídá hraně v grafu podmínek Hrana (V i, V j ) je hranově konzistentní, právě když pro každou hodnotu x z aktuální domény
Metody návrhu algoritmů, příklady. IB111 Programování a algoritmizace
Metody návrhu algoritmů, příklady IB111 Programování a algoritmizace 2011 Návrhu algoritmů vybrané metody: hladové algoritmy dynamické programování rekurze hrubá síla tato přednáška: především ilustrativní
CLP(F D) program. Základní struktura CLP programu solve( Variables ) :- 1. definice proměnných a jejich domén declare_variables( Variables),
CLP(F D) program Základní struktura CLP programu solve( Variables ) :- 1. definice proměnných a jejich domén declare_variables( Variables), 2. definice omezení post_constraints( Variables ), 3. hledání
Základy umělé inteligence
Základy umělé inteligence Automatické řešení úloh Základy umělé inteligence - prohledávání. Vlasta Radová, ZČU, katedra kybernetiky 1 Formalizace úlohy UI chápe řešení úloh jako proces hledání řešení v
Algoritmizace prostorových úloh
INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Grafové úlohy Daniela Szturcová Tento
Programování. s omezujícími podmínkami. Roman Barták. rová hranová konzistence
Programování s omezujícími podmínkami Roman Barták Katedra teoretické informatiky a matematické logiky roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Směrov rová hranová konzistence Definice:
Řešení: PŘENESVĚŽ (N, A, B, C) = přenes N disků z A na B pomocí C
Hanojské věže - 3 kolíky A, B, C - na A je N disků různé velikosti, seřazené od největšího (dole) k nejmenšímu (nahoře) - kolíky B a C jsou prázdné - úkol: přenést všechny disky z A na B, mohou se odkládat
Vraťme se k základům: DFS = Depth First Search
Prohledávání do hloubky Vraťme se k základům: DFS = Depth First Search DFS Programování s omezujícími podmínkami Roman Barták Katedra teoretické informatiky a matematické logiky roman.bartak@mff.cuni.cz
Automatizované řešení úloh s omezeními
Automatizované řešení úloh s omezeními Martin Kot Katedra informatiky, FEI, Vysoká škola báňská Technická universita Ostrava 17. listopadu 15, Ostrava-Poruba 708 33 Česká republika 25. října 2012 M. Kot
Optimalizace & soft omezení: algoritmy
Optimalizace & soft omezení: algoritmy Soft propagace Klasická propagace: eliminace nekonzistentních hodnot z domén proměnných Soft propagace: propagace preferencí (cen) nad k-ticemi hodnot proměnných
Agent pracující v částečně pozorovatelném prostředí udržuje na základě senzorického modelu odhaduje, jak se svět může vyvíjet.
Umělá inteligence II Roman Barták, KTIML roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Dnešní program Agent pracující v částečně pozorovatelném prostředí udržuje na základě senzorického modelu
1 Úvod do celočíselné lineární optimalizace
Úvod do celočíselné lineární optimalizace Martin Branda, verze 7.. 7. Motivace Reálné (smíšeně-)celočíselné úlohy Optimalizace portfolia celočíselné počty akcií, modelování fixních transakčních nákladů,
Prohledávání do šířky = algoritmus vlny
Prohledávání do šířky = algoritmus vlny - souběžně zkoušet všechny možné varianty pokračování výpočtu, dokud nenajdeme řešení úlohy průchod stromem všech možných cest výpočtu do šířky, po vrstvách (v každé
07 Základní pojmy teorie grafů
07 Základní pojmy teorie grafů (definice grafu, vlastnosti grafu, charakteristiky uzlů, ohodnocené grafy) Definice grafu množina objektů, mezi kterými existují určité vazby spojující tyto objekty. Uspořádaná
PA163 Programování s omezujícími podmínkami
Organizace předmětu PA163 Programování s omezujícími podmínkami Základní informace Web předmětu: http://www.fi.muni.cz/~hanka/cp Průsvitky: průběžně aktualizovány na webu předmětu Ukončení předmětu: cca
Obsah prezentace. Základní pojmy v teorii o grafech Úlohy a prohledávání grafů Hledání nejkratších cest
Obsah prezentace Základní pojmy v teorii o grafech Úlohy a prohledávání grafů Hledání nejkratších cest 1 Základní pojmy Vrchol grafu: {množina V} Je to styčná vazba v grafu, nazývá se též uzlem, prvkem
Programování. s omezujícími podmínkami. Roman Barták. roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak
Programování s omezujícími podmínkami Roman Barták Katedra teoretické informatiky a matematické logiky roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Konzistenční techniky Dosud jsme podmínky
Základy informatiky. Teorie grafů. Zpracoval: Pavel Děrgel Úprava: Daniela Szturcová
Základy informatiky Teorie grafů Zpracoval: Pavel Děrgel Úprava: Daniela Szturcová Obsah přednášky Barvení mapy Teorie grafů Definice Uzly a hrany Typy grafů Cesty, cykly, souvislost grafů Barvení mapy
Umělá inteligence I. Roman Barták, KTIML.
Umělá inteligence I Roman Barták, KTIML roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Na úvod Neinformované (slepé) prohledávání umí najít (optimální) řešení problému, ale ve většině případů
Úloha ve stavovém prostoru SP je <s 0, C>, kde s 0 je počáteční stav C je množina požadovaných cílových stavů
Stavový prostor a jeho prohledávání SP = formalismus k obecnějšímu uchopení a vymezení problému, který spočívá v nalezení posloupnosti akcí vedoucích od počátečního stavu úlohy (zadání) k požadovanému
Základy umělé inteligence
Základy umělé inteligence Hraní her (pro 2 hráče) Základy umělé inteligence - hraní her. Vlasta Radová, ZČU, katedra kybernetiky 1 Hraní her (pro dva hráče) Hraní her je přirozeně spjato s metodami prohledávání
7. Heuristické metody
Jan Schmidt 2011 Katedra číslicového návrhu Fakulta informačních technologií České vysoké učení technické v Praze Zimní semestr 2011/12 MI-PAA EVROPSKÝ SOCIÁLNÍ FOND PRAHA & EU: INVESTUJENE DO VAŠÍ BUDOUCNOSTI
Výroková a predikátová logika - V
Výroková a predikátová logika - V Petr Gregor KTIML MFF UK ZS 2015/2016 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - V ZS 2015/2016 1 / 21 Dokazovací systémy VL Hilbertovský kalkul Hilbertovský
Výroková a predikátová logika - III
Výroková a predikátová logika - III Petr Gregor KTIML MFF UK ZS 2017/2018 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - III ZS 2017/2018 1 / 16 2-SAT 2-SAT Výrok je v k-cnf, je-li v CNF a
HEURISTICKÉ ALGORITMY PRO ŘEŠENÍ ÚLOH OBCHODNÍHO CESTUJÍCÍHO
HEURISTICKÉ ALGORITMY PRO ŘEŠENÍ ÚLOH OBCHODNÍHO CESTUJÍCÍHO Heuristické algoritmy jsou speciálními algoritmy, které byly vyvinuty pro obtížné úlohy, jejichž řešení je obtížné získat v rozumném čase. Mezi
Grafové algoritmy. Programovací techniky
Grafové algoritmy Programovací techniky Grafy Úvod - Terminologie Graf je datová struktura, skládá se z množiny vrcholů V a množiny hran mezi vrcholy E Počet vrcholů a hran musí být konečný a nesmí být
popel, glum & nepil 16/28
Lineární rezoluce další způsob zjemnění rezoluce; místo stromu směřujeme k lineární struktuře důkazu Lineární rezoluční odvození (důkaz) z Ë je posloupnost dvojic ¼ ¼ Ò Ò taková, že Ò ½ a 1. ¼ a všechna
SEMESTRÁLNÍ ÚLOHY S PROGRAMY V PROLOGU (zadání úloh)
Cvičení 7 SEMESTRÁLNÍ ÚLOHY S PROGRAMY V PROLOGU (zadání úloh) 1. Polynomy Návod: Polynomy lze reprezentovat (nejen v Prologu) několika způsoby, které lze rozdělit do následujících skupin: A) podle množství
Grafové algoritmy. Programovací techniky
Grafové algoritmy Programovací techniky Grafy Úvod - Terminologie Graf je datová struktura, skládá se z množiny vrcholů V a množiny hran mezi vrcholy E Počet vrcholů a hran musí být konečný a nesmí být
Vzdálenost uzlů v neorientovaném grafu
Vzdálenosti a grafy Vzdálenost uzlů v neorientovaném grafu Je dán neorientovaný neohodnocený graf G = (V,E,I) vzdálenost uzlů u a v v neorientovaném souvislém grafu G je délka nejkratší cesty spojující
Znalosti budeme nejčastěji vyjadřovat v predikátové logice prvního řádu. Metody:
Umělá inteligence II Roman Barták, KTIML roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Znalosti v učení Umíme se učit funkce vstup výstup. Jedinou dodatečnou znalost, kterou jsme využili, byl
Umělá inteligence I. Roman Barták, KTIML.
Umělá inteligence I Roman Barták, KTIML roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Už umíme používat výrokovou logiku pro reprezentaci znalostí a odvozování důsledků. Dnes Dnes zopakujeme
13. Lineární programování
Jan Schmidt 2011 Katedra číslicového návrhu Fakulta informačních technologií České vysoké učení technické v Praze Zimní semestr 2011/12 MI-PAA EVROPSKÝ SOCIÁLNÍ FOND PRAHA & EU: INVESTUJENE DO VAŠÍ BUDOUCNOSTI
SEMESTRÁLNÍ ÚLOHY S PROGRAMY V PROLOGU (zadání úloh)
Cvičení 7 SEMESTRÁLNÍ ÚLOHY S PROGRAMY V PROLOGU (zadání úloh) 1. Polynomy Návod: Polynomy lze reprezentovat (nejen v Prologu) několika způsoby, které lze rozdělit do následujících skupin: A) podle množství
Výroková a predikátová logika - II
Výroková a predikátová logika - II Petr Gregor KTIML MFF UK ZS 2015/2016 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - II ZS 2015/2016 1 / 18 Základní syntax Jazyk Výroková logika je logikou
Seminář z umělé inteligence. Otakar Trunda
Seminář z umělé inteligence Otakar Trunda Plánování Vstup: Satisficing task: počáteční stav, cílové stavy, přípustné akce Optimization task: počáteční stav, cílové stavy, přípustné akce, ceny akcí Výstup:
Využití principů, ale vlastní naprogramování řešících
Programování Cvičení 1 s omezujícími podmínkami Roman Barták Katedra teoretické informatiky a matematické logiky roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Využití CSP Využití principů,
Prolog PROgramming in LOGic část predikátové logiky prvního řádu rozvoj začíná po roce 1970 Robert Kowalski teoretické základy Alain Colmerauer, David
Úvod do Prologu Prolog PROgramming in LOGic část predikátové logiky prvního řádu rozvoj začíná po roce 1970 Robert Kowalski teoretické základy Alain Colmerauer, David Warren (Warren Abstract Machine) implementace
Umělá inteligence I. Roman Barták, KTIML. roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak
Umělá inteligence I Roman Barták, KTIML roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Na úvod Agent s reflexy pouze převádí současný vjem na jednu akci. Agent s cílem umí plánovat několik akcí
Domény. Petr Štěpánek. S využitím materialu Krysztofa R. Apta
Domény Petr Štěpánek S využitím materialu Krysztofa R. Apta 2006 Logické programování 10 1 Typy programů v čistém Prologu je možné uspořádat podle různých pohledů. Zajímavá je charakteristika podle domén,
Algoritmus pro hledání nejkratší cesty orientovaným grafem
1.1 Úvod Algoritmus pro hledání nejkratší cesty orientovaným grafem Naprogramoval jsem v Matlabu funkci, která dokáže určit nejkratší cestu v orientovaném grafu mezi libovolnými dvěma vrcholy. Nastudoval
Aproximativní algoritmy UIN009 Efektivní algoritmy 1
Aproximativní algoritmy. 14.4.2005 UIN009 Efektivní algoritmy 1 Jak nakládat s NP-těžkými úlohami? Speciální případy Aproximativní algoritmy Pravděpodobnostní algoritmy Exponenciální algoritmy pro data
ROZHODOVACÍ PROCEDURY A VERIFIKACE PAVEL SURYNEK, KTIML HTTP://KTIML.MFF.CUNI.CZ/~SURYNEK/NAIL094
10 ROZHODOVACÍ PROCEDURY A VERIFIKACE PAVEL SURYNEK, KTIML HTTP://KTIML.MFF.CUNI.CZ/~SURYNEK/NAIL094 Matematicko-fyzikální fakulta Univerzita Karlova v Praze 1 ROZHODOVÁNÍ TEORIÍ POMOCÍ SAT ŘEŠIČE (SMT)
Plánováníá a rozvrhování
Plánováníá a rozvrhování Roman Barták, KTIML roman.bartak@mff.cuni.cz cz http://ktiml.mff.cuni.cz/~bartak Na úvod Dosud prezentované plánovací systémy používaly adhoc algoritmy, tj. speciální plánovací
ORIENTOVANÉ GRAFY, REPREZENTACE GRAFŮ
ORIENTOVANÉ GRAFY, REPREZENTACE GRAFŮ Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2/2, Lekce Evropský sociální fond Praha & EU: Investujeme
Cílem kapitoly je seznámit studenta se seznamem a stromem. Jejich konstrukci, užití a základní vlastnosti.
Seznamy a stromy Cílem kapitoly je seznámit studenta se seznamem a stromem. Jejich konstrukci, užití a základní vlastnosti. Klíčové pojmy: Seznam, spojový seznam, lineární seznam, strom, list, uzel. Úvod
Algoritmy a datové struktury
Algoritmy a datové struktury Stromy 1 / 32 Obsah přednášky Pole a seznamy Stromy Procházení stromů Binární stromy Procházení BS Binární vyhledávací stromy 2 / 32 Pole Hledání v poli metodou půlení intervalu
5 Orientované grafy, Toky v sítích
Petr Hliněný, FI MU Brno, 205 / 9 FI: IB000: Toky v sítích 5 Orientované grafy, Toky v sítích Nyní se budeme zabývat typem sít ových úloh, ve kterých není podstatná délka hran a spojení, nýbž jejich propustnost
Unární je také spojka negace. pro je operace binární - příkladem může být funkce se signaturou. Binární je velká většina logických spojek
Otázka 06 - Y01MLO Zadání Predikátová logika, formule predikátové logiky, sentence, interpretace jazyka predikátové logiky, splnitelné sentence, tautologie, kontradikce, tautologicky ekvivalentní formule.
Modely teorie grafů, min.kostra, max.tok, CPM, MPM, PERT
PEF ČZU Modely teorie grafů, min.kostra, max.tok, CPM, MPM, PERT Okruhy SZB č. 5 Zdroje: Demel, J., Operační výzkum Jablonský J., Operační výzkum Šubrt, T., Langrová, P., Projektové řízení I. a různá internetová
ADT STROM Lukáš Foldýna
ADT STROM Lukáš Foldýna 26. 05. 2006 Stromy mají široké uplatnění jako datové struktury pro různé algoritmy. Jsou to matematické abstrakce množin, kterou v běžném životě používáme velice často. Příkladem
Úvod do teorie grafů
Úvod do teorie grafů Neorientovaný graf G = (V,E,I) V množina uzlů (vrcholů) - vertices E množina hran - edges I incidence incidence je zobrazení, buď: funkce: I: E V x V relace: I E V V incidence přiřadí
Logické programování s omezujícími podmínkami. Constraint Logic Programming: CLP
Logické programování s omezujícími podmínkami Constraint Logic Programming: CLP CP a programovací jazyk Dosavadní předpoklady (pro CSP) omezení jsou dostupná na začátku prohledávání omezení jsou reprezentována
VLASTNOSTI GRAFŮ. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze. BI-GRA, LS 2010/2011, Lekce 5
VLASTNOSTI GRAFŮ Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2010/2011, Lekce 5 Evropský sociální fond Praha & EU: Investujeme do vaší
State Space Search Step Run Editace úloh Task1 Task2 Init Clear Node Goal Add Shift Remove Add Node Goal Node Shift Remove, Add Node
State Space Search Po spuštění appletu se na pracovní ploše zobrazí stavový prostor první předpřipravené úlohy: - Zeleným kroužkem je označen počáteční stav úlohy, který nemůže být změněn. - Červeným kroužkem
TGH09 - Barvení grafů
TGH09 - Barvení grafů Jan Březina Technical University of Liberec 15. dubna 2013 Problém: Najít obarvení států na mapě tak, aby žádné sousední státy neměli stejnou barvu. Motivační problém Problém: Najít
Algoritmy na ohodnoceném grafu
Algoritmy na ohodnoceném grafu Dvě základní optimalizační úlohy: Jak najít nejkratší cestu mezi dvěma vrcholy? Dijkstrův algoritmus s t Jak najít minimální kostru grafu? Jarníkův a Kruskalův algoritmus
Databázové systémy. * relační kalkuly. Tomáš Skopal. - relační model
Databázové systémy Tomáš Skopal - relační model * relační kalkuly Osnova přednášky relační kalkuly doménový n-ticový Relační kalkuly využití aparátu predikátové logiky 1. řádu pro dotazování rozšíření
Dynamické rozvrhování
Dynamické rozvrhování Hana Rudová Fakulta informatiky, Masarykova universita http://www.fi.muni.cz/~hanka Informatické kolokvium, 9.10.2007 Dynamické rozvrhování (Dynamic scheduling) 1 Úvod 2 Popis problému
Dijkstrův algoritmus
Dijkstrův algoritmus Hledání nejkratší cesty v nezáporně hranově ohodnoceném grafu Necht je dán orientovaný graf G = (V, H) a funkce, která každé hraně h = (u, v) H přiřadí nezáporné reálné číslo označované
ALGORITMY A DATOVÉ STRUKTURY
Název tématického celku: Cíl: ALGORITMY A DATOVÉ STRUKTURY Metodický list č. 1 Časová složitost algoritmů Základním cílem tohoto tematického celku je vysvětlení potřebných pojmů a definic nutných k popisu
ILOG (aisa:/software/ilog/solver51/doc/index.html)
ILOG Solver ILOG (aisa:/software/ilog/solver51/doc/index.html) CSP modelován pomocí C++ tříd, různé sady knihoven napsané v C++ ILOG Solver = základní knihovny pravidelná aktualizace sw na MU definice
Výroková a predikátová logika - II
Výroková a predikátová logika - II Petr Gregor KTIML MFF UK ZS 2017/2018 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - II ZS 2017/2018 1 / 17 Předběžnosti Základní pojmy n-ární relace a funkce
Plánováníá a rozvrhování
Plánováníá a rozvrhování Roman Barták, KTIML roman.bartak@mff.cuni.cz cz http://ktiml.mff.cuni.cz/~bartak Čas a plánování Konceptuální model plánování pracuje s implicitním časem: akce a události jsou
Negativní informace. Petr Štěpánek. S použitím materiálu M.Gelfonda a V. Lifschitze. Logické programování 15 1
Negativní informace Petr Štěpánek S použitím materiálu M.Gelfonda a V. Lifschitze 2009 Logické programování 15 1 Negace jako neúspěch Motivace: Tvrzení p (atomická formule) neplatí, jestliže nelze odvodit
Plánování v prostoru plánů
Plánování v prostoru plánů 5. dubna 2018 Zdroj: Roman Barták, přednáška Umělá inteligence II, Matematicko-fyzikální fakulta, Karlova univerzita v Praze, 2014. http: // kti. ms. mff. cuni. cz/ ~bartak/
Třídy složitosti P a NP, NP-úplnost
Třídy složitosti P a NP, NP-úplnost Cíle přednášky: 1. Definovat, za jakých okolností můžeme problém považovat za efektivně algoritmicky řešitelný. 2. Charakterizovat určitou skupinu úloh, pro které není
Výroková a predikátová logika - II
Výroková a predikátová logika - II Petr Gregor KTIML MFF UK ZS 2013/2014 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - II ZS 2013/2014 1 / 20 Základní syntax Jazyk Výroková logika je logikou
Návrh Designu: Radek Mařík
1. 7. Najděte nejdelší rostoucí podposloupnost dané posloupnosti. Použijte metodu dynamického programování, napište tabulku průběžných délek částečných výsledků a tabulku předchůdců. a) 5 8 11 13 9 4 1
prochází částečná konzistentní ohodnocení dokud nenajde úplné (konzistentní) ohodnocení Základní princip prohledávání s navracení při řešení CSP:
Backtracking Programování s omezujícími podmínkami Roman Barták Katedra teoretické informatiky a matematické logiky roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak prochází částečná konzistentní
Největší společný dělitel
1..1 Největší společný dělitel Předpoklady: 01016 Číslo Číslo nsn Platí pravidlo "nsn získáme jako součin obou čísel"? = 1 = Násobící pravidlo platí. 1 = Násobící pravidlo platí. 1 = Násobící pravidlo
Dynamicky vázané metody. Pozdní vazba, virtuální metody
Dynamicky vázané metody Pozdní vazba, virtuální metody Motivace... class TBod protected: float x,y; public: int vrat_pocet_bodu() return 1; ; od třídy TBod odvodíme: class TUsecka: public TBod protected:
Základy informatiky. 07 Teorie grafů. Kačmařík/Szturcová/Děrgel/Rapant
Základy informatiky 07 Teorie grafů Kačmařík/Szturcová/Děrgel/Rapant Obsah přednášky barvení mapy teorie grafů definice uzly a hrany typy grafů cesty, cykly, souvislost grafů Barvení mapy Kolik barev je
fakulty MENDELU v Brně (LDF) s ohledem na disciplíny společného základu http://akademie.ldf.mendelu.cz/cz (reg. č. CZ.1.07/2.2.00/28.
Základy lineárního programování Vyšší matematika, Inženýrská matematika LDF MENDELU Podpořeno projektem Průřezová inovace studijních programů Lesnické a dřevařské fakulty MENDELU v Brně (LDF) s ohledem
Formální systém výrokové logiky
Formální systém výrokové logiky 1.Jazyk výrokové logiky Nechť P = {p,q,r, } je neprázdná množina symbolů, které nazýváme prvotní formule. Symboly jazyka L P výrokové logiky jsou : a) prvky množiny P, b)
BCH kódy. Alena Gollová, TIK BCH kódy 1/27
7. přednáška z algebraického kódování Alena Gollová, TIK 1/27 Obsah 1 Binární Alena Gollová, TIK 2/27 Binární jsou cyklické kódy zadané svými generujícími kořeny. Díky šikovné volbě kořenů opravuje kód
Obsah: Problém osmi dam
Prohledávání stavového prostoru leš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Problém osmi dam Prohledávání stavového prostoru Neinformované prohledávání Úvod do umělé inteligence
Univerzita Karlova v Praze Matematicko-fyzikální fakulta DIPLOMOVÁ PRÁCE. Tomáš Müller. Interaktivní tvorba rozvrhu
Univerzita Karlova v Praze Matematicko-fyzikální fakulta DIPLOMOVÁ PRÁCE Tomáš Müller Interaktivní tvorba rozvrhu Katedra teoretické informatiky Vedoucí diplomové práce: RNDr. Roman Barták, PhD. Studijní
Konstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i,
[161014-1204 ] 11 2.1.35 Konstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i, kde i = 0, 1,..., takto: p 0 q právě tehdy, když bud p, q F nebo p, q F. Dokud i+1 i konstruujeme p
Logika a logické programování
Logika a logické programování témata ke zkoušce Poslední aktualizace: 16. prosince 2009 Zkouška je písemná, skládá se obvykle ze sedmi otázek (může být více nebo méně, podle náročnosti otázek), z toho
LDF MENDELU. Simona Fišnarová (MENDELU) Základy lineárního programování VMAT, IMT 1 / 25
Základy lineárního programování Vyšší matematika, Inženýrská matematika LDF MENDELU Podpořeno projektem Průřezová inovace studijních programů Lesnické a dřevařské fakulty MENDELU v Brně (LDF) s ohledem
Výroková a predikátová logika - III
Výroková a predikátová logika - III Petr Gregor KTIML MFF UK ZS 2014/2015 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - III ZS 2014/2015 1 / 21 Výroková logika Horn-SAT Horn-SAT Jednotková
NP-ÚPLNÉ PROBLÉMY. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze
NP-ÚPLNÉ PROBLÉMY Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2010/2011, Lekce 13 Evropský sociální fond Praha & EU: Investujeme do
Výukový materiál zpracován v rámci projektu EU peníze školám
Výukový materiál zpracován v rámci projektu EU peníze školám Registrační číslo projektu: CZ. 1.07/1.5.00/34.0637 Šablona III/2 Název VY_32_INOVACE_39_Algoritmizace_teorie Název školy Základní škola a Střední
Drsná matematika III 10. demonstrovaná cvičení Kostry grafů
Drsná matematika III 10. demonstrovaná cvičení Kostry grafů Martin Panák Masarykova univerzita Fakulta informatiky 21.11. 2006 1 Domácí úlohy z minulého týdne Příklad 1 Příklad 2 Příklad 3 2 Borůvkův algoritmus
NP-úplnost problému SAT
Problém SAT je definován následovně: SAT(splnitelnost booleovských formulí) Vstup: Booleovská formule ϕ. Otázka: Je ϕ splnitelná? Příklad: Formule ϕ 1 =x 1 ( x 2 x 3 )jesplnitelná: např.přiohodnocení ν,kde[x
Implementace LL(1) překladů
Překladače, přednáška č. 6 Ústav informatiky, FPF SU Opava sarka.vavreckova@fpf.slu.cz Poslední aktualizace: 30. října 2007 Postup Programujeme syntaktickou analýzu: 1 Navrhneme vhodnou LL(1) gramatiku
Binární vyhledávací stromy II
Binární vyhledávací stromy II doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 19. března 2019 Jiří Dvorský (VŠB TUO) Binární vyhledávací
Usuzování za neurčitosti
Usuzování za neurčitosti 25.11.2014 8-1 Usuzování za neurčitosti Hypotetické usuzování a zpětná indukce Míry postačitelnosti a nezbytnosti Kombinace důkazů Šíření pravděpodobnosti v inferenčních sítích
Dynamické datové struktury III.
Dynamické datové struktury III. Halda. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie, Přírodovědecká fakulta UK. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované
Dynamické programování
ALG 11 Dynamické programování Úloha batohu neomezená Úloha batohu /1 Úloha batohu / Knapsack problem Máme N předmětů, každý s váhou Vi a cenou Ci (i = 1, 2,..., N) a batoh s kapacitou váhy K. Máme naložit
3. Třídy P a NP. Model výpočtu: Turingův stroj Rozhodovací problémy: třídy P a NP Optimalizační problémy: třídy PO a NPO MI-PAA
Jan Schmidt 2011 Katedra číslicového návrhu Fakulta informačních technologií České vysoké učení technické v Praze Zimní semestr 2011/12 MI-PAA EVROPSKÝ SOCIÁLNÍ FOND PRAHA & EU: INVESTUJENE DO VAŠÍ BUDOUCNOSTI
bfs, dfs, fronta, zásobník, prioritní fronta, halda
bfs, dfs, fronta, zásobník, prioritní fronta, halda Petr Ryšavý 20. září 2016 Katedra počítačů, FEL, ČVUT prohledávání grafů Proč prohledávání grafů Zkontrolovat, zda je sít spojitá. Hledání nejkratší
Učební texty k státní bakalářské zkoušce Matematika Základy lineárního programování. študenti MFF 15. augusta 2008
Učební texty k státní bakalářské zkoušce Matematika Základy lineárního programování študenti MFF 15. augusta 2008 1 15 Základy lineárního programování Požadavky Simplexová metoda Věty o dualitě (bez důkazu)
0.1 Úvod do matematické analýzy
Matematika I (KMI/PMATE) 1 0.1 Úvod do matematické analýzy 0.1.1 Pojem funkce Veličina - pojem, který popisuje kvantitativní (číselné) vlastnosti reálných i abstraktních objektů. Příklady veličin: hmotnost
Stromy, haldy, prioritní fronty
Stromy, haldy, prioritní fronty prof. Ing. Pavel Tvrdík CSc. Katedra počítačů FEL České vysoké učení technické DSA, ZS 2008/9, Přednáška 6 http://service.felk.cvut.cz/courses/x36dsa/ prof. Pavel Tvrdík
1. Převeďte dané číslo do dvojkové, osmičkové a šestnáctkové soustavy: a) 759 10 b) 2578 10
Úlohy- 2.cvičení 1. Převeďte dané číslo do dvojkové, osmičkové a šestnáctkové soustavy: a) 759 10 b) 2578 10 2. Převeďte dané desetinné číslo do dvojkové soustavy (DEC -> BIN): a) 0,8125 10 b) 0,35 10
Plánování se stavovým prostorem
Plánování se stavovým prostorem 22. března 2018 1 Opakování: plánovací problém a reprezentace 2 Dopředné plánování 3 Zpětné plánování 4 Doménově závislé plánování Zdroj: Roman Barták, přednáška Plánování