From: Jordi <mu...@gm...> - 2006-03-31 14:51:08
|
Have you tried your program on gazebo? =46riday 31 March 2006 16:36=E3=80=81Tim Reynolds =E3=81=95=E3=82=93=E3=81= =AF=E6=9B=B8=E3=81=8D=E3=81=BE=E3=81=97=E3=81=9F: > Hello > > A fellow student and I are doing research into various AI techniques for > controlling robots and are using Player/Stage. > > First, Player/Stage is amazing software, and you guys have done a wonderf= ul > job. > > Part of this while project is that we are developing a framework / API for > easily writing bot AI and controlling the timing of actions. > We are testing a few AI techniques with this: Standard state machine, swa= rm > bots and genetic algorithms. > > We have run into a few problems and were wondering if we could get any > insight. > > 1) Grippers > When we use grippers to grab another bot, a few different things can > happen, none of which are what we expected. > a - If the bot that is grabbed is not active, it loses all devices attach= ed > to it. (This is of course using Stage). A bot is able to connect to it > later, but when it tries to read from the sensors the whole simulation > crashes. > b - If the bot that is grabbed is active, once it is grabbed the simulati= on > crashes upon calling read() in Player. > > We are not sure if we are doing something wrong here. Is this just a 'not > possible' thing at this point? > One area we were looking to use this in is part of our simulation, which = is > a game of Jail Break. We have 'guard' and 'prisoner' bots. The game is for > the prisoners to get the correct keys to open doors and get to the 'goal' > area. Keys are just objects, doors are actually bots using color blob > finders and omni-directional movement. > > The two ways it was going to be used was for the 'guard' bots to grab the > 'prisoner' bots, and the other was just a novel game type we wanted to try > where we have both the swarm bots and the state machine bots in the same > area. The 'key' for the swarm bots is a normal key, whereas the key for t= he > state machine bot is one of the swarm bots. The bot would have to catch o= ne > to get out. Childish, but fun. > > 2) Pan-Tilt-Zoom > I have not personally worked on this yet, but my friend tells me that when > he tries to adjust the PTZ for, say, the blob finder, it causes the FOV to > go to zero, or what appears to be zero. Was wondering if there were known > issues with that or a particular way for doing that. > > 3) Disconnects and the Player client crashing. > When I close Stage, all connected player clients crash with a socket read > error [Success] ( A broken pipe error). This is a problem. The destructors > aren't getting called. I tried using a try / catch block to see if there > was an exception I could catch, but there doesn't seem to be one. This is= a > bit of a problem. However, I am assuming I am just missing something here. > I THINK the player client is crashing on the read() command, so is there > something I can check, variable or method, before calling read to ensure > that the socket is still open? Does Stage send out any kind of message > before it closes that would indicate to the bot that it needs to close as > well? > > Thank you very much. > > After I finish up the API, I would love to send it to you guys, see what > you think. /shrug. > > Tim Reynolds > ra...@gm... |