Difference between revisions of "Robocup Software Tasks 2013"

From RoboJackets Wiki
Jump to navigation Jump to search
(Robot AI)
(Robot AI)
Line 76: Line 76:
  
 
==Goalie==
 
==Goalie==
 +
Scrap the current goalie and redesign a new one. Here are some tips for the redesign process.
  
==Fullback==
+
Draw out the state machine for the goalie. What are the different nodes of the machine, i.e. what are the different states the goalie can be in.
  
==One Touch Pass Behavior==
+
Next, figure out how to transition between those states. Under what testable conditions should the goalie go from say covering an area to clearing the ball?
 +
 
 +
Test your state machine. Will it get stuck in any node? What happens when bad input is given to the system, i.e. SSL Vision cannot see the ball?
 +
 
 +
Priority:
 +
 
 +
Persons:
  
 
=Motion=
 
=Motion=

Revision as of 17:04, 12 September 2012

Overview

This page contains the list of software related tasks/projects/bugs for the 2013 year. People can attach themselves to a project or task by adding their name to the "Persons: " list.

Logging

SSL Standardized Logger and Viewer

A standardized SSL Logger would be a stand-alone program that will allow logging of RoboCup matches into a standardized logging format. Likewise, the viewer would provide playback of the logged files. This will allow other teams (and us) to share their logs of past RoboCup matches. At the Mexico 2012 competition, the Brazilian team RoboFEI mentioned that they would work with us on this project.

We currently have a good logging system and viewer, but it is in our own format and contains play/robot statues information and the like.

Priority: ~Low

Persons:

Run soccer from log file

Some subgoals for this project:

  • Passing in the logged radio packets, vision frame, back into soccer so that we can step our AI through a log file.
  • Starting the simulator from the log frame, allowing our AI to run robots in simulation against the opponents' "ghosts", i.e. the opposing team in the logged game.

Priority:

Persons:

Calculate latency

There are several different sources of latency in the system:

  • From cameras -> SSL Vision -> Soccer
  • The cameras are not synchronized
  • From Soccer -> Robots
  • From Robots -> Soccer
  • Code execution in Soccer

The idea is to calculate the various latencies in the system and use those to make more accurate decisions based on predicted ball and robot location.

Priority:

Persons:

Latency panel in GUI

Priority:

Persons:

Calibrating Soccer to recognize fast kicks

When a robot kicks the ball at 8+m/s, SSL Vision will often lose track of the ball in the first few seconds/milliseconds. The idea here is to fit a curve to ball speed, location, and camera frame in order to generate a predicted ball location. This can help us both execute and defend against passing plays.

Priority:

Persons:

Recognizing chips from curvature of the ball

The ball trajectory noticeably curves when robots are chipping during corner kicks. Corner kicks are a high scoring play, and some teams will chip right into your defense area and blitz the goalie.

Priority:

Persons:

AI Engine

Scripting Language

Object representation of a State Machine

File system for scripts

GUI script loader interface

Decision Algorithm + Execution Framework

Machine Learning

People interested in this part, write up the sub projects here.

Robot AI

A rewrite/redesign of these behaviors/positions is recommended. This area of code can be quite nuanced during actual gameplay, and rewriting will make the entire AI system much more transparent and easier to debug.

Goalie

Scrap the current goalie and redesign a new one. Here are some tips for the redesign process.

Draw out the state machine for the goalie. What are the different nodes of the machine, i.e. what are the different states the goalie can be in.

Next, figure out how to transition between those states. Under what testable conditions should the goalie go from say covering an area to clearing the ball?

Test your state machine. Will it get stuck in any node? What happens when bad input is given to the system, i.e. SSL Vision cannot see the ball?

Priority:

Persons:

Motion

Bugs

Radio not working with 6 robots