Robotsko učenje senzomotoričnih veščin Aleš Ude Ins%tut Jožef Stefan Odsek za avtoma%ko, biokiberne%ko in robo%ko
Učenje s posnemanjem / programiranje z demonstracijami Izkoris%mo človekovo znanje o izvedbi želene naloge. Za uspešno učenje s posnemanjem mora obstaja% določena podobnost med človekom in robotom. Enostavno ponavljanje pogosto ne zadostuje. - A. Ude, C. G. Atkeson, and M. Riley (2004) Programming full-body movements for humanoid robots by observa%on, Robo%cs and Autonomous Systems, 47:93-108. - A. Ude, C. G. Atkeson, and M. Riley (2000) Planning of joint trajectories for humanoid robots using B- spline wavelets, IEEE Interna%onal Conference on Robo%cs and Automa%on (ICRA), San Francisco, California, pp. 2223-2228.
Namenska gibanja: robni pogoji naloge M. Riley, A. Ude, C. G. Atkeson, and G. Cheng (2006) Coaching: an approach to efficiently and intui%vely create humanoid robot behaviors, 6th IEEE-RAS Interna%onal Conference on Humanoid Robots (Humanoids), Genoa, Italy, pp. 567-573. M. Tamosiunaite, B. Nemec, A. Ude, and F. Wörgöeer (2011) Learning to pour with a robot arm; combining goal and shape learning for dynamic movement primi%ves, Robo%cs and Autonomous Systems, vol. 59, pp. 910-922.
Elementarni gibi Dokazi za obstoj elementarnih gibov (angl. movement primi%ves ) v bioloških organizmih - Eksperimen% na žabah Bolj kompleksni gibi nastanejo kot kombinacija elementarnih gibov - Polja sil se kombinirajo linearno F. A. Mussa-Ivaldi & E. Bizzi (2000) Motor learning through the combina%on of primi%ves. Philosophical Transac%ons of the Royal Society B: Biological Sciences, 355(1404):1755-1769.
Iskalne tabele in sta%s%čno učenje Učenje lahko implemen%ramo s pomočjo iskalnih tabel (angl. look-up tables ), ki jih uredimo glede na možna stanja robota. - Raibert, M. H. (1978) A model for sensorimotor control and learning. Biological Cyberne/cs, 29(1):29 36. Bolj učinkovito učenje motoričnih veščin lahko realiziramo kot posploševanje dobro prilagojenih elementarnih gibov s sta%s%čnimi metodami, s katerimi na podlagi vhodnih podatkov xi (cilj naloge) in pripadajočih izhodnih signalov yi (parametri gibanja robota) izračunamo ustrezno funkcijsko povezavo - S takšnimi funkcijami lahko izračunamo najverjetnejši izhod y pri poljubnem vhodnem signalu x, tudi če ta ni del začetne baze vzorčnih gibov - T. Poggio & E. Bizzi (2004) Generaliza%on in vision and motor control. Nature, 431(7010): 768 774.
Lokalno učenje C. G. Atkeson, J. G. Hale, F. Pollick, M. Riley, S. Kotosaka, S. Schaal, T. Shibata, G. Teva%a, A. Ude, S. Vijayakumar, and M. Kawato (2000) Using humanoid robots to study human behavior, IEEE Intelligent Systems, 15(4):46-56. Atkeson, C. G., Moore, A. W., & Schaal, S. (1997). Locally Weighted Learning For Control. Ar%ficial Intelligence Review, 11(1/5): 75 113.
Glavna spoznanja Posamična gibanja lahko na enostaven način pridobimo z opazovanjem človekove izvedbe naloge - Programiranje iz demonstracij / kineste%čno vodenje Motorično učenje na podlagi baze vzorčnih elementarnih gibov - Poleg vzorčnih gibanj je potrebno shrani% tudi parametre, ki opisujejo robne parametre oziroma cilj naloge Posploševanje s pomočjo sta%s%čnih metod - Lokalne metode imajo številne prednosti
Zapis elementarnih gibov od točke do točke Dinamični generatorji gibov (angl.: dynamic movement primi%ves): zapis parametrov robota y za gibanja od točke do točke z nelinearnim sistemom diferencialnih enačb - A. Ijspeert, S. Schaal et al., Humanoids 2001; Neural Computa%on 2013 transformacijski sistem: kanonični sistem: τ!z = α ( z β ( z g y) z) + τ!y = z, ψ i x τ!x = α x x. i ψ i i w i ψ i ( x) ( x) x( g y 0 ), ( ) 2 ( ) = exp x c i Predlagan sistem diferencialnih enačb ni eksplicitno odvisen od časa. σ i 2
Grafični prikaz dinamičnih generatorjev gibov sprememba cilja naloge Transformacijski sistem 1 pozicija hitrost pospešek Kanonični sistem (faza) f1 f2 Transformacijski sistem 2 pozicija hitrost pospešek fn ustavljanje faze Transformacijski sistem n pozicija hitrost pospešek Specifičnih adaptacij za posamezne naloge ne moremo doseči le z modulacijo DMP enačb.
Sta%s%čno posploševanje vzorčnih gibov Baza vzorčnih trajektorij: T A i = {y ij, v ij, a ij, t ij } i j=1, i = 1,, NumEx Primer: seganje do objekta z dveh strani Parametri, s katerimi lahko opišemo robne pogoje naloge (iskalne točke) q i, i = 1,, NumEx Izračun posploševalne funkcije s sta%s%čnimi metodami kot sta lokalno utežena regresija in Gaussova regresija: ( ) :q w T g T τ F A 1,q 1,,A NumEx,q NumEx T
Seganje, zasledovanje in prijemanje A. Ude, A. Gams, T. Asfour, and J. Morimoto (2010) Task-specific generaliza%on of discrete and periodic dynamic movement primi%ves, IEEE Transac%ons on Robo%cs, 26(5):800-815.
Primer: Posploševanje meta Vhodni podatki za izračun meta: položaj koša Izhod: dinamični generator meta
Evalvacija naučenih metov 12 joint velocities [rad/s] joint velocities [rad/s] 10 8 6 4 2 0 2 4 6 0 0.1 0.2 0.3 0.4 0.5 12 10 8 6 4 2 0 2 4 t [s] 6 0 0.1 0.2 0.3 0.4 0.5 t [s] y [m] joint velocities [rad/s] 2 1.5 1 0.5 0 12 10 8 6 4 2 0 2 4 1 2 3 4 5 x [m] 6 0 0.1 0.2 0.3 0.4 0.5 t [s] y [cm] 100 80 60 40 20 0 150 200 250 x [cm] 18 16 14 12 10 8 6 4 2 error [cm]
Prehajanje med elementarnimi gibi D. Forte, A. Gams, J. Morimoto, and A. Ude (2012) On-line mo%on synthesis and adapta%on using a trajectory database, Robo%cs and Autonomous Systems, 60:1372-1339.
Kinema%čno vodenje & kontak% Ob kontak%h: okolica določa pozicijo, ki jo hkra% skuša določi% tudi robotski krmilnik Pozicijsko vodenje z visokimi ojačanji - Visoka natančnost sledenja - Visoke kontaktne sile - Visoka natančnost sledenja - Nizke kontaktne sile Za implementacijo potrebujemo natančen dinamični model robota! Pozicijsko vodenje z nizkimi ojačanji - Nizka natančnost sledenja - Nizke kontaktne sile
Učenje dinamičnih aspektov gibanj pri ljudeh Krakauer et al. (1999). Independent learning of internal models for kinema%c and dynamic control of reaching. Nature Neuroscience, 2(11):1026 1031: hand kinema/cs are learned from errors in extent and direc/on in an extrinsic coordinate system, whereas dynamics are learned from propriocep/ve errors in an intrinsic coordinate system
Podajni generatorji gibov 1. Trajektorija q d (t) zajeta s kineste%čnim vodenjem - DMP. T. Petrič, A. Gams, L. Žlajpah, and A. Ude (2014) Online Learning of Task- Specific Dynamics for Periodic Tasks, IEEE/RSJ Interna%onal Conference on Intelligent Robots and Systems (IROS), Chicago, IL, USA, pp. 1790-1795. 2. Iterativno učenje odprtozančnih navorov τf(x) - TP. Pri tem shranimo navore, ki nastanejo med izvedbo kinematične trajektorije pri visokih ojačanjih 3. Ko poznamo dinamični generator gibov in pripadajoče navore lahko med izvedbo giba robot ostane podajen. DMP! " Feedback + controller # Inverse Dynamics + Robot! TP # $
Posploševanje podajnih generatorjev gibov Kot pri kinema%čnih gibih lahko tudi pri podajnih generatorjih gibov izvedemo gibe pri različnih robnih pogojih - Primer: seganje do različnih točk v prostoru z različno težkimi utežmi v roki Meritve: A i = {y ij, v ij, a ij, t ij }, C i = {ρ ij, t ij }, j = 1,, Ti, i = 1,, NumEx, Parametri, s katerimi opišemo robne pogoje naloge: q i, 1,, NumEx. Sta%s%čno učenje: F k ( ) :q w T g T τ A 1,q 1,,A NumEx,q NumEx T F d ( C,q,,C,q ) :q v 1 1 NumEx NumEx ρ( x) = i i v i ψ i ψ i ( x) ( x), ψ i x ( ) 2 ( ) = exp x c i σ i 2
Posploševanje periodičnih podajnih gibov M. Deniša, A. Gams, A. Ude, and T. Petrič (2016) Learning compliant movement primi%ves through demonstra%on and sta%s%cal generaliza%on. IEEE/ASME Transac%ons on Mechatronics, 21(5), 2581-2594.
Smučanje po grbinah? B. Nemec and L. Lahajnar (2009) Control and naviga%on of the skiing robot, IEEE/RSJ Interna%onal Conference on Intelligent Robots and Systems (IROS), St. Louis, Missouri, pp. 2321-2326. NTF Award for Entertainment Robots and Systems.
Avtonomno učenje baze elementarnih gibov KINESTETIČNO VODENJE PRETVORBA V DMP / CMP STATISTIČNO POSPLOŠEVANJE DA NOVA SITUACIJA (ISKALNA TOČKA) APROKSIMIRAN ELEMENTARNI GIB USPEŠNA IZVEDBA? SPODBUJEVALNO UČENJE NE USPEŠNA IZVEDBA? DA USTREZNA BAZA NE D. Forte, B. Nemec, and A. Ude (2015) Explora%on in structured space of robot movements for autonomous augmenta%on of ac%on knowledge, The 17th Interna%onal Conference on Advanced Robo%cs (ICAR), pp. 252-258.
Generacija baze podajnih generatorjev gibov Itera%vnemu iskanju se lahko izognemo oziroma ga bistveno pospešimo: V primeru da sta%s%čno izračunani podajni generator gibov zadovolji zadani kriterij, ga lahko takoj dodamo v bazo. V nasprotnem primeru se naučimo nov podajni generator gibov z rekurzivno regresijo, pri čemer uporabimo sta%s%čno izračunani gib kot začetno aproksimacijo, s čimer bistveno zmanjšamo potrebno število izvedb na robotu. T. Petrič, L. Colasanto, A. Gams, A. J. Ijspeert and A. Ude (2017) Accelerated Sensorimotor Learning of Compliant Movement Primi%ves (submieed, early version published at Humanoids 2015).
Pospešeno učenje v nizkodimenzionalnem prostoru
Pospešeno učenje v nizkodimenzionalnem prostoru B. Nemec, D. Forte, R. Vuga, M. Tamosiunaite, F. Wörgöeer, and A. Ude (2012) Applying sta%s%cal generaliza%on to determine search direc%on for reinforcement learning of movement primi%ves. IEEE-RAS Int. Conf. Humanoid Robots, Osaka, Japan, pp. 65-70. B. Nemec, R. Vuga, & A. Ude (2013) Efficient sensorimotor learning from mul%ple demonstra%ons. Advanced Robo%cs, 27(13):1023 1031.
Dinamični generatorji gibov in sile ter navori v kartezičnem prostoru Podajni generatorji gibov: odprtozančni navori se spreminjajo glede na konfiguracijo robota - Moramo se jih na novo nauči% za vsako izvedbo v drugem delu delovnega prostora Gibe podane v kartezičnih koordinatah lahko prenesemo v druge dele delovnega prostora Pri tem shranimo tudi sile in navore v koordinatnem sistemu vrha robota, ki nastanejo med izvedbo naučenega giba - Te sile in navore lahko uporabimo kot referenco za kasnejšo adaptacijo Shranimo tako trajektorije kot tudi sile in navore v kartezičnih koordinatah.
Avtonomna adaptacija motoričnih veščin Pridobi začetni gib v kartezičnih koordinatah Zajemi sile in navore v koordinatnem sistemu vrha robota Adaptacija hitros% izvedbe naloge Zajemi sile in navore v koordinatnem sistemu vrha robota Transformacija trajektorij s pomočjo robotskega vida Adaptacija trajektorij glede na želene sile in navore
Adaptacija naučene hitros% z itera%vno učečimi se regulatorji in spodbujevalnim učenjem R. Vuga, B. Nemec, and A. Ude (2016) Speed adapta%on for self-improvement of skills learned from user demonstra%ons, Robo%ca, 34(12): 2806-2822.
Integracija s tridimenzionalnim vidom Naučene dinamične generatorje gibov v kartezičnem prostoru lahko transformiramo glede na položaj objekta, ki ga pridobimo s tridimenzionalnim vidom. - Razmeroma nizka natančnost za naloge sestavljanja Potrebna je adaptacija kinema%čnega gibanja glede na referenčne sile in navore.
Adaptacija gibanja glede na nastale sile in navore v kartezičnem prostoru B. Nemec, F. Abu-Dakka, J. A. Jørgensen, T. R. Savarimuthu, B. Ridge, H. G. Petersen, J. Jouffroy, N. Krüger, and A. Ude (2013) Transfer of Assembly Opera%ons to New Workpiece Poses by Adapta%on to the Desired Force Profile, 16th Interna%onal Conference on Advanced Robo%cs (ICAR), Montevideo, Uruguay. F. J. Abu-Dakka, B. Nemec, J. A. Jørgensen, T. R. Savarimuthu, N. Krüger, A. Ude (2015) Adapta%on of Manipula%on Skills in Physical Contact with the Environment to Reference Force Profiles, Autonomous Robots, vol. 39, no. 2, pp. 199-217.
Posploševanje kartezičnih predstavitev Trajektorije so podane v kartezičnem prostoru: A i = {p ij, v ij, a ij, t ij }, B i = {k ij, ω ij, α ij, t ij }, j = 1,, Ti, i = 1,, NumEx. Kartezične sile in navori: C i = {F ij, M ij, t ij }, j = 1,, Ti, i = 1,, NumEx. Iskalne točke: q i, 1,, NumEx. Sta%s%čno učenje: - pozicijske trajektorije: F p - orientacijske trajektorije: F o - sile in navori: ( ) :q w p T A 1,q 1,,A NumEx,q NumEx ( ) :q w T o B 1,q 1,,B NumEx,q NumEx g p T g o T τ τ T T G( C,q,,C,q ) :q v 1 1 NumEx NumEx
Posplošeni gibi v s%ku z okolico A. Kramberger, A. Gams, B. Nemec, C. Schou, D. Chrysostomou, O. Madsen, and A. Ude (2017) Generaliza%on of Orienta%onal Mo%on and Reference Force-Torque Profiles for Intelligent Robo%c Assembly, Robo%cs and Autonomous Systems (submieed).
Sinhronizacija gibov Posploševanje gibanja neodvisnih robotskih mehanizmov, na primer robotskih rok: - Dinamični generatorji gibov za kinema%čno vodenje (Ijspeert et al., 2013; Ude et al., 2010) - Podajni generatorji gibov: dinamični generatorji gibov in navori v notranjih koordinatah (Petrič et al., 2014; Deniša et al., 2016) - Dinamični generatorji gibov v kartezičnem prostoru + zunanje sile in navori v koordinatnem sistemu robotske roke (Abu-Dakka et al., 2015) Dvoročna gibanja in sodelovanje s človekom: potrebna je sinhronizacija posameznih, sprva drug od drugega neodvisnih generatorjev gibov - Vpeljava povezovalnih parametrov v diferencialne enačbe (angl. coupling term"), ki opisujejo posamične dinamične generatorje gibov (Gams et al., 2014)
Sinhronizacija elementarnih gibov Adaptacija posameznih robotskih gibov s pomočjo povezovalnih prametrov, ki jih prilagajamo glede na želene sile in navore Itera%vno učeči se regulatorji za učenje povezovalnih parametrov Zagotovljena stabilnost izvedbe g 1 F d g 1 Memory e - ILC c L Q Memory C - F c DMP 1 DMP 2 y 1 Arm 1 p 1 y 2 p 2 Arm 2 - k F environment A. Gams, B. Nemec, A. J. Ijspeert, and A. Ude (2014) Coupling Movement Primitives: Interaction With the Environment and Bimanual Tasks, IEEE Transactions on Robotics, vol. 30, no. 4, pp. 816-830
Povzetek Kineste%čno vodenje & adaptacija, spodbujevalno učenje za inicializacijo učnega procesa Uporaba dinamičnih sistemov za zapis elementarnih robotskih gibanj Sta%s%čne metode: lokalno utežena regresija, Gaussova regresija za posploševanje elementarnih gibov - ni se potrebno v naprej opredeli% za določene modele oziroma strukturo prostora gibanj - zlahka dodajamo nove podatke - ni nevarnos% za nastanek lokalnih minimumov Avtonomno povečevanje baze vzorčnih gibanj - pospešena lokalna adaptacija ko dovolj dobro spoznamo strukturo op%malne mnogoteros% v prostoru vseh robotskih trajektorij
Sodelavci (IJS) Bojan Nemec Tadej Petrič Miha Deniša Fares Abu-Dakka Andrej Gams Denis Forte Aljaž Kramberger Nejc Likar Barry Ridge Rok Vuga Robert Bevec Timotej Gašpar