|
亲爱的机器人和人工智能工程师们,
u. F* a: |* f你会把仿真器作为一个研究工具吗?如果你所写的文章是基于仿真结果的,并提交审稿,通常会收到易被拒收的警告。为什么?因为这种论文无一例外地陷入了以下模式:提出新建议/改进/扩展算法X;在模拟器S中测试X,并得到测试结果T;以T为基础声明X有效;结束。: P @; G6 b( S8 t- _2 |
那么,这些论文究竟有什么不对呢?
9 p2 D& d6 f' K1、你使用的是那个仿真工具?它是众所周知的机器人仿真器吗,例如Webots、Player-Stage-Gazebo,或是自定义编写的仿真器?令人惊讶的是许多论文描述一下X,然后简单地写道“我们已经在仿真器上测试了X,其结果是”# b1 q& B6 a- s( ~4 d8 q7 P' ?& a
2、如果你的仿真器是定制的,你怎么验证你的仿真器的正确性?如果没有那样的验证,你怎么会对你论文中的结果如此有信心?即使你没有进行任何验证,那么请给我们一些关于你的仿真器的线索;例如是不是基于传感器的(例如,某些特定的机器人传感器,比如红外碰撞传感器、摄像头)?它的物理模型是3D的还是2D动态的?- q. b8 r) a K, H3 z. r& c
3、你必须制定用来测试你的算法X的机器人。他们是真实的机器人吗,例如epucks或者NAO,或者是一个抽象机器人,例如一个理想化的虚拟机器人?如果是后者,描述出来的理想化的机器人:它本身是否有传感器和驱动器,或者这个理想化的机器人只是一个在空间中移动的点?它怎么跟其他机器人以及周围环境互动?
. r/ w8 \, j m/ T# y# J3 }4、你的机器人如何在仿真器中建模?如果你使用的是著名的仿真器,并选择其预定义库里的机器人,那么这个问题很容易回答。但是,对于一个定制设计的仿真器,解释清楚你的机器人如何建模是非常重要的。同样重要的是,你的机器人模型是如何控制的,因为你正在测试的算法X实体化的或控制器内编码的。令人惊奇的是,许多论文把它留给读者自己想象。
# b3 J& |% f$ p5、在你的结果部分,你必须就仿真器、仿真环境和模型机器人的局限性进行分析,他们很可能会影响你的结果。你对结果的解释非常重要,你得出关于算法X的任何结论,都要明确地考虑到这些限制。所有的机器人仿真器,无论被证明有多好,它都只是真实机器人和真实环境的简化模型。所谓现实差距是有问题的,尤其是假如你模拟的机器人一直在改变,即使不是如此,你也不可能理直气壮地解释你的结果,而忽视现实差距。0 u3 X' t0 }: o+ u. f! Q% ^/ B! r
6、如果你使用的是现有的仿真器,并且是你过去使用过的版本,还能在某些地方提供你的机器人模型和控制器代码,比如github项目的一个链接里。如果你的仿真器是定制的,那么你需要提供所有代码的入口。否则,你的工作是不可重复的,其价值非常有限。
2 s0 L6 _4 h ]+ ?3 e7 T& e好吧,早年很多职称论文都是这样的,基于solidwork的什么什么应用,这在那时候是可以接受的,因为三维软件尚未普及,但现在就不行了。机器人仿真器也是同样的道理,评审们都审美疲劳了。
$ t* Q0 l. L$ Q* }% X现代的仿真工具很强大但也很危险。说危险,是因为我们太容易相信他们告诉我们的是真相。尤其诱人的是渲染器,它提供了可视化的模拟世界动画和机器人也在其中。通常情况下,渲染器提供了各种视频特效,例如阴影、灯光以及反射,这一切都让我们更加相信我们看到的是真实的。1 S, g6 q( K3 n) S3 C) p" g( c
工程仿真器是一种科学仪器,想其他科学仪器一样,它必须(1)符合目的,(2)手动设置和校准任务,(3)理解,尤其是它的局限性,所以使用它获得的任何结果都必须详细解释,并且这些局限性必须是合格的。
' L: I/ Q- E3 ^) r& L祝你的论文好运。
: W+ w0 @8 h1 \. }' ` |
|