Playing robotic soccer
Download
1 / 32

Playing Robotic Soccer - PowerPoint PPT Presentation


  • 218 Views
  • Updated On :

Playing Robotic Soccer. Ofer Elrom & Dvir Afek. Why soccer game ?. Advancing through Competition . Wide range of Technologies. Many AI challenges. A well known game. Distribution, Cooperation, Sensing. CS Freiburg Team - Germany. Scope. Robot hardware. Architecture.

Related searches for Playing Robotic Soccer

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Playing Robotic Soccer' - LionelDale


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Playing robotic soccer l.jpg
Playing Robotic Soccer

Ofer Elrom

& Dvir Afek


Why soccer game l.jpg
Why soccer game?

  • Advancing through Competition .

  • Wide range of Technologies.

  • Many AI challenges.

  • A well known game.

  • Distribution, Cooperation, Sensing.



Scope l.jpg
Scope

  • Robot hardware.

  • Architecture.

  • Self Localization Algorithm :

    - Scan Matching

  • The Global Picture.

  • Decision making.

  • RoboCup 2000 Video.

  • Future …


Robot hardware l.jpg
Robot Hardware

  • Pioneer 1 robot.

  • Video camera + vision system.

  • Notebook – Pentiumâ running Linux.

  • WaveLan Radio Ethernet.

  • Laser Range Finders.

  • Kicking Mechanism.


Architecture 1 l.jpg
Architecture [1]

  • Autonomous robotic soccer players.

  • Local world model.

    • Self Localization.

    • Player Recognition.

    • Ball Recognition.


What is self localization l.jpg
What is Self Localization ?

  • The process of updating the Pose of a robot in an environment based on sensors readings.

  • 3 Major Categories :

    • Behaviour Based Approaches (blind)

    • Land Marks (vision).

    • Dense Sensor Matching (laser, sonar).


Location realizing l.jpg
Location Realizing

  • Problem: Given a robot in a known polygonal environment, how does the robot realize its location?

Who am I?

Where am I?


Slide10 l.jpg

  • Solution - basic algorithm:find your position using odometry (x,y,ang);while (1) on every forward move d and rotation t: x’ = x + d* cos(ang); y’ = y + d * sin(ang); ang’ = ang + t; find your position using laser scanning (x’’,y’’,ang’’); use Kalman Filter to calculate new position - (x,y,ang) as a combination of (x’,y’,ang’) and (x’’,y’’,ang’’)


Slide11 l.jpg

(x,y,ang)

y

x’ = x’ + d * cos(ang)y’ = y’ + d * sin(ang)ang’ = ang + t;

ang

d

y’

ang’

t

x

x’


Slide12 l.jpg

  • Seems quite simple.But...

  • How do you find your position using laser scanning?

  • solution: Line Matching algorithm.


Line matching algorithm l.jpg
Line Matching algorithm

The Robot has an “a-priori” model (sketch) of the environment.

1. Scan a group S of lines from your environment.

2. Find all possible matches between scanned lines and lines on the a-priori model. Matches dictate location point.

3. Choose the most plausible location point.


Slide14 l.jpg

plausible point

A-Priori model of environment

first match:

matching..

second match:

Real environment

scanning...


Slide15 l.jpg

  • How do we find all possible matches between a group of scanned lines S and a group of model lines M?

  • we use back tracking recursive:S : group of scanned linesM : group of model linesP : a group of pairs, in which we matched |p| lines from S with |p| lines from M.

  • What we are looking for is a perfect match (discrete math) for group S, or in other words a group p for which, |P| = |S|.


Slide16 l.jpg

The recursive code ( scanned lines S and a group of model lines M?Don’t panic):

LineMatch(M, S, P)

Input: model lines M, scan lines S, pairs P

Output: set of possible location points H

if |P| = |S|

H := P

else

H := {} //Empty group

s := SelectScanLine (S,P)

for all m in M do

if VerifyMatch(M, S, P U {(m,s)} )

H := H U {LineMatch(M, S, P U {(m,s)} )

return H //Now panic!!!


Example l.jpg

m2 scanned lines S and a group of model lines M?

Example:

p={0}

m3

m1

,s2

p={(s2, m1)}

m4

out of the field!!!

p = {(s2,m1), (s1,m2)}

s3

error - killbranch

s1

s2


Slide18 l.jpg

Example: scanned lines S and a group of model lines M?

m2

p={0}

m1

m3

,s2

p={(s2, m3)}

m4

Robot can’t be in two

places at the same time!!!

p={(s2, m3), (s1, m1)}

s3

Error, kill branch

s1

s2


Slide19 l.jpg

Example: scanned lines S and a group of model lines M?

m2

,s2

p={0}

m1

m3

,s1

p={(s1, m3)}

m4

p={(s1, m3), (s2, m2)}

s3

s1

p={(s1, m3), (s2, m2), (m4,s3)}

s2

Succeeded in finding a location

point !!! ( |P| = |s| )


Slide20 l.jpg

Players Recognition scanned lines S and a group of model lines M?

After finding its location, the robot can scan other players, whose location is derived from the robot’s location.

Each Robot sends the information to the server which can then realize which of the players is foe and which is friend.


Ball recognition l.jpg
Ball Recognition scanned lines S and a group of model lines M?

  • Color Based Vision System.


Architecture 122 l.jpg
Architecture [1] scanned lines S and a group of model lines M?

  • Autonomous robotic soccer players.

  • Local world model.

    • Self Localization.

    • Player Recognition.

    • Ball Recognition.


Architecture 2 l.jpg
Architecture [2] scanned lines S and a group of model lines M?

  • Global world model.

    • Communication.

      • Information to server.

      • “Clear out!” to other players.

    • Multi Agent Cooperation (global).

    • Action Decision (individual).

    • Path Planning.


Creating world module l.jpg
Creating World Module scanned lines S and a group of model lines M?


Global world model l.jpg
Global World Model scanned lines S and a group of model lines M?

  • Foe / Friend.

  • Ball Position.


Player s actions l.jpg
Player’s Actions scanned lines S and a group of model lines M?

  • Decision Tree - Parsing on a decision tree according to the global world model will lead to one of the following actions :

    • GoTo Position / Ball.

    • Observe Ball.

    • Search For Ball.

    • Move Ball / Kick Ball.

    • Clear Out.

  • Goal Keeper.


Ex a defense player taking action as the ball roles in l.jpg
Ex. – A defense player, taking action as the ball roles in :

defense

offense

goalie

Ball approaches

Ball roles away

Observe Ball

In 2nd sector

In my sector

(static)

GoTo Home Position

Block ball

(path planning)

(path planning)


Path planning l.jpg
Path Planning :

  • Motion Planning with Moving Obstacles..

  • Unpredictable Opponents.

  • Computationally Demanding.

Approximation


Slide30 l.jpg

Player’s Role :

PUT THE BALL IN THE GOAL…


Slide31 l.jpg

Player’s Role :

Lets watch some game Highlights..


What s next l.jpg
What’s Next ? … :

  • Learning Techniques.

  • Player Communication.

  • Dynamic Role Changes.

  • Humanoid Robot (2050).

  • ..

  • ..


ad