[robocup-humanoid] Questions and comments regarding the Game Controller

Alejandro Malo Tamayo badalex at prodigy.net.mx
Wed Mar 9 11:58:42 EST 2011


Hi Dirk
All my references are to the "Humanoid League Rules and Setup for the 2010 competition in Singapore, Final Version March 2nd. 2010" the only rules that seem available at this time.
On Mar 9, 2011, at 4:04 AM, Dirk Thomas wrote:

> Hi Alejandro,
> 
> .....
> > -- the following penalties are not found in the rule book
> >       request for pickup 30s (looks like incapable player,but ..
> >       request for service 60s (looks like temporal absence, but the time is 30s)
> >       upgrade pickup to service +30s
> 
> These penalties have been applied in the 2010 RoboCup (at least in KidSize league).
> If they are not described in the rule book, it should be updated there if the rules should be applied this year again.
Sorry but I don't understand the rule book I refer is the 2010 and they are not in the mentioned in it.
> 
> > -- the manual kickoff states 30s
> > -- The one minute given the Controller after the READY signal is not in the rule book, but there is in the rulebook a 10s between the SET and the PLAY signals, for autostart. The automatic change to SET, after one minute, fails.
> 
> These time interval of the game controller are NOT mandatory.
> It's up to the referee to determine when to switch from READY to SET or from SET to PLAY.
> Therefore the GameController never automatically switches states
I assume that the GameController helps the human referee, but it might hinder
> 
> > -- The automata, included in the documentation, is not complete since it does not included the penalty kicks. One thing that is not clear to me is how to handle  state penalty kick since not included in the automata show (it might be on the playing state, but then the rule book does not mark the READY SET PLAY sequence for each penalty). It does mark this sequence for a drop-ball, but then again this state in not in the automata, in this case is more easily to fuse to the playing state.
> 
> The GameController does not model anything for penalty kicks (still it can be used to signal Ready, Set, Play in these cases).
> The automata only describes the state during normal game play.
Yes, however the RoboCupGameControlData structure broadcasted contains the STATE2_NORMAL and STATE2_PENALTYSHOOT, etc. (I imagine that the .etc is retoric since there is no other STATE2* value currently defined, although the technical challenges could use of it). More than secondary state (variable uint8 secondaryState)  looks as a primary state that allows to differenciate the two stages of the game: Playing periods (First, Second, Extratime First and Second) and Kicking penalty shoots.  There is also a uint8 state variable, in my point of view secondary state, defined by the variable firsthalf (that can have two values 1 first half and 0 otherwise) why not 1,2,3,4,..,n?. And finally there is the uint8 state variable with values INITIAL, READY, SET, PLAYING and FINISHED.
The team info structure does not contain a timeout counter (only one is allowed according to the rules)
> > -- the Time Out Done launches a 30s timer
> 
> I don't know why this is the case.
> If this is not intentional it should be removed.
This might be a bug
> 
> > -- the Game Controller .h file defines a structure RoboCupGameControllerReturnData. What is the purpose of this structure.
> 
> This can be used to read the data from broadcasted from the GameController into a semantic structure.
> 
> 
> > -- the automata included in the documentation has the Initial, Ready, Set, Playing, Penalized and Finished states. The Game Controller has
> > the Initial, Ready, Set, Play, Finish, Out By Cyan, Out By Magenta, Cyan KickOff, Magenta KickOff and DropBall. What is the correct use
> 
> The robot-independent game state is described by: "Initial", "Ready", "Set", "Play", "Finish".
> Each robot can be "Penalized" individually.
> The other states are additional information to decide about the concrete situation.
The issue is related to the awareness of the robots to the current game state.
> 
> > -- during penalty kick, I dont understand that the timer continues to run after reaching 0s
> 
> The timer in the game controller is NOT mandatory.
> It's up to the referee to determine when the penaly is over.
But, It is broadcasted to the robots.
> 
> 
> > -- the rule book, on page 15, second paragraph, says the source code is open, but the zip file does not contain the source code.
> 
> The GameController is hosted on sourceforge: http://sourceforge.net/projects/robocupgc/
Yes, it is hosted there, but the zip file only contains the .jar file and documentation, when the .jar class is decompressed only .class files appear, no .java; of course you could use a decompiler, but that is not the point. 
> > -- the Time Out Done switches the state to READY, but the play timer continues to run
> 
> As far as i know this is you it is interpreted. As soon as the time out is over the play timer continues.
> 
This might be a bug. When the "Time Out Done" is pressed, after a "Magenta/Cyan Time Out", before the two minutes are finished, the "Special Time"timer resets to 30s and the game state changes to READY, but the "Game Time", correctly, resumes counting.

> Best regards,
> Dirk
> 
> -- 
> 
> Dr.-Ing. Dirk Thomas                E-Mail: dthomas at sim.tu-darmstadt.de
> Simulation, Systems Optimization    Phone:  ++49 (0) 6151-16-4722
> and Robotics Group (SIM)            Mobil:  ++49 (0) 176-231 241 56
> Technische Universitaet Darmstadt   http://www.sim.tu-darmstadt.de
> Hochschulstr. 10                    D-64289 Darmstadt, Germany
Best regard
Alejandro

Dr Alejandro Malo Tamayo
Control Automatico
Cinvestav
Av IPN 2508
San Pedro Zacatenco
México, 07360 
México


More information about the robocup-humanoid mailing list