CourseWare Wiki
Switch Term
Summer 2023 / 2024
Summer 2022 / 2023
Summer 2021 / 2022
Summer 2020 / 2021
Summer 2019 / 2020
Summer 2018 / 2019
Summer 2017 / 2018
Older
Search
Log In
b232
courses
b3b33kui
cviceni
program_po_tydnech
tyden_01
Differences
This shows you the differences between two versions of the page.
View differences:
Side by Side
Inline
Go
Link to this comparison view
Both sides previous revision
Previous revision
2024/02/21 14:50 xposik [Prohledávácí rozcvička - nepovinná úloha 01-easy_search]
2024/02/21 14:43 xposik [programování hledání]
2024/02/21 14:42 xposik [Prohledávácí rozcvička - nepovinná úloha 01-easy_search]
2024/02/21 11:11 xposik [Prohledávácí rozcvička - nepovinná úloha 01-easy_search]
2024/02/21 11:11 xposik [Seznámení s prostředím KUIMaze]
2024/02/21 11:10 xposik [Seznámení s prostředím KUIMaze]
2024/02/21 11:01 xposik
2024/02/21 11:00 xposik [Seznámení s prostředím KUIMaze]
2024/02/20 17:39 xposik [Seznámení s prostředím KUIMaze]
2024/02/20 17:37 xposik [Seznámení s prostředím KUIMaze]
2023/04/28 14:01 external edit
Go
Next revision
Previous revision
2024/02/21 14:50 xposik [Prohledávácí rozcvička - nepovinná úloha 01-easy_search]
2024/02/21 14:43 xposik [programování hledání]
2024/02/21 14:42 xposik [Prohledávácí rozcvička - nepovinná úloha 01-easy_search]
2024/02/21 11:11 xposik [Prohledávácí rozcvička - nepovinná úloha 01-easy_search]
2024/02/21 11:11 xposik [Seznámení s prostředím KUIMaze]
2024/02/21 11:10 xposik [Seznámení s prostředím KUIMaze]
2024/02/21 11:01 xposik
2024/02/21 11:00 xposik [Seznámení s prostředím KUIMaze]
2024/02/20 17:39 xposik [Seznámení s prostředím KUIMaze]
2024/02/20 17:37 xposik [Seznámení s prostředím KUIMaze]
2023/04/28 14:01 external edit
Go
courses:b3b33kui:cviceni:program_po_tydnech:tyden_01 [2024/02/21 11:11]
xposik
[Prohledávácí rozcvička - nepovinná úloha 01-easy_search]
courses:b3b33kui:cviceni:program_po_tydnech:tyden_01 [2024/02/21 14:50]
xposik
[Prohledávácí rozcvička - nepovinná úloha 01-easy_search]
Line 74:
Line 74:
===== Prohledávácí rozcvička - nepovinná úloha 01-easy_search =====
===== Prohledávácí rozcvička - nepovinná úloha 01-easy_search =====
-
Ačkoli mnozí
jste
již netrpěliví
skočit
na implementaci algoritmu A*, zkuste napřed
hledání cesty v jednoduchém
bludiš
ti
. Je to menší problém, bude se vám snáz krokovat a debugovat, ověříte si správné zacházení s prostředím
na jednodu
šším
problému
.
Základní komunika
č
ní rozhraní je stejné
,
tedy
+
Ačkoli
jste
mnozí již netrpěliví
se rovnou vrhnout
na implementaci algoritmu A*, zkuste napřed
jednodušší algoritmy (BFS, UCS) a jednoduchá
bludiš
tě
. Je to menší problém, bude se vám snáz krokovat a debugovat, ověříte si správné zacházení s prostředím
.
+
+
Rozmyslete si trochu nad papírem datové struktury, které budete potřebovat. Zkuste implementovat různé strategie/algoritmy. Pokud je implementujete dostatečně obecným způsobem, vět
š
ina vašeho kódu půjde použít i pro algoritmus A* (což je první povinná úloha).
+
+
Zkuste svůj algoritmus v modulu ''agent.py'' odevzdat do [[https://cw.felk.cvut.cz/brute/|BRUTE]] a prozkoumejte, jakou zpětnou vazbu vám hodnoticí skript poskytl.
+
+
===== 1. povinná úloha: Hledání cesty v bludišty algoritmem A* =====
+
V [[..:..:semestralni_ulohy:1_prohledavani_stavoveho_prostoru:start|první povinné úloze]] je va
ším
úkolem naimplementovat algoritmus A*, který vám bude představen nejpozději na druhé přednášce
.
Pokud jste ale "Prohledávací rozcvi
č
ku" zvládli rychle a nedělá vám potíže programovat v Pythonu
,
můžete začít pracovat na první povinné úloze.
+
+
Nezapomeňte, že cena za přechod z jednoho stavu do druhého nemusí být stále stejná.
-
Odevzdávat budete také modul ''agent.py'', přesně podle [[courses:b3b33kui:semestralni_ulohy:1_prohledavani_stavoveho_prostoru:specifikace|specifikace]].
-
Vyzkoušejte různé strategie prohledávání. Pokud napíšete dostatečně obecně, stejný kód bude fungovat i pro případ algoritmu A*. Odevzdávat budete do [[https://cw.felk.cvut.cz/upload/|Upload systému]].
-
Rozmyslete si trochu nad papírem datové struktury, které budete potřebovat.
-
===== programování hledání =====
-
* Python [[https://docs.python.org/3/library/queue.html|queue]] nebo [[https://docs.python.org/3.6/library/heapq.html|heapq]] vám mohou pomoci při ukládání uzlů prohledávacího stromu.
===== různé =====
===== různé =====
* [[http://tristanpenman.com/demos/n-puzzle/|visualizace]] různých prohledávacích algoritmů demonstrována na problému n-1 puzzle
* [[http://tristanpenman.com/demos/n-puzzle/|visualizace]] různých prohledávacích algoritmů demonstrována na problému n-1 puzzle
courses/b3b33kui/cviceni/program_po_tydnech/tyden_01.txt
· Last modified: 2024/02/21 14:50 by
xposik