RoboSina from Scratch - PowerPoint PPT Presentation

1 / 59
About This Presentation
Title:

RoboSina from Scratch

Description:

RoboSina from Scratch. Submitted as partial Fulfillment for the ... Misleading obtrusive defender. Holding ball if it is need . One , Two. Dribble. Dribble ... – PowerPoint PPT presentation

Number of Views:76
Avg rating:3.0/5.0
Slides: 60
Provided by: nimaMa
Category:

less

Transcript and Presenter's Notes

Title: RoboSina from Scratch


1
RoboSina from Scratch
By Mostafa Rafaie-Jokandan Nima Kaviani
  • Submitted as partial Fulfillment for the
    Requirements of the degree of
  • Bachelor of Science
  • In
  • Software Engineering

2
  • Introduction
  • Simulation System and Soccer Server
  • Learning Algorithms used in RoboSina
  • Prominent Aspects of RoboSina
  • RoboSina Agent and Learning
  • Suggestions and Conclusion

3
Introduction
  • Why RoboCup?
  • An approach to Distributed Artificial
    Intelligence
  • DAI vs CAI
  • Where are we moving toward?
  • Who were we in RoboSina?

4
Simulation System Soccer Server
  • What is a Simulation System?
  • Why Simulation?
  • Soccer Server

5
Soccer Server
  • Match Rules
  • Controlled by Soccer Server
  • Controlled by Human
  • Properties of the Simulated Pitch
  • A 105.0 68.0 field covered by flags
  • Goal widths are twice a real one

6
Some of predefined parameters for Soccer Server
7
A Simulated Field
8
Models used in Soccer Server
  • Movement Model
  • Visual Model
  • Aural Model

9
Visual Model
  • (see ObjName Distance Direction DistChng DirChng
    BodyDir HeadDir)
  • ObjName (p Teamname UniformNumber goalie)
  • (g lr)
  • (b)
  • (f c)
  • (f lcr tb)
  • (f p lr tcb)
  • (f g lr tb)
  • (f lrtb 0)
  • (f tb lr 1020304050)
  • (f lr tb 102030)
  • (l lrtb)

10
Visual Model
  • Visual Formulas
  • prx pxt - pxo
  • pry pyt - pyo
  • vrx vxt - vxo
  • vry vyt - vyo
  • Direction arctan(pry/prx) - ao
  • erx prx/Distance
  • ery pry/Distance
  • DistChng (vrx erx) (vry ery)
  • DirChng (-(vrx ery) (vry erx))/Distance
    (180/p)
  • BodyDir PlayerBodyDir - gentBodyDir -
    AgentHeadDir
  • HeadDir PlayerHeadDir - AgentBodyDir -
    AgentHeadDir
  • Noise Formulas
  • d Quntize ( exp(quantize(log(d) . quantize
    step )), 0.1)
  • Quantize (V , Q) ceiling(V/Q) Q

11
Visual Model
45
90
12
Aural Model
  • (hear Time Sender Message)

13
Movement Model
14
Movement Noise Model
15
Actions for an Agent
  • Catch
  • Dash Stamina Model
  • Kick
  • Tackle
  • Turn
  • Move
  • Turn-Neck
  • Point to
  • Focus
  • Say
  • Change View
  • Score

16
  • Heterogeneous Players
  • Do you know how a body builder differs a normal
    human?
  • Acting in an environment with heterogeneous
    creatures covers all possible properties
  • Coach
  • Mapping of DAI to CAI with restricted bandwidth
    in communication
  • What was the role of Jose Morinio in a team if we
    didnt have a coach?!!!

17
Learning Algorithms
  • Definition
  • Decision Trees
  • Artificial Neural Networks

18
Learning Algorithms-Keywords
  • Environment
  • Property
  • State
  • Goal
  • Learning Algorithm

19
Learning Algorithms-Keywords
Propertyi
State1
20
Decision Trees
  • Definition
  • ID3 Basis
  • ID3 Formulas
  • ID3 Algorithm
  • What is C4.5

21
Decision Trees - Definition
  • A powerful tool for Inductive Inference
  • Proposing a model for discrete environments
  • Resistance against Noisy Data

22
Playing a Soccer Game in case of having a
weather with conditions D
?
?
Outlook Sunny
D(
, Wind Weak,
)
Humidity High
23
Decision Trees ID3 Basis
  • Occams Razor, mid of 14th century
  • It is vain to do with more what can
  • be done with less entities should
  • not be multiplied beyond necessity

24
Decision Trees ID3 Formulas
25
Decision Trees ID3 Algorithm
26
Decision Trees C4.5
  • A developed software on the basis of ID3
  • Its abilities
  • Avoiding over fitting the data
  • Reduced error pruning
  • Rule post-pruning
  • Handling continuous attributes
  • Handling attribute with different costs
  • Choosing an appropriate selection measure
  • Handling training data with missing attribute
    values
  • Improving computational efficiency

27
Neural Networks
  • Definition
  • A Mathematical Representation
  • BackPropagate Basis
  • BackPropagate Algorithm

28
Neural Networks-Definition
  • A mathematical model of humans neurons
  • Its abilities
  • Association, Clustering, Classification
  • Pattern Recognition
  • Generalization, Reference
  • Improvement
  • Classification on the basis of Learning Algorithm
  • Supervised
  • Unsupervised gt Competitive

29
Neural Networks- Math Representation
30
Neural Networks- BackPropagate Basis
  • A supervised learning algorithm
  • Works on the basis of revising Weight Values
  • Training Example (x, t) where x represents the
    entry, and t is the expected output value
  • ai(l) representes the output gerenrated by the
    network in the layer named l
  • x ai(0)
  • m is the frequency for the execution of learning
    algorithm

31
Neural Networks- BackPropagate Algorithm
32
Prominent Aspects
  • System Architecture
  • Localizing an Agent
  • Intercept
  • Dribble
  • Formation
  • Defense System
  • Play With Ball System

33
System Architecture
  • Describe the structure of the system's components
  • Functional Architecture
  • Operational Architecture
  • Implementation Architecture
  • Brief view to Functional Architecture

34
System Architecture-Functional Architecture
35
Localizing an Agent
  • What is localization?

36
Localizing an Agent
  • A new approach used
  • It deals with points rather than edges
  • Uses a swipe line to find active edges
  • A point will be added if
  • It is a result of an intersection
  • It is surrounded by both active edges of the
    other polygon
  • Stops after reaching the end point of a polygon
  • It is executed in O(mn) for 2 polygons
  • T(n) 2T(n/2) O (n)
  • It is executed in O(nlogn) using divide and
    conquer for n polygons

37
Intercept
  • As a skills
  • Intercept the ball in at any distance.
  • As a strategy utility
  • Determine ball owner
  • Predict ball owner
  • Determine who must be intercept ball.
  • Need to communication to enhance its efficiency

38
Dribble
  • Running with the ball from one point to another
    as quickly as possible
  • Misleading obtrusive defender
  • Holding ball if it is need .

39
Dribble
  • One , Two

40
Dribble
  • Mislead

41
Formation
  • Usage
  • Determine Agent position relative to the ball
    position
  • New Works
  • New Floating Formation
  • Adding A Free midfielder
  • Implementing the main formation as 4-2-3-1
  • Implementing forwards press.

42
New Floating Formation
  • The 4-2-3-1 formation is the main formation.

43
New Floating Formation
  • The 4-2-4 formation is a fully offensive
    formation.

44
Defense System
  • Skills
  • Block
  • Mark
  • Strategy
  • Offside line
  • Press

45
Defense System- Block
46
Defense System- Mark
47
Defense System- Offside Line
48
(No Transcript)
49
Play With Ball System
  • Coming soon !!!
  • It will be published within early days.

50
RoboSina Agent Learning
  • Agent learns to Shoot
  • Neural Network and training a shoot skill
  • Using BP and Matlab
  • Agent learns to Pass
  • Decision Trees and training a pass skill
  • Using ID3 and C4.5

51
Learning how to Shoot
  • Problem Definition
  • Mapping the environment to a discrete model
  • 6 input entries
  • 6 output entries
  • Grabbing relevant properties
  • Using trainer to collect training samples
  • Choosing the proper target to shoot
  • Making the appropriate Neural Network
  • Modeling the network with matlab
  • A 2 layer network
  • tgsig as activation function in the first layer
  • logsig as activation function in the second layer
  • Applying training samples to the network
  • Results

52
Failed
(gx, gy)
(bx, by)
distcb
dircb
1 0 0 0 1 1
bx by gx gy distcb dircb
1st Successful State
State 19 100111
State 24 110001
State 28 111001
Last Successful State
53
Shoot-Results
  • Harms
  • Very time consuming method!!

54
Learning how to Pass
  • Problem Definition
  • Grabbing relevant properties
  • Using trainer to collect training samples
  • Making the appropriate Decision Tree
  • using C4.5 to create the tree
  • Creating pass.names file
  • applying training samples to the tree
  • Creating pass.data file
  • Results

55
(No Transcript)
56
Pass-Results
  • Harms
  • Partial Observation causes problems
  • Body direction of the receiver is ignored during
    the train

57
RoboSina Project
  • Honors
  • Championship of the 3rd US-Open RoboCup
    Competitions, May 2005, Atlanta, USA
  • 2nd place of the 3rd Iranian Open RoboCup
    Competitions, April 2005, Tehran, Iran
  • 5th place of RoboCup World Cup 2004, Lisbon,
    Portugal
  • Championship of the 2nd US-Open RoboCup
    Competitions, May 2004, New-Orleans, USA
  • Championship of the 2nd Iranian Open RoboCup
    Competitions, March 2004, Tehran, Iran
  • 10th place RoboCup World Cup 2003, Padova, Italy

58
Conclusions Suggestions
59
Acknowledgements
60
Thank you very much for being here
  • Any Question?
  • We are ready to Answer
Write a Comment
User Comments (0)
About PowerShow.com