190 likes | 310 Views
UvA Triearn 2001 Team Description. Built by two Master students at the UoA Decided to develop a team from scratch Earlier team hadn't followed software standards Not well structured source code and not rigorous documentation They had several ideas for improvement of the low-level methods
E N D
UvA Triearn 2001 Team Description • Built by two Master students at the UoA • Decided to develop a team from scratch • Earlier team hadn't followed software standards • Not well structured source code and not rigorous documentation • They had several ideas for improvement of the low-level methods • This lead to an advanced synchronization method and accurate estimation techniques for positions and velocities
UvA Trilearn 2001 Team Description • Results • Fast-play strategy and optimal scoring policy • Multi-level log system for quick debugging of the source code • They also put a lot of effort into the documentation of the source code
Architecture • The agents are capable of perception, reasoning and acting • UvA used a multi-threaded architecture, one thread for each of these tasks • To minimize the delay caused by I/O to and from the server, to maximize the time for planning
Architecture • Three-layers: • Perception and acting, is the bottom layer • Hides the soccer-layer from the other two layers • Skill layer, uses the functionalities from the bottom layer to implement the different skills of each player like marking etc. • Control layer, determine the best possible action with the info from the skill layer depending on the current world-state
World Model • Each agent has a probability representation of the world state, based on past perceptions • For each object an estimation of the position and the velocity is stored with an confident value of the accuracy of the estimation • The world model is updated each time new information is received
World Model • The results: • The world model is always according the latest information • Objects are updated based on when they last were seen • Confidence values are decreased for each cycle an object hasn't been seen
World Model • Communication between the agents to improve the accuracy of the world model • The agent that has the best view communicate with the nearest agents and they update the parts that isn't visible • Low-level state information is used to derive high-level conclusion • Average of 17 player that have an up-to-date information about the world (arena)
Synchronization • Used to determine the optimal moment (time) to send the action to the server • Depends on arrival time of different messages, it changes from cycle to cycle • Result is that the latest information is sent to the server • Each action is checked to determine if the server actually preformed the action
Synchronization • If the action isn't preformed, then isn't it sent again to prevent that the following cycle contain two actions (clatch)
Optimal scoring • Determine the optimal shooting point and the probability of scoring at the present point of the ball, with the position of the goal-keeper • First problem to do this: • Determine the probability for the ball to go into goal from a given position • This was based on the assess experiment when a player was placed in front of the goal and moved further and further from the goal
Optimal scoring • Second problem is to determine if the ball will pass the goal-keeper, in a given situation • The player was placed straight in front of the goal and the goal-keeper was moved to different positions • Combining these results are used to determine the optimal scoring point
Team Strategy • Main philosophy • Keep the ball moving, quickly between the player, preferably forward • Pass the ball in front of wing attackers at the side to cutting through the opponents defence • Disorganize the other team
Team Strategy • Heterogonous players are used on the wings • They get tired more quickly, but UvA has found a formula to determine the quality of these players • The formula returns the utility-value based on the parameters of the player • Also used to determine which type of player to place at a specific position of a formation • The behaviour of each agent is based on where on the field the ball is located and where it is on the field
Deep Behaviour Projection Agent Architecture • Robo-cup need agents that are capable of several attributes • Isn’t enough with reaction in a certain situation • Need for a more strategic skills • Need for an agent-architecture that can use both high-level and low-level behaviour layer
DBP-agent architecture The main goal is to develop an agent with increased reasoning behaviour That the behaviour can “grow” into a higher level and, for every new level, be projected into a more basic behaviour
DBP-framework Translation between symbolic descriptions into low-level specification Using feedback between emergent behaviour and symbolic descriptions Have both embedded and emergent levels Behaviour projection and abilities to use between functionalities of other levels
DBP-agent architecture • The feed-back from a emergent behaviour is assessed in a meta-action theory to derive behaviour on a high-level • A behaviour can be embedded or emergent • Results in that the agent use related behaviour of these types
DBP-agent framework • Explore the domain with a update function • Revise the information whenever new information becomes available • Visual inputs or from communication between team-members • This update the belief and revise the beliefs
DBP-agent Architecture • Earlier versions didn’t used inter-communication and world-models • Relied on reaction behaviour and emergent tactics • Communication and world-models has made a distinct improvement of the team-work