Presentation on theme: "RoboSina from Scratch Mostafa Rafaie-Jokandan & Nima Kaviani"— Presentation transcript:
1RoboSina from Scratch Mostafa Rafaie-Jokandan & Nima Kaviani ByMostafa Rafaie-Jokandan & Nima KavianiRoboSina from ScratchSubmitted as partial Fulfillment for the Requirements of the degree ofBachelor of ScienceInSoftware Engineering
2IntroductionSimulation System and Soccer ServerLearning Algorithms used in RoboSinaProminent Aspects of RoboSinaRoboSina Agent and LearningSuggestions and Conclusion
3Introduction Why RoboCup? Where are we moving toward? An approach to Distributed Artificial IntelligenceDAI vs CAIWhere are we moving toward?Who were we in RoboSina?
4Simulation System & Soccer Server What is a Simulation System?Why Simulation?Soccer Server
5Soccer Server Match Rules Properties of the Simulated Pitch Controlled by Soccer ServerControlled by HumanProperties of the Simulated PitchA * 68.0 field covered by flagsGoal widths are twice a real one
15Actions for an Agent Catch Dash & Stamina Model Kick Tackle Turn Move Turn-NeckPoint toFocusSayChange ViewScore
16Heterogeneous Players Do you know how a body builder differs a normal human?Acting in an environment with heterogeneous creatures covers all possible propertiesCoachMapping of DAI to CAI with restricted bandwidth in communicationWhat was the role of Jose Morinio in a team if we didn’t have a coach?!!!
17Learning Algorithms Definition Decision Trees Artificial Neural Networks
26Decision Trees – C4.5 A developed software on the basis of ID3 It’s abilitiesAvoiding over fitting the dataReduced error pruningRule post-pruningHandling continuous attributesHandling attribute with different costsChoosing an appropriate selection measureHandling training data with missing attribute valuesImproving computational efficiency
27Neural Networks Definition A Mathematical Representation BackPropagate BasisBackPropagate Algorithm
28Neural Networks-Definition A mathematical model of human’s neuronsIt’s abilitiesAssociation, Clustering, ClassificationPattern RecognitionGeneralization, ReferenceImprovementClassification on the basis of Learning AlgorithmSupervisedUnsupervised => Competitive
30Neural Networks- BackPropagate Basis A supervised learning algorithmWorks on the basis of revising Weight ValuesTraining Example (x, t) where x represents the entry, and t is the expected output valueai(l) representes the output gerenrated by the network in the layer named lx = ai(0)m is the frequency for the execution of learning algorithm
36Localizing an Agent A new approach used It deals with points rather than edgesUses a swipe line to find active edgesA point will be added if :It is a result of an intersectionIt is surrounded by both active edges of the other polygonStops after reaching the end point of a polygonIt is executed in O(m+n) for 2 polygonsT(n) = 2T(n/2) + O (n)It is executed in O(nlogn) using divide and conquer for n polygons
37Intercept As a skills As a strategy utility Intercept the ball in at any distance.As a strategy utilityDetermine ball ownerPredict ball ownerDetermine who must be intercept ball.Need to communication to enhance its efficiency
38DribbleRunning with the ball from one point to another as quickly as possibleMisleading obtrusive defenderHolding ball if it is need .
49Play With Ball System Coming soon !!! It will be published within early days.
50RoboSina Agent & Learning Agent learns to ShootNeural Network and training a shoot skillUsing BP and MatlabAgent learns to PassDecision Trees and training a pass skillUsing ID3 and C4.5
51Learning how to Shoot Problem Definition Mapping the environment to a discrete model6 input entries6 output entriesGrabbing relevant propertiesUsing trainer to collect training samplesChoosing the proper target to shootMaking the appropriate Neural NetworkModeling the network with matlabA 2 layer networktgsig as activation function in the first layerlogsig as activation function in the second layerApplying training samples to the networkResults
53Shoot-Results Harms Very time consuming method!! Algorithm Occurrence in 8 matchesSuccess NumSuccess PercentageComputational1419365.9%Learning17312672.8%HarmsVery time consuming method!!
54Learning how to Pass Problem Definition Grabbing relevant propertiesUsing trainer to collect training samplesMaking the appropriate Decision Treeusing C4.5 to create the treeCreating pass.names fileapplying training samples to the treeCreating pass.data fileResults
56Pass-Results Harms Partial Observation causes problems Pass ProbabilityOccurrence in 8 matchesSuccess NumSuccess Percentage85-100%91275378.3%70-85%32818757.01%55-70%1689254.7%HarmsPartial Observation causes problemsBody direction of the receiver is ignored during the train
57RoboSina Project Honors Championship of the 3rd US-Open RoboCup Competitions, May 2005, Atlanta, USA2nd place of the 3rd Iranian Open RoboCup Competitions, April 2005, Tehran, Iran5th place of RoboCup World Cup 2004, Lisbon, PortugalChampionship of the 2nd US-Open RoboCup Competitions, May 2004, New-Orleans, USAChampionship of the 2nd Iranian Open RoboCup Competitions, March 2004, Tehran, Iran10th place RoboCup World Cup 2003, Padova, Italy