|
|
1
4
关于这方面有大量的研究文献 robot motion planning 和 robot locomotion . 通用机器人运动控制 对于两足机器人,至少有两种主要的机器人设计和控制方法(无论机器人是模拟的还是真实的):
双足足球机器人的运动控制 处理模拟biped机器人的控制问题实际上有两个方面:
第一部分是关于处理维持机器人稳定性的基本控制问题(假设你使用基于物理的重力模型)、直线行走、转弯等。第二部分是让你的机器人作为足球运动员完成特定任务,例如跑向球、踢球、阻挡对方球员,等。可能最容易单独解决这些问题,并将第二部分链接为更高级别的控制器,向第一部分发送轨迹和目标指令。 有很多相关的论文和书籍可以推荐,但我在下面列出了一些可能有用的,你可能希望包括在你已经做过的任何研究中。 阅读建议 史蒂文·迈克尔·拉瓦莱(2006)。 Planning Algorithms ,剑桥大学出版社。 马克·雷伯特(1986)。 能保持平衡的双腿机器人 麻省理工学院出版社。 布拉尼斯拉夫,米奥米尔和博罗瓦茨,武科布拉多维奇(2004年)。" Zero-Moment Point - Thirty Five Years of its Life “,《国际仿人机器人学杂志》,第1卷,第1期,第157173页。 Hirose,Masato和Takenaka,T(2001)。" Development of the humanoid robot ASIMO “,本田研发技术评论,第13卷,第一期。 吴启迪和刘成菊和张嘉琪和陈启军(2009)。" Survey of locomotion control of legged robots inspired by biological concept “,《中国科学》F辑:信息科学,第52卷,第10期,1715-1729页,斯普林格出版社。 瓦赫德,马蒂亚斯和佩特森,吉米(2002) A brief review of bipedal robotics research “,《第八届机电一体化论坛国际会议记录》,第480-488页。 单,J.,俊士,C.和佳品,C.(2000)。" Design of central pattern generator for humanoid robot walking based on multi-objective GA “,摘自:IEEE/RSJ程序 智能机器人与系统国际会议,19301935页。 Chestnutt,J.,Lau,M.,Cheung,G.,Kuffner,J.,Hodgins,J.,和Kanade,T.(2005)。" Footstep planning for the Honda ASIMO humanoid “,2005年IEEE机器人与自动化国际会议记录(ICRA 2005),第629-634页。 |
|
|
2
2
我当时正在做一个和这个没什么不同的项目(制作一条机器金枪鱼),我们正在探索的方法之一就是使用 genetic algorithm 调整人造卫星的性能 central pattern generator (在我们的例子中,模式是在尾巴的每个关节上运行的许多正弦波)。也许值得一试,如果你仔细选择适应度函数,遗传算法是另一种功能强大的工具。 |
|
|
3
2
以下是彼得·诺丁和马茨·G·诺达尔1999年的一篇优秀论文,根据他们建造猫王机器人的经验,概述了一种控制仿人机器人的进化方法: |
|
|
4
2
我已经思考了很长一段时间了,我意识到你至少需要两个智能的“代理”才能正常工作。基本思想是,这里有两种类型的智能活动:
SMC的培训可以在线完成。。。如果你真的想一想:在运动控制中定义成功基本上是在你向你的机器人提供信号时完成的,它会评估该信号并接受或拒绝它。如果你的机器人接收到一个信号并导致“故障”,那么你的机器人就会“离线”,不能再接收任何信号。定义“故障”和“离线”可能很棘手,但我认为如果机器人上的传感器指示机器人静止不动(躺在地上),这将是一个故障。
因此,SMC的健身功能可能是这样的:
CDM是另一种产生信号的人工智能代理,其适应度函数可以是:
所以你要做的就是运行CDM,然后所有的输出都被送到SMC。。。在游戏结束时,你运行你的健身功能。或者,您可以将SMC和CDM组合成一个单独的代理,并基于其他两个适应度函数创建一个复合适应度函数。我不知道你还能怎么做。。。 最后,你必须确定什么是学习课程:是半场比赛、整场比赛、仅仅几步,等等。如果一场比赛持续1分钟,而你在场上总共有8名球员,那么训练过程可能会非常缓慢! 使现代化下面是一篇论文的快速参考,该论文使用基因编程创建了“软机器人”来踢足球: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.36.136&rep=rep1&type=pdf 关于你的评论:我在想,对于潜意识运动控制(SMC),信号将来自有意识的决策者(CDM)。通过这种方式,您正在进化SMC代理,以正确处理CDM代理的命令(信号)。无论CDM代理怎么说,您都希望最大限度地延长SMC代理的启动时间。 SMC代理接收输入,例如关节上的矢量力,然后通过其处理单元运行该输入,以确定是否应执行该输入或是否应拒绝该输入。SMC应仅执行其“认为”不会恢复的输入,并应拒绝其“认为”会导致“灾难性故障”的输入。 现在SMC代理有一个输出:接受或拒绝信号(1或0)。CDM可以将该信号用于自己的训练。。。CDM希望最大限度地增加SMC接受的信号数量,同时也希望实现一个目标:为自己的球队获得高分,为对方球队获得低分。因此,CDM有自己的处理单元,正在进化以满足这两种需求。你的参考资料提供了三层设计,而我的只有两层。。。我认为我的设计朝着三层设计迈出了正确的一步。 这里还有一件事需要注意:那就是 坠落 真是 “灾难性失败” ? 如果你的机器人摔倒了,但CDM让它重新站起来怎么办?我认为这是一种有效的行为,所以你不应该惩罚机器人摔倒。。。也许更好的办法是惩罚它完成一个目标(不一定是足球目标)所需的时间。 |
|
|
5
1
有这个 tutorial on humanoid locomotion control 这描述了HRP-4 humanoid上使用的软件堆栈(可以 walk 或 climb stairs )。主要包括:
点击学术论文和源代码的链接了解更多信息。 |
|
|
Gina · 如何在Blueprism中指定列名和数据项? 8 年前 |
|
|
abhit pahwa · 使用arduino的PID线路跟随 8 年前 |
|
|
okkhoy · 机器人:配置空间中的距离 10 年前 |
|
|
f.rodrigues · 通过Python控制的机器人手臂[已关闭] 12 年前 |
|
|
hohenhiem · 良好的预制立体摄像头和机器人车辆建议[关闭] 13 年前 |
|
|
zista · AI Snake BFS问题 13 年前 |