Parking of robots in Remotely-operated laboratory

From RoboWiki
Revision as of 01:31, 14 June 2013 by Robot (talk | contribs) (pridany obrazok)
Jump to: navigation, search

Parkovanie - vyhýbanie sa prekážkam pomocou schemas

V Jave som začal písať program na vytváranie schémy. Keď to virtuálne otestujem, prepíšem to do C++.

Rozpracovaný projekt na stiahnutie: http://www.st.fmph.uniba.sk/~galan2/ai/parkovanie.zip

- Je možné mať rôzne rozlíšenie pracovnej matice od vonkajšieho prostredia (fotografie).

- Každé políčko má vektor (uhol a silu), destinácia bude asi priťahovať každé políčko rovnakou silou, antigravitácia od priekážkok bude asi závisieť od vzdialenosti.

Prikladám test výpis uhlov časti matice, DESTINA je destinacia (to bude miesto, ktoré bude pred parkovacím boxom), OBSTAC1 je prekážka:

-135,00|-146,31|-161,57|-180,00|+161,57|+146,31|+135,00|+126,87|+120,96|+116,57|
-123,69|-135,00|-153,43|-180,00|+153,43|+135,00|+123,69|+116,57|+111,80|+108,43|
-108,43|-116,57|-135,00|-180,00|+135,00|+116,57|+108,43|+104,04|+101,31|+099,46|
-090,00|-090,00|-090,00|DESTINA|+000,00|+090,00|+090,00|+090,00|+090,00|+090,00|
-071,57|-063,43|-045,00|-000,00|+045,00|+063,43|+071,57|+075,96|+078,69|+080,54|
-056,31|-045,00|-026,57|-000,00|+026,57|+045,00|+056,31|+063,43|+068,20|+071,57|
-045,00|-033,69|-018,43|-000,00|+018,43|+033,69|+045,00|+053,13|+059,04|+063,43|

-063,43|-059,04|-053,13|-045,00|-033,69|-018,43|+000,00|+018,43|+033,69|+045,00|
-071,57|-068,20|-063,43|-056,31|-045,00|-026,57|+000,00|+026,57|+045,00|+056,31|
-080,54|-078,69|-075,96|-071,57|-063,43|-045,00|+000,00|+045,00|+063,43|+071,57|
-090,00|-090,00|-090,00|-090,00|-090,00|-090,00|OBSTAC1|+090,00|+090,00|+090,00|
-099,46|-101,31|-104,04|-108,43|-116,57|-135,00|+180,00|+135,00|+116,57|+108,43|
-108,43|-111,80|-116,57|-123,69|-135,00|-153,43|+180,00|+153,43|+135,00|+123,69|
-116,57|-120,96|-126,87|-135,00|-146,31|-161,57|+180,00|+161,57|+146,31|+135,00|

Červená bodka je destinácia, modrá prekážka. Je možné mať veľa týchto bodov.

Bude potrebné špecifikovať polomer prekážky (nejaký offset zaciatku posobenia gravitacie), keďže bod je iba bod. Alebo prekážka bude pokrytá viacerými bodmi (môže byť náročné na výpočet). Viz2.png

Rospoznávanie pozície robotov - Je naprogramované (rozpoznávanie kruhov)

Rozpoznávanie orientácie šípky

Princíp: ANN, pri učení zrejme 360 dvojíc vstup(obr)-výstup(uhol v °) - (kolko podobnych obr treba na dobre natrenovanie kazdeho stupna?)

- asi bude potrebné odfiltrovať zbytočné dáta (farba, neostré hrany)

Knižnica FANN s príkladom XOR: http://leenissen.dk/fann/wp/help/getting-started/

Príklad pattern recognition: http://www.doc.ic.ac.uk/~nd/surprise_96/journal/vol4/cs11/report.html#Pattern%20Recognition%20-%20an%20example

Predtým, ako sa pustím do programovania v C++, Vyskúšal som Java Neural Network Framework, ktorý je veľmi jednoduchý na používanie: http://neuroph.sourceforge.net/image_recognition.html

Testovanie 90° šípky pro trénovaní s viac-menenej defaultnými parametrami vyšlo takto:

Stupne : output

180 : 0,0062

135 : 0,0089

0 : 0,0341

45 : 0,0332

225 : 0,01

90 : 0,8841

315 : 0,017

270 : 0,068


JavaNeuralNetworkimg1.png

JavaNeuralNetworkimg2.png