close
Vážení uživatelé,
16. 8. 2020 budou služby Blog.cz a Galerie.cz ukončeny.
Děkujeme vám za společně strávené roky!
Zjistit více
 

Listopad 2013

Seznam funkcí

4. listopadu 2013 v 0:03 Programování
Zde se nachází stručný výčet všech programovacích funkcí, které program obsahuje. Znak v závorce označuje, pro jaký oddíl je funkce určena.

Obecné informace

4. listopadu 2013 v 0:02 Programování
Pro učení programu byl vytvořen speciální jazyk, nazývaný jako "IQ-AI", který umožňuje komukoliv zasahovat do datových struktur samotného programu.
Programování probíhá přes datové soubory, které jsou ve formátu .txt. Běžný uživatel je může tedy různě modifikovat a podle dostupných funkcí různě upravovat.

Obecná struktura datových souborů

a) Základní datové soubory (uloženy ve složce "data", očíslovány a s příponou .txt)
b) Doplňové datové soubory (uloženy v podsložkách ve složce "data")

Ukázka základního datového souboru:
Na podnět: "jak je?" odpoví "vede se mi skvěle" nebo "mám se skvěle". Záleží na číslu které přečte číslo ze zdrojového souboru. (Více info v rubrice "programování" - jednotlivé funkce)

Soubor obsahuje 3 oddíly:
a) # jsou slova, která podnět nesmí obsahovat (vždy pouze na prvním řádku)
b) @ jsou slova, která podnět musí obsahovat (analyzuje všechny řádky zvlášť)
c) : je odpověď, kterou použije(vybírá náhodně jednu z nich)

Každé slovo nebo funkce musí být odděleny znakem & (and) a stejně tak tímto znakem musí být ukončen každý řádek.

Doplňkové soubory obsahují další zdroje informací, se kterými program pracuje a které využívá ke svým dalším funkcím. Jako příklad těchto souborů jsou třeba soubory obsahující informace o lidech, základní znaostní databázové soubory, slovníky, variabilní soubory (soubory s aktuálním datem, časem,...), atd...

Upravená funkce $v

4. listopadu 2013 v 0:01 Informace z vývoje
Byla upravena programovací funkce

Stará verze: $vznak:zdroj:cíl
Nová verze: $vznak:zdroj:cíl#d?


Funkce
- V souboru "cíl" vyhledá řádek, na kterém se nachází řetězec ze zdroje.
- Pod tímto řádkem hledá řádky (dokud nenarazí na znak "#"), které začínají zadaným znakem.
- Tyto řádky všechny vypíše do odpovědi.
- Znak může být jakýkoliv. Číslo, písmeno, speciální znak,…
- V případě nenalezení daného znaku použije zadaný datový soubor

Příklad použití: $v-:znalosti/aktualni_datum_bez_roku:znalosti/svatky#d130
- Podle aktuálního data vypíše, kdo má svátek. Řetězec se jménem musí začínat znakem "-".
- Pokud řádek se znakem "-" nebude existovat, použije datový soubor s číslem 130.

(:) $x:soubor

3. listopadu 2013 v 19:00 Programování

(:) $x:soubor


Funkce
- Ze souboru vybere náhodný řádek a ten vypíše.

Příklad použití: $x:struktury/pozdrav
- Ze souboru "struktury/pozdrav.txt" vypíše náhodně jeden z řádků.

(:) $vznak:zdroj:cíl#d?

3. listopadu 2013 v 19:00 Programování

(:) $vznak:zdroj:cíl#d?


Funkce
- V souboru "cíl" vyhledá řádek, na kterém se nachází řetězec ze zdroje.
- Pod tímto řádkem hledá řádky (dokud nenarazí na znak "#"), které začínají zadaným znakem. - Tyto řádky všechny vypíše do odpovědi.
- Znak může být jakýkoliv. Číslo, písmeno, speciální znak,…
- V případě nenalezení daného znaku použije zadaný datový soubor

Příklad použití: $v-:znalosti/aktualni_datum_bez_roku:znalosti/svatky#d130
- Podle data vypíše, kdo má svátek. Řetězec se jménem musí začínat znakem "-".
- Pokud řádek se znakem "-" nebude existovat, vypíše datový soubor s číslem 130.

(:) $*zdroj:cíl

3. listopadu 2013 v 19:00 Programování

(:) $*zdroj:cíl


Funkce
- V souboru "zdroj" přečte číslo na prvním řádku.
- V souboru "cíl" vybere text na příslušném čísle řádku.
- Vybraný text vypíše.

Příklad použití: $*osobnost/nalada:struktury/nalada
- V souboru "osobnost/nalada.txt" je uložené číslo 3.
- V souboru "struktury/nalada.txt" vybere 3. řádek a daný text vypíše.


Verze 2.0

3. listopadu 2013 v 0:03 Verze programu
Touto verzí dostal program základní jednotný vzhled pro další verze. Je to v podstatě takový základní stavební kámen. Tato verze má 8 základních datových souborů a umí tedy 8 odpovědí na 8 podnětů.Obsahoval také první funkce, které byly možno do datovýh souborů dodat ručně - tedy první verze, kterou mohl programovat sám uživatel.

Funkce

1) $*zdroj:cíl
- Ze souboru "zdroj" získá číslo z prvního řádku
- Ze souboru "cíl" vybere číslo řádku, podl ečísla ze "zdroje"
- Tento řádek vypíše do odpovědi

Příklad:
Uživatel: Jak se máš?
a) Honza: Mám se fajn
- fajn = 3. řádek v cíli.
b) Honza: Mám se docela dobře
- docela dobře = 2. řádek v cíli.
atd ...


Verze 1.1

3. listopadu 2013 v 0:02 Verze programu
Tato verze měla simulovat vizualizaci. Chtěl jsem otestovat, jak program dokáže komunikovat s externím programem, který se staral o grafiku vizualizačních prvků.

Výsledek:
- Program má 4 základní soubory.
- Náhodně mrká.
- Na podnět smích/smutek reaguje vizuálním otočením úst a textem.


Verze 1.0

3. listopadu 2013 v 0:01 Verze programu
Jedná se o úplně základní verzi. Někdy váhám, zda ji pokládat za jednu z verzí, nicméně do jisté míry přispěla k prvním náznakům vývoje něčeho většího. Více informací o absolventské práci zde, na mém osobním blogu.
Velkou přítěží bylo, že program využíval vlastního kódování jednotlivých znaků. Proto jsem od tohoto záměru později ustoupil.


Autor

2. listopadu 2013 v 23:59 Informace o projektu

Obecné informace

Mé jméno je Jan Kolář.
Narodil jsem se 24. listopadu roku 1990 v České republice.
Vystudoval jsem střední průmyslovou školu, obor automatizační systémy.
Následovalo tříleté studium na Vyšší odborné škole, obor veřejnosprávní činnost s podporou ICT, ukončeno absolutoriem.
Nyní pracuji jako administrátor produkce v jedné Japonské firmě.

Důvod vzniku projektu

Hlavním důvodem byl můj zájem o tuto problematiku. Ještě když jsem byl na základní škole, dostaly se mi do rukou programy jako Kecal, Pokec, Pokyd. Tyto programy ve mne vzbudily cosi, co do dnešních dnů přetrvává. Vytvoření něčeho, s čím bude schopen člověk komunikovat na úrovni řeči, byť jen psané.

Co je cílem a vizí

Cílem je vytvořit softwarovou napodobeninu lidského jedince z pohledu komunikačních schopností a dovedností. Cílem je dotáhnout program na takovou úroveň, že běžný uživatel jen s obtížemi pozná, že se jedná jen o program.
Vizí je splnit turingův test.

Plány do budoucna

Jsem si vědom časové náročnosti. Na vývoji dělám ve volných chvílích, pokud nato mám náladu a pokud mám nápady, jak postupovat dál a co zlepšovat. Mé heslo zní: "Vždy je co zlepšovat. Stačí jen přijít na to, co."