Hi all.
A critical bug (bug #1495887) has been discovered in sensing far
buildings. A far building is one which is on fire, but less than
(10m*time burning) from the agent. If a far building is within 10m of
the agent then the kernel is incorrectly sending only the fieryness of
the building.
Please download version 0.49.7 from sourceforge
(http://www.sf.net/projects/roborescue).
Alternatively, the attached output from "svn diff" shows the changes
that need to be made to the kernel to fix the bug.
Thanks to all of you who helped track down this bug! It was a hard one
to find.
Cheers,
Cameron.
-- Cameron Skinner Artificial Intelligence Group Department of Computer Science The University of Auckland email: cam@cs.auckland.ac.nz phone: +64 9 3737599 x82924 fax: +64 9 3737453 Post: Department of Computer Science The University of Auckland Private Bag 92019 Auckland New Zealand
Index: kernel/kernel.cc
===================================================================
--- kernel/kernel.cc (revision 172)
+++ kernel/kernel.cc (working copy)
@@ -738,9 +738,9 @@
int x;
int y;
if (m_pool.locate(agent,&x,&y)) {
- int range = m_config.getInt("vision",10000);
+ int visionRange = m_config.getInt("vision",10000);
int spreadingSpeed = m_config.getInt("fire_cognition_spreading_speed",10000);
- m_pool.getObjectsInRange(x,y,range,result);
+ m_pool.getObjectsInRange(x,y,visionRange,result);
// Find far buildings
if (agent->type()!=TYPE_CIVILIAN || !m_config.getBool("civilian_sense_hack",false)) {
if (m_time > m_config.getInt("steps_far_fire_invisible",0)) {
@@ -752,9 +752,9 @@
if (b && b->getFieryness()!=0) {
int ignitionTime = m_buildingIgnitionTime[b->id()];
if (ignitionTime<0) continue;
- int visibleRange = spreadingSpeed * (m_time-ignitionTime);
+ int farRange = spreadingSpeed * (m_time-ignitionTime);
int range = m_pool.range(agent,b);
- if (range <= visibleRange) {
+ if (range > visionRange && range <= farRange) {
result.insert(b);
if (fireOnly) m_agentFilter.addFarBuilding(b->id());
}
_______________________________________________
robocup-rescue-s mailing list
robocup-rescue-s@mailman.cc.gatech.edu
https://mailman.cc.gatech.edu/mailman/listinfo/robocup-rescue-s
Received on Sun May 28 06:44:06 2006
This archive was generated by hypermail 2.1.8 : Sun 28 May 2006 - 04:44:07 GMT