POUŽÍVATEĽSKÁ PRÍRUČKA - Technická univerzita v Košiciach
POUŽÍVATEĽSKÁ PRÍRUČKA - Technická univerzita v Košiciach
POUŽÍVATEĽSKÁ PRÍRUČKA - Technická univerzita v Košiciach
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
TECHNICKÁ UNIVERZITA V KOŠICIACH<br />
FAKULTA ELEKTROTECHNIKY A INFORMATIKY<br />
Katedra kybernetiky a umelej inteligencie<br />
Centrum pre inteligentné technológie<br />
<strong>POUŽÍVATEĽSKÁ</strong> <strong>PRÍRUČKA</strong><br />
Mária Virčíková<br />
Vedúci diplomovej práce: Prof. Ing. Peter Sinčák, PhD.<br />
Košice 2010
KKUI FEI<br />
Obsah<br />
Zoznam obrázkov..........................................................................................................3<br />
1 Funkcia programu.......................................................................................................4<br />
2 Súpis obsahu dodávky ................................................................................................5<br />
3 Inštalácia programu ....................................................................................................6<br />
3.1 Požiadavky na technické prostriedky ...................................................................6<br />
3.2 Požiadavky na programové prostriedky................................................................6<br />
3.3 Technické pozadie ...............................................................................................7<br />
4 Použitie programu ......................................................................................................8<br />
5 Popis pracovných súborov ........................................................................................10<br />
6 Obmedzenia programu .............................................................................................11<br />
7 Chybové hlásenia .....................................................................................................12<br />
8 Príklad použitia ........................................................................................................13<br />
9. Zhodnotenie riešenia................................................................................................14<br />
Príloha E: Používateľská príručka 2
KKUI FEI<br />
Zoznam obrázkov<br />
Obr. 1: Uvítacie okno Webotsu po jeho spustení............................................................8<br />
Obr. 2: Simulačné prostredie Webots.............................................................................9<br />
Obr. 3: Otvorenie nášho sveta........................................................................................9<br />
Obr. 4: Jednotlivé tance robotov ohodnotíme na tabuľke známkami od 1 do 5.............13<br />
Obr. 5: Panel systému Webots,kde sa spúšta simulácia ................................................13<br />
Príloha E: Používateľská príručka 3
KKUI FEI<br />
1 Funkcia programu<br />
Uvedený programový systém predstavuje implementáciu interaktívneho genetického<br />
algoritmu pre generovanie tanca robota Naa.<br />
Tvorenie a navrhovanie tanečných choreografií patrí medzi aplikácie, u<br />
ktorých je veľmi ťažké, niekedy nemožné hodnotiace funkcie vyjadriť numericky –<br />
alebo aspoň kvantitatívne. Nevieme špecifikovať optimalizačné parametre procesu,<br />
pretože kritériá pri takýchto systémoch sú subjektívne, to znamená, že sú závislé od<br />
konkrétneho posudzovateľa. Výstupy takého systému závisia od preferencií, zmyslov,<br />
emócií a porozumení človeka. V interaktívnych evolučných výpočtoch je funkcia<br />
vhodnosti nahradená ľudským užívateľom.<br />
Implementácia zahŕňa používateľské rozhranie, ktoré umožňuje:<br />
Proces interaktívnej evolúcie tanečných sekvencií, kde užívateľ predstavuje<br />
dôležitý faktor ovplyvňujúci budúce generácie tancov. Interaktívny genetický<br />
algoritmus je optimalizačný nástroj, ktorý využíva kooperáciu človeka a počítača, to<br />
znamená, že systém sa vyvíja na základe hodnotenia, ktoré predstavuje subjektívne<br />
hodnotenie získané od človeka (funkcia vhodnosti) ako hodnotenie vzdialenosti medzi<br />
vlastnou predstavou a výstupom optimalizačného procesu v psychologickom priestore.<br />
Príloha E: Používateľská príručka 4
KKUI FEI<br />
2 Súpis obsahu dodávky<br />
Súčasťou priloženého kompaktného disku je:<br />
zdrojové kódy v jazyku Python,<br />
zdrojové kódy ku prostrediu Webots,<br />
používateľská príručka v elektronickej podobe a<br />
systémová príručka v elektronickej podobe<br />
Teoretický základ riešenia a jeho základný framework je popísaný v hlavnej časti<br />
diplomovej práce.<br />
Príloha E: Používateľská príručka 5
KKUI FEI<br />
3 Inštalácia programu<br />
3.1 Požiadavky na technické prostriedky<br />
Program nemá žiadne špeciálne požiadavky na technické prostriedky.<br />
Bol testovaný na operačných systémoch:<br />
- Windows XP Home Edition,<br />
- Windows Vista Business Edition,<br />
- Ubuntu 10.04 LTS.<br />
A na:<br />
- PC lenovo: Intel Pentium, Pentium (R) Dual-Core CPU, 2GB pamäte<br />
RAM.<br />
- Notebooku Eee PC: Intel(R) Atom(TM) CPU N270, 0.99GB pamäte<br />
RAM.<br />
Program na generovanie robotického tanca je prenositeľný na akýkoľvek<br />
operačný systém.<br />
Simulátor Webots je kompatibilný s operačnými systémami:<br />
- Linux, min. glibc 2.3,<br />
- Windows XP, 7 alebo Vista,<br />
- Mac OS X 10.5 alebo novší.<br />
3.2 Požiadavky na programové prostriedky<br />
Aby program fungoval je nutné mať nainštalované:<br />
- Python 2.6.5, ktorý sa dá stiahnuť zo stránky<br />
o http://www.python.org/download/<br />
Príloha E: Používateľská príručka 6
KKUI FEI<br />
- GUI je v Pythone urobené pomocou modulu Tkinter, čo je štandardné rozhranie<br />
Pythona k Tk GUI toolkit. Sú kompatibilné s väčšinou Unix platformami, ako aj<br />
s Windows systémami. Samotné Tk nie je časťou jazyka Python, ale nachádza sa<br />
v tzv. Active State. Viac informácií možné nájsť na stránke:<br />
o http://docs.python.org/library/tkinter.html<br />
- Jazyk Tcl/Tk (Command Language), ktorý sa využíva v programe na návrh GUI.<br />
Je to skriptovací jazyk bežiaci na platformách Windows, Unix aj Macintosh. Tcl<br />
je jednoduchý a open-source, možný stiahnuť napríklad cez internetovú stránku:<br />
o http://www.tcl.tk/software/tcltk/<br />
- Vývojové prostredie Webots, ktoré je v plnej verzii dostupné na 30 dní a možné<br />
stiahnuť zo stránky:<br />
o http://www.cyberbotics.com/products/webots/download.html<br />
3.3 Technické pozadie<br />
Systém bol programovaný v jazyku Python, konkrétne vo verzii: 2.6.5, vo vývojovom<br />
prostredí NetBeans IDE 6.7, ktoré je voľné dostupné na stránke:<br />
- NetBeans IDE for Python EA2 Download:<br />
o http://download.netbeans.org/netbeans/6.7/python/ea2/<br />
Simulácia bola vytvorená v spomínanom prostredí Webots, konkrétne vo verzii:<br />
- Webots 6.<br />
Príloha E: Používateľská príručka 7
KKUI FEI<br />
4 Použitie programu<br />
Po spustení interaktívneho algoritmu v jazyku Python, napríklad pomocou vývojového<br />
prostredia NetBeans, v ktorom bol vyvíjaný, je nutné spustiť simulačné prostredie<br />
Webots. Po spustení sa objaví okno (Obr. 1):<br />
Obr. 1: Uvítacie okno Webotsu po jeho spustení<br />
Na tomto okne užívateľ by mal kliknúť na tlačido Robotstadium Contest.<br />
Takýmto spôsobom sa užívateľ ocitne v simulačnom prostredí, ako je napríklad na<br />
nasledujúcom obrázku (Obr. 2):<br />
Príloha E: Používateľská príručka 8
KKUI FEI<br />
Obr. 2: Simulačné prostredie Webots<br />
Keďže Webots načíta nejaký default svet, klikneme na tlačidlo File na hornej<br />
lište Webotsu vľavo, ďalej na Open World a vyberieme „náš svet“, ktorý sa volá<br />
danceworld.wbt. Po úspešnom načítaní nami vytvoreného, tanečného sveta, uvidíme<br />
(Obr. 3):<br />
Obr. 3: Otvorenie nášho sveta<br />
Príloha E: Používateľská príručka 9
KKUI FEI<br />
5 Popis pracovných súborov<br />
Pracovné súbory majú formát CSV (Comma Separated Value), ktorý predstavuje<br />
štandardizovaný a verejne známy formát. Formát CSV dokáže bez problémov prečítať<br />
väčšina tabuľkových a textových programov. Je často používaný pre výmenu dát medzi<br />
rôznorodými aplikáciami.<br />
V jazyku Python je načítanie súboru:<br />
nazov='C:\Program<br />
Files\Webots\projects\contests\\nao_robocup\controllers\\nao_<br />
soccer_player_blue\\all_gene.csv'<br />
a=open(nazov)<br />
k=a.read()<br />
a.close()<br />
Allgene.csv: súbor, kde sa ukladajú informácie o fenotype, ktoré načítajú a<br />
použijú v ďalšej evolúcii.<br />
Každý robot má vlastný súbor s informáciou o jeho fenotype, aby sa zabezpečilo, že<br />
každý z nich pracuje len s jeho fenotypom. Prvý robot pracuje s prvým fenotypom.<br />
V jazyku Python je zápis riešený zdrojovým kódom:<br />
if krok1 == 1:<br />
myfile='C:\Program<br />
Files\Webots\projects\contests\\nao_robocup\controllers\\nao_<br />
soccer_player_blue\\gene1.csv'<br />
file = open(myfile,"w")<br />
Simulačné prostredie načíta spomínané súbory s uloženým fenotypom pre každého<br />
robota osobitne. V jazyku C++ je to:<br />
ifstream inFile;<br />
if (robot_name == "Orange Nao")<br />
{ inFile.open("gene1.csv"); }<br />
Príloha E: Používateľská príručka 10
KKUI FEI<br />
6 Obmedzenia programu<br />
Priame obmedzenia programu nie sú známe. Program má nepriame obmedzenia na<br />
grafiku a pamäť súvisiace s použitím simulátora.<br />
Odporúča sa grafická karta NVIDIA alebo ATI s minimálne 128 MB RAM.<br />
Pamäť počítača by mala byť aspoň 512 MB RAM s 300 MB diskového priestoru<br />
a procesor 1 GHz.<br />
Príloha E: Používateľská príručka 11
KKUI FEI<br />
7 Chybové hlásenia<br />
V programe sa môžu vyskytnúť tieto chybové hlásenia:<br />
- ImportError: No module named tkinter<br />
Ak sa objaví hlásenie, že neexistuje modul s názvom TKinter, je potrebné nastaviť<br />
konfiguráciu Pythonu užívateľa tak, aby zahrnula tento modul. Riešenie problému je<br />
naištalovať jazyk Tcl/Tk ako je uvedené v tejto príručke v kapitole 3.2.<br />
- IOError: [Errno 13] Permission denied: 'C:\\Program<br />
Files\\Webots\\projects\\contests\\nao_robocup\\controllers\\nao_soccer_player<br />
_blue\\all_gene.csv'<br />
Táto chyba je bežná najmä v operačnom systéme Linux a Windows Vista.<br />
Nesúvisí s navrhovaným systémom, ale je uvedená, pretože je to bežné chybové<br />
hlásenie, ktoré by ale neskúseného užívateľa mohla zmiasť. Chybové hlásenie<br />
Permission denied súvisí s nastavením práv na konkrétnom používanom systéme<br />
počítača. V operačnom systéme Windows Vista stačí program, resp. vývojové<br />
prostredie spustiť ako administrátor. V Linuxe sa práva nastavujú príkazom:<br />
$ chmod [options] mode[,mode] file1 [file2 ...].<br />
- unable to open file for reading<br />
Chybové hlásenie unable to open file for reading sa vyskytuje priamo<br />
v implementácii v simulácii, ktorá je naprogramovaná v jazyku C++. Znamená, že sa<br />
nepodarilo načítať súbory obsahujúce informáciu s fenotypom. Odporúča sa<br />
skontrolovať cestu, kde sú súbory uložené.<br />
Príloha E: Používateľská príručka 12
KKUI FEI<br />
8 Príklad použitia<br />
1) Spustite program spôsobom uvedeným v podkapitole. 4.1<br />
2) Odpozorujeme nultú generáciu tanca robotov.<br />
3) Na základe našich preferencií ohodnotíme každého robota.<br />
4) Stlačíme tlačidlo evolution.<br />
5) Na paneli Webotsu (Obr. 5) klikneme na Revert simulation<br />
6) Kroky 4) – 5) opakujeme, pokiaľ nedostaneme želaný výsledok.<br />
7) Počas priebehu simulácie môžeme kedykoľvek pozastaviť jej priebeh.<br />
8) V prípade, že výstupný tanec splnil naše požiadavky, môžeme si súbory<br />
obsahujúce informáciu s jeho fenotypom uložiť.<br />
Obr. 4: Jednotlivé tance robotov ohodnotíme na tabuľke známkami od 1 do 5<br />
Obr. 5: Panel systému Webots,kde sa spúšta simulácia<br />
Príloha E: Používateľská príručka 13
KKUI FEI<br />
9. Zhodnotenie riešenia<br />
Tento program predstavuje implementáciu navrhnutého systému pre interaktívnu<br />
evolúciu tanečnej choreografie robotov Nao.<br />
Riešenie bolo vhodné na realizáciu potrebných experimentov, ale na ďalšie<br />
experimenty je nevyhnutné pracovať na reálnych robotoch.<br />
Tým, ktorí budú v tomto projekte pokračovať, odporúčam preštudovať systémy<br />
robotického tanca, z ktorých som vychádzala a ktoré sú uvedené v hlavnej časti mojej<br />
bakalárskej práce.<br />
Príloha E: Používateľská príručka 14