live robot programming - esug.orgesug.org/data/esug2015/1 monday/1100-1230 live robotic...
TRANSCRIPT
![Page 1: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/1.jpg)
Live Robot Programming
Johan Fabry,Miguel Campusano, Pablo Estefó
Pleiad & RyCh labsComputer Science Department (DCC)
Universidad de Chile
![Page 2: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/2.jpg)
Two small stories
![Page 3: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/3.jpg)
![Page 4: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/4.jpg)
![Page 5: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/5.jpg)
Software is fundamental
5
![Page 6: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/6.jpg)
![Page 7: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/7.jpg)
Good Softwareis fundamental
7
![Page 8: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/8.jpg)
Software Engineering
8
Time=
Money
![Page 9: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/9.jpg)
Software Engineering
9
Time=
Research
![Page 10: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/10.jpg)
Software Engineering
10
Time =
Brainpower
![Page 11: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/11.jpg)
Software Engineering
11
Brainpower =Problem complexity + Technology complexity
![Page 12: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/12.jpg)
What do we want?
![Page 13: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/13.jpg)
Waste less time in incidental complexity
13
Use time on fundamental complexity
![Page 14: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/14.jpg)
“But why is the robot executing this behavior now?”
Example
14
“What would happen if I change epsilon to 5 ?”
(What is the internal state of the algorithm)
(What are the correct parameters for the algorithm)
![Page 15: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/15.jpg)
Spend brainpower on the complexity of the task
15
Have an immediate connection to the
behavior
![Page 16: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/16.jpg)
Live Programming
![Page 17: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/17.jpg)
Bret Victor - Inventing on Principle (CUSEC 2012)
![Page 18: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/18.jpg)
Immediate Connection
18
![Page 19: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/19.jpg)
Bret Victor - Inventing on Principle (CUSEC 2012)
![Page 20: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/20.jpg)
Immediate Connection
20
![Page 21: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/21.jpg)
Live Robot Programming
![Page 22: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/22.jpg)
Fundamentals
• Live Programming Language
• For the behavior layer of robots
• Nested State Machines
22
![Page 23: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/23.jpg)
Machines, States
23
![Page 24: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/24.jpg)
Immediate Connection
24
![Page 25: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/25.jpg)
Variables, Actions
25
Demo time!
![Page 26: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/26.jpg)
Immediate Connection
26
![Page 28: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/28.jpg)
28
Conclusions
• Live Robot Programming: Yes you can!
• State machines are resilient
• Experience: radical speedup
![Page 29: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/29.jpg)
Immediate Connection
29
![Page 30: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/30.jpg)
Future Work
• Refactorings to avoid restarts
• Test expressibility of the language
• Modularity and reuse of behaviors
![Page 32: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/32.jpg)
Active State
32
![Page 33: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/33.jpg)
Active State
33
![Page 34: Live Robot Programming - esug.orgesug.org/data/ESUG2015/1 monday/1100-1230 Live robotic programmin… · Live Robot Programming Johan Fabry, Miguel Campusano, Pablo Estefó Pleiad](https://reader034.vdocuments.us/reader034/viewer/2022051815/60402c51dd38f521c953e722/html5/thumbnails/34.jpg)
Immediate Connection
34