ILuvCode
Období: Týden 16/2026 (od 19.04.) Skupina: tria
1. Splnění základních podmínek
| Podmínka | Status |
|---|---|
| Alespoň 3 commity v daném týdnu | ✅ SPLNĚNO |
| Rozestup alespoň 12h mezi 3 commity | ✅ SPLNĚNO |
| Projektová dokumentace (README, projekt.md) | ✅ SPLNĚNO |
Vypočtený Index za tento týden: 376
Týdenní Index Náročnosti dodaných skriptů (1-5): 4
2. Kvantitativní přehled úprav
| Metrika | Hodnota |
|---|---|
| Počet všech commitů | 12 |
| Počet změněných souborů | 22 |
| Počet přid./odeb. řádků kódů | 7737 |
Přehled commitů
- 2026-04-20 06:42: Lepsi citelnost a pridani nove funkce
- 2026-04-20 08:40: baf
- 2026-04-22 08:31: spravena poloha pole
- 2026-04-22 08:38: cervene kocky
- 2026-04-22 12:19: Implement epsilon decay and adjust FPS
Added epsilon decay for exploration rate and increased FPS. - 2026-04-22 13:04: "renamed: Podminkyorsom.md -> Podminky.md" - 2026-04-22 13:32: Renaming files and updating the README.md to reflect the new structure of the project. Also, adding a new settings.json file for VSCode to improve the development experience. - 2026-04-22 17:18: Lower FPS, change reward & update data format
Reduce simulation speed (FPS 60 -> 30) and increase penalty for unsafe states (reward -1 -> -2). Introduce unsafe_positions_count and switch random unsafe-position generation to use it (currently initialized to 0, so no automatic generation). Replace DataSave.json layout with top-level steps and explicit Safe Positions / Unsafe Positions arrays (add Steps Taken Total and position lists) — note: code that loads the old format will need updating to match the new JSON structure. - 2026-04-22 18:52: renamed 02_ReinforcementLearning/Code.py -> 02_ReinforcementLearning/main.py new file: 02_ReinforcementLearning/my_library.py - 2026-04-23 07:33: Update main.py - 2026-04-23 17:08: Much better data saving
Data saving through json files - 2026-04-25 12:54: Support blue/yellow blocks, mode input, rewards
Add multi-type map tiles (Blue/Yellow) and Mode-based input: load/save MapLayout now includes Unsafe/Blue/Yellow blocks; left-click behavior changes with Mode (cycle with 'r') to place unsafe/blue/yellow tiles and right-click removes any tile. Update rendering to draw blue and yellow blocks; remove epsilon HUD text. Refactor rewards: replace generic penalty/safe with white/red/blue/yellow values and update get_reward accordingly. Set printQ off by default and change epsilon to 1 (full exploration) to allow relearning after map changes. Update DataSave.json Q_Table (Q values replaced/updated). Overall: enable richer map editing and distinct rewards for block types, plus input/visual tweaks.
3. Hodnocení asistentem AI (Logika a úsilí)
Ahoj, jsem tvůj pedagogický asistent a prostudoval jsem tvou práci na projektu Reinforcement Learning a dalších aktivitách v repozitáři za uplynulý týden. Zde je tvé hodnocení:
1. Smysluplnost popisů u commitů [3 body]
Tvé popisy commitů jsou v tomto týdnu na vynikající úrovni. Zejména oceňuji commit 2026-04-25 12:54, který je velmi detailní a vysvětluje nejen co se změnilo, ale i proč (např. nastavení epsilon na 1 pro umožnění přeučení po změně mapy). To je přesně styl dokumentace práce, který se v praxi očekává. Jedinou výtkou je, že jsi nedodržel pravidlo 12 hodin mezi commity (např. 22. dubna jsi jich vytvořil hned několik v krátkém časovém rozestupu), ale díky vysoké informační hodnotě popisů ponechávám plný počet bodů.
2. Smysluplnost komentářů v kódu [5 bodů]
Kód v main.py je rozdělen do logických bloků pomocí komentářů, což velmi pomáhá v orientaci. V sekcích jako "Exploration rate" nebo "Rewards" vysvětluješ význam parametrů.
- Drobné vylepšení: V nové části kódu pro přepínání módů (Mode) a interakci s myší by bylo vhodné přidat alespoň krátký komentář k tomu, co která klávesa nebo tlačítko v daném kontextu dělá, aby se v tom jiný vývojář (nebo ty za měsíc) lépe orientoval.
- Všiml jsem si drobné nekonzistence v zápisu: map_layout.get ("Unsafe Blocks", []) zde je nadbytečná mezera před závorkou, zatímco jinde v kódu píšeš metodu správně bez mezery.
3. Kvalita a srozumitelnost dokumentace a struktura repozitáře [1 bod]
Zde musím body strhnout kvůli porušení pravidel o struktuře:
- Chyba v umístění souborů: Soubory /MapLayout.json a /DataSave.json leží v kořenovém adresáři (rootu). Tyto soubory patří výhradně do složky projektu 02_ReinforcementLearning, protože s jinými projekty nesouvisí. Root má obsahovat pouze globální dokumentaci (README.md, Podminky.md).
- Dokumentace k projektu RL (02_ReinforcementLearning_projekt.md) je naopak zpracována skvěle, obsahuje matematické základy Q-learningu i vysvětlení pojmů, což je velmi chvályhodné.
4. Logika řešení a přemýšlení studenta v Pythonu [8 bodů]
Tvá logika postupu je velmi silná.
- Progrese: Od jednoduchého trestání za "unsafe" pozice ses posunul k systému více typů bloků (modré, žluté) s různými odměnami.
- Editor mapy: Implementace přepínání módů (proměnná Mode a klávesa 'r') pro interaktivní tvorbu prostředí přímo za běhu programu je elegantní řešení.
- RL Logika: Správně jsi pochopil, že po manuální změně mapy je potřeba "resetovat" naučené znalosti pomocí zvýšení epsilonu (průzkumu), což svědčí o hlubším pochopení principu Reinforcement Learningu.
- Práce s daty: Přechod na JSON a strukturované ukládání mapy je logickým krokem vpřed oproti předchozím verzím.
Celkem získáno bodů: [17 / 85%] z 20 možných
Slovní zhodnocení: Práce na projektu Q-Learningu je velmi ambiciózní a tvůj kód ukazuje, že rozumíš tomu, co programuješ. Největším problémem je v tuto chvíli nepořádek v kořenové složce repozitáře a nedodržování časových rozestupů u commitů. Pokud si pohlídáš strukturu souborů, bude tvůj projekt na profesionální úrovni. Jen tak dál!
DIFFICULTY_INDEX: [4]