26
Teade Punter for RIF Team Robocup MSL International Workshop Eindhoven, 22-24 November 2019 Soccer robots by software engineers

Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

Teade Punterfor

RIF Team

Robocup MSL International WorkshopEindhoven, 22-24 November 2019

Soccer robots by software engineers

Page 2: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

RIF Robocup team

2018nj

Page 3: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

RIF Robocup team

2019vj

Page 4: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

RIF team

• Applied research on autonomous mobile

robotics

• Students and lecturers/researchers working

together

• Student team

• Open challenge-based learning

• Software Engineering principles

Page 5: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

RIF Hardware platforms

RIF RAFTurtle5KACE, VEDS, TU design

RIF Software

VDL

Page 6: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

RIF robot• Electric Skateboard technology

Electronic Speed Controllers

Brushless DC motors

ESP32 Microcontroller

Page 7: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

RIF robot

Camera –5MP 160 Fish eye

PC -Jetson TX2

Page 8: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

Robot architecture

Page 9: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

Robot architecture

ActionsPerception

Sensors Actuators

Worldmodel

“Think the way you act”

“Think before you act”

Page 10: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

AI for Robotics

• Perception AI

– Detect objects such as ball, obstacles, humans

– Localisation using camera images of the soccer field

– Human pose estimation & recognition of intentions

• Action AI

– Navigation

– Action selection

Page 11: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

AI is non-deterministic

• Sensors are noisy

• Perception is uncertain

• Best possible is predict, estimate

– Build belief – probability

• Learning with AI

– Minimize loss (errors)

– Maximize reward (utility)

Page 12: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

Perception AI

ActionsPerception

Sensors Actuators

Worldmodel

“Think the way you act”

“Think before you act”

Page 13: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

Perception AI• OpenPose (CMU) - 17 keypoints

Page 14: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

Perception AI

AGV with interaction module

Page 15: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

Localisation

robot_localisation

odometry (wheel encoders)

orientation (imu)

“Kalman filter”image (camera) Supervised

learning

pose

• Convolutional Neural Network + Sensor Fusion

Page 16: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

Action AI

ActionsPerception

Sensors Actuators

Worldmodel

“Think the way you act”

“Think before you act”

Page 17: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

Action Selection

MoveInterceptDribble,Pass,Shoot…

STATE ACTION

POLICY

WorldModel

Skills• Model based

Page 18: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

Robot skills

Page 19: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

Navigation

• Artificial Potential Field

Attraction+

Repulsion

Page 20: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

State machine

Page 21: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

Behavior tree

Page 22: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

Action selection models

• Hierarchical State Machine

– Verifiable

• Behavior Tree

– Maintainable

• Neural Network

– Trainable

HSM BT NN

Maintainable - + --

Explainable + + -

Verifiable + - -

Trainable - - ++

(Andova, Dortmans, Punter, 2019)

Page 23: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

Next steps

Ball detection and basic skills

Localisation and navigation

Engineering own robot behavior

Reverse engineering opponent robot behavior

Degree of difficulty

Page 24: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

Continuous Integration

• GitLab repository• CI/CD Pipeline

Page 25: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

Simulator

2D – Stage3D - Gazebo

Page 26: Soccer robots by software engineers › wp-content › uploads › 2019 › 11 › RIF-MSL_WS_2019.pdf• Student team • Open challenge-based learning • Software Engineering principles

Thank you

• Questions or remarks?