Robocup比赛

2024-07-02

Robocup比赛(共6篇)

Robocup比赛 篇1

1 关于场地的识别

先来看一下Robocup比赛场地。比赛场地呈绿色, 长方形, 900×600 (cm) 。[1]一般机器人站在场地内平视时看到的大致是一个绿色的梯形 (或者被切掉一部分) , 下底长。所以最简单的识别做法就是对于视野中的图片, 从最下方开始往上找到绿色的上边界, 即场地边界。这也是我们最初使用的方法。

实际上, 场地的识别会受到各种因素的影响, 比如, 场地边界线被障碍物等切断;再如, 场地中的白色场线或橙色球对寻找场地边界的干扰;或者, 场地外的绿色干扰。

1.1 分片、宽搜确定连通域

考虑到处理速度以及对一些微小噪声的滤除, 首先采用分片处理。每10×10个像素点记录为一个超像素点。当这100个点中的绿色点数达到设定阈值时, 就认为这个超像素点为绿色, 否则统一记为不是绿色。

采用分片处理的优势在于对算法的优化和速度的提升, 对超像素点的操作和分析, 可以有效滤除噪声、减小搜索范围。

然后是对绿色场地边界线的寻找。最初采用的是从图片最下面一排超像素点 (y=0) 开始, 如果发现有绿色点, 就继续往上一个点 (y=y+1) 判断, 若为绿色, 则继续;否则, 直接往上再寻m个点, 倘若这m个点中绿色点个数达阈值, 比如m/2, 则认为仍未找到边界, 直接记y=y+m, 跳回第二步继续, 若未达阈值, 则认为往上找的m个点中绿色点已为噪声, 边界已寻到, 即y。

这种算法的优势是快捷、简单。缺点有二, 一是, 阈值的选取有很大的经验性和易变性;二是, 虽然算法中考虑了噪声, 但是如果遇到较大的噪声点, 比如场地中的球, 很可能往上的m个点中所有点都在橙色的球中, 那会误以为已找到绿色边界而停止搜索。

绿色场地所有的绿色点一定构成一个绿色连通域, 这是场地的特性, 借助于此, 我们采用另一种方法, 即基于栈的宽度优先搜索。依图片最下面一排超像素点中的绿色点为宽搜起始点, 进行向上、向左和向右的搜索, 确定出绿色连通域。需要强调的一点是, 因为视野中的场地很可能被障碍物等从纵向截成两段甚至更多, 所以这里所寻找的绿色连通域不止一个, 只要连通域内的像素点数目大于给定阈值, 就认为是属于场地的连通域。

稍微比较下这两种算法。时间复杂度方面, 宽搜和自下而上寻找都在O (n) ;虽然宽搜占用了一定的内存, 但是分片处理后, 需要处理的点数成百倍下降。而且宽搜对于较大的场内噪声有极好的滤除作用, 比如橙色的球, 可以很好地绕过然后继续搜索。

经过分片和宽度优先搜索, 就可以大致确定绿色场地的位置了。但是, 因为分析的是超像素点 (10×10) , 这时并没找到精确的边界线。

为得到精确到每一个像素点的边界线, 这里还需要对找到的分片图像宽边界进行细化还原, 即将宽搜下找到的长度48的整型数组扩展为长度480的整型数组。具体而言, 类似于对标记为边界的48个10×10的超像素点再进行绿色边界的寻找。

1.2 边界的线性拟合与凸包处理

经过分片———宽搜———细化后得到的场地边界线, 是类似于素描的作品, 紧贴绿色可见场地。但是实际情况与可视图片不一定相同, 比如被障碍物遮挡部分的场地, 虽然视野中不可见, 但依然存在。智能机器人应该是能够识别到的, 否则会对其运动判断造成干扰。

所以, 下一步的问题是, 如何将类似于素描的散点边界图像拟合为几条简单直线的组合, 换句话说, 就是折线的线性拟合。

根据残差平方和可以得到该拟合直线的线性相关度

线性相关度r直接决定线性拟合的品质, r越接近于1则线性相关度越高。

对于多条直线组合成的折线拟合, 关键问题在于我们面对的依然只是散点, 我们不知道从哪一个散点开始上一条直线结束下一条直线开始, 即直线与直线之间的“接合点”无法确定。

记将散点列 (xi, yi) 拟合成m条直线的总线性相关度为

其中δ为每条拟合直线的权重, ni为每条拟合直线的拟合点数, N为总散点数目, 在δ固定的前提下, ri越接近1则总体R (m) 越接近于1;同时权越大的直线其线性相关度对R (m) 的贡献越大。所以我们应该尽可能少地分段, 并提高每条拟合直线的线性相关度。

先分后合。属于场地边界线的最多有480个散点, 组成的直线为三到五条。那么不妨将这些散点平均分成10组, 即先默认存在九个接合点, 然后每组内的散点线性拟合, 这样就得到十条拟合的直线。每组拟合后会获得一个线性相关度, 取一个合适的阈值, 若线性相关度高于该阈值, 即线性相关度较好, 可认为这组点属于同一条直线;若线性相关度低于该阈值, 则认为这组点的线性拟合度很差, 即所谓的“接合点”可能存在于这组点内, 下面就是找到这个“接合点”, 如何找?方法是对这组点二分之, 形成新的两组散点, 然后再分别线性拟合之。这样就有得到两个线性相关度, 分析, 高于阈值不考虑, 低于阈值的再二分之, 再线性拟合, 以此类推。这样, 经过四至五次后, 得到的数据就应该稳定下来。基本上得到的拟合直线线性拟合度都已达阈值。

下一步是“合”。计算每条拟合直线的斜率, 相邻并且斜率差在一阈值内即可认为是一条直线, 合并起来。这样最终得到的拟合直线数目较少, 且每条直线在阈值的控制下均有较好的线性相关度, 使总体R (m) 接近于1。

这里要说一个比较有用的附加技巧, 即凸包问题。场地是一个凸包, 这是场地给我们的另一个信息。在经过边界的线性拟合之后, 我们基本得到了场地边界线, 但是或许还有一些差强人意的地方, 比如某一块边界突然凹进去, 这显然不允许的, 会漏掉部分场地信息。所以, 为了最后的精确, 我们对找到的绿色场地边界做一凸包约束。在找到的一组直线中, 若存在两直线的夹角超过180度, 即认为出现凹陷区, 从凹陷区域两侧取点, 做拟合直线填补之。这样, 保证了场地内部的信息不会缺失, 对比赛而言十分重要。

2 关于障碍物的识别

由于2014的robocup比赛将障碍物数量提升到了2个, 加上科技挑战赛中的穿越障碍物项目, 障碍物识别逐渐重要起来。

比赛中障碍物为黑色柱体, 空心, 2014年的尺寸是直径20cm, 高度90cm。总体而言占据空间较大。因此, 只要机器人在场地中央并且平视的话, 应该大多数时间可以看到障碍物的。[1]

最初的障碍物识别方法是基于场地识别的。在确定场地边界线时, 若发现边界线数据出现跳变, 即认为该处存在障碍物。这是一个很简单且有效的方法, 场地线一定会因障碍物的遮挡而往内部凹陷, 据此确定障碍物位置。

问题存在于判断标准的选取。因为场地边界会受到各种因素影响而内凹, 究竟何种情况下是障碍物引起的, 而不是球门柱、球抑或是场地的误识别, 这个判断标准可谓苛刻。而且现在障碍物的数量增加为两个, 又出现了视野中的障碍物可能完全存在于场地里而未遮挡场地边界线的问题。

采用二次宽搜的方法进行多个障碍物的寻找。此方法支持两个以上障碍物的寻找, 实验中最多一次测试出了4个障碍物的位置。

障碍物识别程序返回的消息为障碍物的数量、每个障碍物底边两个端点的横纵坐标即障碍物的可视高度 (此数据只为做出识别图使用, 意义不大, 后文有解释原因) 。返回的消息还需送至定位节点, 利用图像信息与机器人位姿信息构建目标定位模型, 将二维平面坐标投射为三维立体坐标信息[3], 确定距离和角度, 然后再发送至决策节点, 即可实现机器人的避障策略。

二次宽搜寻找障碍物。首先是障碍物搜索之前的一些准备工作。因为场地外存在较多黑色干扰, 所以引入场地边界信息, 限制每次宽搜仅在场地内进行 (这样也就导致突出场地部分的障碍物会被削去, 所以最终返回的高度信息不准确) 。其次, 因为视野中障碍物有时较小, 为保证障碍物识别的精确度, 采用了逐像素点搜索。因为场地边界线的限制, 以及Robocup比赛中较为单调的场地情况, 处理时间有所缩短。

第一次宽搜是场地内黑色连通域的全面搜索, 像素点达到阈值的连通域统一标记为黑色, 未被搜索或搜索淘汰的统一标记为白色。这一步宽搜主要是为了去噪, 消除场地中存在的黑色噪声。宽搜时采用了两个栈, 一个栈用于宽搜时被搜索点邻近各点信息的存入与读出, 另一个栈则用于记录一个黑色连通域内所有像素点的信息。当一个黑色连通域被搜索完毕后, 立即对存于栈中的该连通域像素点进行检索, 判断是否达到阈值要求。阈值方面, 主要是总像素点个数, 以及该连通域的宽度等要求。若该连通域达到阈值要求, 则将该连通域中所有像素点统一标记为黑色, 然后清栈;否则, 统一标记为白色然后清栈。

经过第一次宽搜, 图片颜色基本被划分为三类, 场地外的部分、场地内的黑色、场地内的白色。

第二次宽搜, 主要用于找到每一个障碍物并做适当修正。要做的是找到这些障碍物并将其修正为垂直的长方形。

第二次宽搜在第一次宽搜的基础上进行, 再次搜索黑色连通域, 对找到的连通域进行第二次阈值检查和判定, 通过后对该连通域进行修正。这次宽搜同样采用双栈式搜索, 其中记录连通域内像素点信息的栈, 此处用于筛选输出障碍物两底边端点信息, 同时给出场内可视高度。类似于第一轮宽搜, 当一个黑色连通域搜索完毕时, 立即对存于栈中的该连通域像素点进行检索, 输出相关信息并做修正, 然后清栈。

修正方面, 主要是两底边端点信息。为保证两个点位于图中同一高度, 且两点距离大致等于障碍物宽度, 采用的方法是在障碍物底端大约高度30个像素点的范围内寻找最合适的左右端点距离, 定为障碍物宽度, 然后依此距离再寻找适合作为两底边端点的两个点。障碍物高度就是这两点到黑色连通域能搜到的最高像素点的高度差。

经过两轮宽搜后, 障碍物的信息就基本输出完毕。

实际比赛耗时方面, 摄像头拍摄频率为30fps, 即接受一张图片大概可以用的处理时间为30ms, 障碍物部分平均耗时15ms, 加上之前场地的耗时10ms, 应该符合要求 (球等识别同时进行) 。所以, 用时间换空间的做法是可取的。

合并部分障碍物。在二次宽搜后, 得到了数个障碍物的信息。有时因为遮挡等问题, 一个障碍物可能会被误认为几个, 即得到数个两底边端点宽度相近但高度不一的障碍物。对此, 要对障碍物合并, 将上述情况下的多个障碍物合为一个。

从测试集的处理来看, 场地识别效果较好, 而障碍物算法仍有待改进。不过理论算法毕竟是在实验室中分析得到的, 在实际比赛中, 可能会因各种环境因素而需加以调整, 所以应该尽可能地使算法的鲁棒性提高, 使之适应于更复杂的情况。比如场地识别中因为障碍物的遮挡导致在场地边界线上相邻两点间的数值跳变, 又或是对方机器人对障碍物识别的干扰, 都是要进一步探索的。

参考文献

[1]R obo Cup Soccer Humanoid League R ules and Setup, For the 2014 Competition in Jo~ao Pessoa (Final version of January 10th, 2014)

[2]葛余博.概率论与数理统计.清华大学出版社, 2005.

[3]杜鑫峰, 熊蓉, 褚健.仿人足球机器人视觉系统快速识别与精确定位.浙江大学学报, 2009.

[4]邓俊辉.数据结构 (C++语言版) .清华大学出版社, 2013.

Robocup比赛 篇2

Robo Cup, 机器人世界杯赛会, 1996年在日本正式成立, 首届Robo Cup比赛在日本的名古屋举办, 并先后举办过5届机器人足球世界杯赛。Robo Cup的使命是促进分布式人工智能与智能机器人技术的研究与教育。通过提供一个标准任务, 使得研究人员利用各种技术, 获得更好的解决方案, 从而有效促进相关领域的发展。从1997年起, Robo Cup开始迅速发展, 现在每届机器人足球比赛都有很多球队参加, 到2009年更是增加到了180多支参赛队伍。经过十年的发展, 足球机器人技术取得了显著的成绩。

机器人足球比赛的防守策略

防守策略现状

在现阶段, 大多数球队采用的防守仍是全民防守, 因为, 机器人不同于人类, 其计算速度快, 不会因为体力的下降影响到球队的进攻, 换句话说, 球队的攻防转换快。在某种意义上, 每个机器人都可以防守, 这也就增加了机器人的防守效率。换言之, 若都参加了进攻, 自己后方的防守也就变的薄弱, 使自己的防守陷入被动。因此, 采取一定的分工去防守和进攻将会取得更好的效果。

由于现在足球比赛中添加了新规则, 特别是仿真组3D足球比赛, 这使研究球队的防守策略更加迫切, 不然, 在新规则的制约下, 往往会使没有防守策略的球队在比赛中处于劣势。

2 在当代的防守策略中主要存在了这么几种防守方式:

基于阵形变换的防守模型、后卫防守策略、可变防线守门员防守策略。

2.1 Robo Cup新规则

Robo Cup新规则如下:

(1) 守门员及所有球员倒地30m内必须爬起来, 否则会被罚出场。

(2) 在球的半径0.5m范围内, 双方各只能出现一人, 否则会被弹出场外, 1.5m范围内, 双方可以各出现两人, 因此尽量不要将队员一字排开很近, 否则有可能在球前进的过程中会逐步将球员都弹出场, 因此跟队友的距离要注意。

2.2 目前常用的防守策略

(1) 基于阵形变换的防守策略

显然, 该策略是让自己的球队始终保持一定的队形, 并根据实际情况做出相应的变化以便使自己达到预设攻防目的。这样, 便可以有效的使自己球队的阵形不再因种种规则而变得漏洞百出, 能有效达到防守的目的。但是这种策略往往用在进攻上, 在防守上体现的效率并不是很理想, 其实用性也不是很好。

(2) 后卫防守策略

在国内外已有的后卫防守策略, 应用比较多的是:盯人防守、角色防守、区域防守三种。这三种防守策略有一个共同的特点, 那就是, 他们采取的策略都是基于传统意义上的防守, 研究的是, 球在对方球员脚下时本方球员该如何行动、跑位的问题。被动性比较高。

(3) 可变防线守门员防守策略

这个防守策略所讲述的是守门员基于防线的跑位模式。此种方法, 可以使球始终落在守门员的视野中, 能够很好的通知本方球员球的位置, 并能够很好的封堵对方球员的射门角度。

3 守门员站位

3.1 守门员站位的意义

守门员是防守的最后一道门槛, 因此, 守门员的站位是极为重要的。守门员有一个好的站位, 会使球队的防守变得更加灵活, 更加有效。现阶段出现的守门员主要防守站位有:垂足站位法, 角平分线站位法, 中点站位法, 比例站位法, 预测站位法, 区域站位法等等。

3.2 守门员的站位方法

在论述守门员的站位方法之前, 我们首先来描述一个三角形, 我们称那个三角形为射门三角区域, 它是把球门的两个门柱所在的点作为三角形的两个顶点, 再加上移动的球所在的实时位置为另外的顶点, 连接这三个点变形成了一个三角形, 我们称其为射门三角区域。以门柱所在的点为顶点的角为底角, 若这两个底角不相等, 那么较大的那个底角我们称其为近角, 那个较小点的角则为远角。根据进攻和防守, 我们把这个三角区域分成我方射门三角区域和敌方射门三角区域。这个射门三角区域包含了对方所有可能的射门角度。有个射门三角区域, 对于守门员的站位有至关重要的帮助。它使其不再盲目的在防守底线徘徊。下面就来简述守门员的站位。

(1) 垂足站位法:球在守门员防守底线上的投影将成为守门员的位置。也就是说, 从球这一点向防守底线作垂线, 其垂足作为守门员的目标位置。优点:易实现, 其横坐标就是球的横坐标;纵坐标可以通过计算求到垂足的距离, 即所求投影线段的长度, 用球的纵坐标减去该长度就是守门员所站位置的纵坐标。缺点:不是最优站位, 若机器人推射远角, 守门员移动的距离将非常大, 几乎接近整个球门的宽度, 不能合理的防守所有可能的射门角度。

(2) 角平分线站位法:做出当前的射门三角区, 把球所在点的角称作顶角, 顶角的角平分线和守门员的防守底线相交, 这个交点就可以作为守门员的站位位置。守门员的这种站位方法就是角平分线站位法。优点:为守门员选择了防守线路的最优路线, 避免了垂足站位法中守门员防守的射门角度太少的缺点, 它选择了射门三角区最优线路的最短路线, 并为其规划为直线, 兼顾了所有可能的射门轨迹。缺点:这种站法会让机器人频繁转身, 每次转动的角度都大不相同, 机器人的转动本就是一个很复杂的过程, 而且, 转动速度比之跑动的速度要慢很多;另外, 当球处于比较低的位置时, 守门员就会忽略对方对两边的射门, 因此, 其仍没达到最优效果。

(3) 中点站位法:射门三角区的两边与守门员的防守底线相交得到的两个交点, 这两个交点的中点即为守门员的目标位置。这一方法, 虽然牺牲了最短路径的选择, 但是, 目标位置必然会出现在守门员所在的防守底线上, 因此机器人无需转身便可通过直线运动到达目标位置。但是这样的站位难以有效的把球处理出门区的危险区域。

(4) 比例站位法:比例站位法的目标位置与以上几种方法完全不同, 它并不涉及射门三角区, 它是通过计算球到两门柱的距离比, 然后, 利用这个比值, 在球门线上再通过计算目标位置到两门柱的距离比与该比值相等, 来取得目标位置。这个将是在不考虑球运动的前提下, 守门员的理想站位点。这种方法的缺点是, 完全没有考虑对方的射门角度。

(5) 预测站位法:在比例站位法的基础上通过对对方可能的射门路线进行预测, 从而得出守门员的最终站位位置。预测站位又分为单机器人射门位置预测和双机器人射门位置预测。虽然还可以继续扩展为多机器人射门位置预测, 但实际上预测的越多, 将使守门员的灵活性变得越低, 进而得到的收益越小。

(6) 区域站位法:区域站位法是一种相对比较简单的站位方法, 它是将球场分为若干个区域, 每个区域的危险等级不一样, 越靠近球门的区域危险等级越高然后根据球位置所在危险区域进行站位。该种站位方法只是静态的比较简单的给出守门员的站位结果, 并没有考虑球运动所造成的危险变化。也不能精确的对球所在危险区域进行判断, 因此该站位并不是理想的站位方法, 通过它, 得不到良好的防守效果。

总之上面对守门员的站位做了一个简单的描述, 每一支球队要根据自己的需要来选择, 因为每一个球队都有自己的需求, 不要盲目的去选择实现不了的站位, 那样反而让自己的球队处于劣势。

摘要:在Robocup 3D比赛中要取胜进攻固然重要, 防守也不可缺少。本文主要针对Robocup 3D比赛中机器人足球队的防守做了一系列讨论, 介绍了多种防守策略, 并详细论述了守门员的防守站位。

关键词:RoboCup,防守策略,守门员站位

参考文献

[1]Hiroki Kitano, Minoru Asada, Yasuo Ku-niyoshi, ItsukiNoda, EiichiOsawa, .Hitoshi Mat-subara RoboCup:A Challenge Problem for AI and Robotics[J], RoboCup-97:Robot Soccer World Cup I, 1-19, Springer, 1998.

[2]Peter Stone, Layered Learning in Multi-a-gent System[D].PHD dissertation, school of computer science, CMU, 1998.

[3]徐香玉.仿真机器人足球赛防守策略的研究与实现[J].沈阳工业大学, 2007.

Robocup比赛 篇3

1 传球策略的分析

传球是足球比赛中重要的部分,是进攻基础,是整个比赛的核心,是影响到整体战术的重要环节,也是取胜的保证。这里将传球问题分解为以下两个问题来研究。

1.1 传球速度的判定

这里传球速度的判定,是参考了清华国际比赛队伍所采用的穿越速度。如果传球者踢出速度合适,使对手在交点以内都没法截到,我方队员比对方先截到球。并以此速度踢出球,此队员不能在该点以前截到球,而且以小于此速度的任何速度踢出球,对手都可能在该点以内截到球。只要以大于这个穿越速度传球,球就能传到队友脚下。

穿越速度可以通过BP神经网络来计算,BP网络是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。如何用BP神经网络来计算穿越速度,可以分为以下两个步骤:第一步,采集样本。第二步,用人工神经网络中的BP网络拟合得到传给每个球员的穿越速度。[1]

1.2 传球路径的确定

由于传球算法搜索的状态空间比较大,所部分执行时间较长,如果不对其进行优化很可能会造成在100ms的单位时间内不能执行完所有算法。这里对传统的传球算法进行了优化处理,采用以下传球策略:第一:点对点传球,即基于角色的传球,此算法搜索时间极短。第二:在某一规定区域搜索路线传球,即基于区域的传球,第三:进攻区球门附近,可以采用基于概率判断的策略,这样可以避免对一些不必要的路径进行大量的搜索,而且没有影响到传球效果。下面是XH-Rocket这三种传球策略的简介。

1.2.1 基于角色的传球策略

在RoboCup2D比赛过程中,球队的每个成员在任何时刻都能清楚的知道自己在阵型中的角色。基于角色的传球策略体现了多智能体之间局部的协作和配合。球员在传球时选择优先级高的球员。如果该队友满足传球条件,那么将球传给该队友。传球的条件是可以一脚将球踢到队友的位置上,要求与队友的距离小于球可以到达的距离外,以保证球到达队友脚下前不被对手先拦截。这种传球的效率可能很高,但由于赛场的情况变化是不可预知的,从而正确率、准确率并不能达到要求。在次基础上对区域的传球策略进行了研究。

1.2.2 基于区域的传球策略

基于区域的传球策略是将整个场地分成七个子区域,在不同的区域,智能体有不同的决策行为。当控球队员决定传球时,根据自己所在区域选择最佳目标队友。此种策略准确率可以提高,但由于实现了选择“最佳传球队友”的决策,包含了求最大值或者最小值的问题,空间搜索很大,计算时间可能会过长,满足不了实时性的需要。[2]

1.2.3 基于概率判断的策略

将传球动作概率化处理,对任一个球员,球场上除守门员之外有9个队友,把所有的队友传球的概率分别乘上一个不同的q。q1,q2,q3,q4,q5,q6,q7,q8,q9,这些代表了这个队员把球传给不同队友时的初始值,并设为1。当这个队员计算其传球概率时,应该再确定周围己方队员后带入对应的q值,影响这个队员对不同己方队员传球的概率。当给出传球命令之后,跟踪这个球是否被目标队友接到,并计算在接到球一定周期内是否丢球,来决定影响其对应的q值,若达成预先目标,则以合适的步长增长这个q值,若失败则减小。最终仿真球员会形成自己的最优传球对象,并且由于队形的存在,会形成一条比较合适的进攻路线。可以把所有的概率值都掺入一个权值,这样让这些动作的概率值自动调整,比赛过程中不但可以获得最优比例,而且可以省去大量手工调数据所花费的时间。

1.2.4 三种传球策略的比较应用

实际运用中我们将球场分成进攻区和防守区两部分,根据球的位置来决定不同的传球策略。在防守区,必须减小失球的概率,对场上的瞬时变化及时做出正确的反应,传球时可以采用基于区域的传球,目的是每次都力图找到最佳的传球队友,以减少传球失误;在进攻区要加快进攻节奏才有可能进球,此时可以采用基于角色的传球策略,只要找到优先级高的并可以接球的队友,就将球传出去,达到快速进攻的目的;如果在进攻区球门附近,可以采用基于概率判断的策略,这样就可以保证准确无误的进攻。

2 XH-Rocket整体传球策略的优缺点及应对方案

2.1 整体传球策略的优点

1)进攻区由于采用了基于角色的传球策略,传球目标早已设定,所以进攻球员进行行为决策判断时所用时间很短,而传球速度也比之于以往有很大提高,不仅能有效突破对手防守,而且还能以攻代守,减轻我方球员防守压力。

2)防守区由于采用了基于区域的传球方式,队员每次传球时都慎重判断最佳传球区域进而找到最佳传球目标,从而降低了传球丢球率,这样不仅使我方能迅速及时瓦解对手进攻,而且还能反守为攻,增大我方进攻机会。

2.2 整体传球策略的缺点

1)由于我方优化传球条件判断算法和传球目标位置定位算法不甚完善,使得传球路径选择失误处很多;

2)BP神经网络算法尚处于实验阶段,还有许多漏洞,如:由于开始尝试时没有任何的信息和知识,采集到的成功例子比较少,而BP算法需要大量的数据来覆盖整个特征空间,所以由此训练出的网络精度较低,训练效果不是很好。而训练效果的优劣直接关系到穿越速度的计算进而影响到传球速度大小的判定,这样就造成了球准确传出而队友接不到球的情况。

3)基于角色传球策略灵活性不够好,有时由于选择的传球队友不够理想,会出现误传现象,错失了进攻良机,从而影响了进攻的整体效果。

4)传球没有通过权值来控制行为决策判断,使得队员传球频率远比带球、射门频率高,这样就直接导致在不宜传球时而错误地运用了传球策略。[3]

3 针对上述缺点所采取的应对方案

1)反复实验,设计考虑到各种情况的传球条件判断算法和传球目标位置定位算法,优化算法使算法复杂度降低,在使传球丢球率尽可能降到最低的同时保障决策的有效和实时性。

2)对于BP神经网络,训练要反复进行多次。通过反复的训练,得出的网络精度也会越来越高。对传球优先级进行反复实验测试,根据各种优先级的成功概率大小而设定合理的传球优先级顺序。在整体决策中加入权值判断函数,通过权值大小比较使之在适当情况下采取准确而有效的行为决策。

4 结束语

在2010年“凌翔杯”安徽机器人大赛中,我们获得RoboCup仿真组2D比赛一等奖,但我们球队的代码还有许多需要改进的地方,以后准备引入机器学习算法,离线训练个人技术,并利用强化学习算法在线训练来调整策略;对于权值计算的部分,应该加入动态规划、Q-learning、遗传算法等,计算出最佳的一个数值。

传球策略和技术涉及到各智能体之间互相合作、协调和通信等多智能体系统中的关键技术。研究RoboCup中传球动作的关键策略的意义不仅仅局限于RoboCup本身,希望把机器人足球的技术应用到日常生活中的家用机器人上,使机器人技术能够普及并推广使用,同时也希望在物联网的领域内有一席之地。

摘要:该文针对RoboCup仿真2D球队设计中的11个智能体相互间的合作和协调问题,结合整体的规划决策与每个智能体的动作模块的关系,根据BP神经网络的传球速度,提出了基于角色、基于区域及其基于概率判断的传球策略,并指出了三者之间的协调性,用于建立场上关键信息元素和决策之间有效的关系。

关键词:BP神经网络,穿越速度,合作,协调性,概率

参考文献

[1]梁循.数据挖掘算法与应用[M].北京:北京大学出版社,2006:76-109.

[2]张晓勇,彭军.RoboCup中传球策略的实现[J].计算机工程,2004(23).

Robocup比赛 篇4

程序设计技能是计算机科学与技术专业人才不可或缺的基本素养,教育部2010年3月出版发行的“高等学校计算机科学与技术专业人才专业能力构成与培养”白皮书中提出:一名合格计算机专业人才应该具备:交流能力、获取知识与信息的能力、专业基本能力、创新能力、工程实现能力和团队合作能力[1],其中专业基本能力包括:计算机思维能力、算法设计与分析能力、程序设计与实现能力、系统能力四个方面[1]。显然,专业基本能力要求计算机专业人员面向实际领域问题能够进行算法分析、程序设计与编写及系统集成,故程序设计能力是计算机工程人员工作能力的重要基础部分。由于程序设计编写能力是在高级程序设计语言基础上,通过计算机体系结构、数据结构、操作系统、数据库系统、计算机网络、软件工程等综合后的提升,故程序设计教学体系成功与否,决定了学生后续课程知识能否顺利消化吸收和积累。许多计算机专业学生由于在程序设计阶段学习受挫而产生放弃的念头,而程序设计教学也容易演变为纯粹语言理论、例题式实验教学,使程序设计教学与学习严重缺乏工程性实践。

本文提出基于RoboCup仿真的程序设计教学模式,由此努力解决计算机专业大学生在程序设计学习中工程性实践严重缺失的问题。RoboCup是机器人足球世界杯赛及学术大会(The Robot World Cup Soccer Games and Conferences),它是级别最高、规模最大、影响最广泛的、国际型的计算机专业及电子专业等学子人才的圣会。1992年哥伦比亚大学Alan Mackworth教授首次提出机器人足球比赛的设想,1997年在IBM深蓝击败了国际象棋世界冠军后,世界第一届机器人足球世界杯赛及学术大会在日本名古屋拉开帷幕,从此RoboCup与国际人工智能会议同台演义,人们希望以足球比赛形式来促进科技发展。至现在RoboCup不仅已经成为计算机、电子、自动控制等专业学子展现个人优秀专业素养的最佳舞台,而且也是人工智能研究融入社会经济和文化生活的重要平台,使研究者和制造商通过加入RoboCup来展现其研究的成果和制造的产品,使大学优秀学子、研究者和制造商之间能够充分地交流与互动。现在国际性RoboCup赛事每年举行一次,国内有省级、分区性和全国性的比赛,全国比赛同时也是参加国际性比赛的选拔和准备。在RoboCup赛项中,机器人足球仿真是最早的赛项,也是现在RoboCup最高水平的赛项之一,现在已拓展到机器人救援仿真、家用机器人仿真。总部设在瑞士的国际RoboCup联合会是世界上规模最大的、占主导地位的机器人足球国际组织,联合会负责世界范围的学术活动和竞赛(每年一届的世界杯赛和学术研讨会),并为相关的本科生和研究生教育提供支持(教材、教学软件等),常年提供RoboCup仿真系统的开源代码并实时更新。

本文鉴于RoboCup仿真系统开源性的支持,在RoboCup仿真技术与计算机学科关系进行比较分析的基础上,对计算机专业的程序设计教学体系进行优化,应用RoboCup仿真系统对教学过程进行深入的讨论,为解决程序设计理论教学远离实践领域、实验教学假摔假练空洞的难题,培养计算机专业学生的创新实践能力提供了一条有效途径。

1 程序设计教学现状与问题分析

1.1 教学现状分析

由于全球化经济的社会人才需求和压力驱动,促使现在普通高校愈来愈重视学生的实践能力和创新能力培养。在计算机程序设计教学方面具体反映为:(1)在授课教学环节引入现代化教学辅助手段CAI;(2)实施理论授课与实验教学的分离;(3)加大实验课时比例;(4)业余时间开放实验室等。以此期望提高学生实际动手能力培养的目的,但收效甚微。

虽然许多教学研究者在教学手段上也做了诸多的研究和改善,但透视现行计算机学科的程序设计教学过程,依然存在以下问题:

(1)教学模式依然是以教师为中心,而不是以学生为中心;学生的学习过程仍然是围着教师转、围着考试转,而不是围着目标转,教学的根本问题尚未解决。

(2)现代化教学辅助手段CAI的使用,减轻了教师的教学负担,强化了演示效果。但是,由于CAI演示是片段式、无法实现暂留,尽管演示效果不错,学生做不到反复观察、上下文对比,笔记无法进行,造成学生课堂理解跟不上、听课效果差。

(3)现在学校的教学改革,虽然加大了实验课时比例,但同时减少了理论授课比例,使原来效果不佳的课堂教学更是雪上加霜。如果教师要在更短的时间内完成教学,他就更加依赖CAI手段、满堂灌更是变本加厉,使学生的学习效果更差,学习兴趣荡然无存。

(4)现在程序设计教学普遍重视实验教学环节,一般都为学生提供实验指导书。但是面对各种不同程度的学生,其内容必须有最低兼顾性和极强的提示性,提供程序框架和主要部分,学生按步骤、按指示做完就行了,实验缺乏自主和新意,成了新型按部就班式的实验教学,使得学生做完实验后对所学知识如何在实践中应用依然茫然、一无所知。

(5)为了解决学生课外学习的需要,许多学校业余时间开放实验室,期望学生能够很好地利用资源提高学习效果。但是,由于这种安排是散兵式的、无主题的,如果再缺乏管理其效果就微乎其微了。

2 RoboCup仿真与计算机科学与技术专业的关系

2.1 RoboCup仿真使用技术

目前RoboCup仿真赛项主要有:RoboCup 2D机器人足球赛仿真、RoboCup 3D机器人足球赛仿真、机器人救援仿真和家用机器人仿真。

RoboCup仿真使用的技术涉及计算机科学与技术学科,范围较宽,主要有:C++编程、计算机系统组成、Linux系统、网络通信、数据管理、算法、人工智能、数据挖掘、软件工程及计算机动画等技术。其应用分为3个阶段:(1)C++编程、Linux系统技术是环境操作和编码学习的基础;(2)计算机系统组成、网络通信、计算机动画、软件工程实现仿真系统架构;(3)算法、人工智能、数据挖掘技术使用实现机器人决策。

2.2 RoboCup仿真与计算机学科技术关系

2009年7月教育部高等学校计算机教学指导委员会在文献[2]中为计算机科学与技术专业确定的8门核心课程:程序设计基础、离散数学、数据结构与算法、计算机组成、操作系统、计算机网络、数据库系统原理和软件工程。2008年10月教育部高等学校计算机教学指导委员会在文献[3]中为计算机科学与技术专业实践体系确定13门课程:程序设计基础、数据结构、操作系统、编译原理、计算机图形学、人工智能、软件工程、数据库系统、数字逻辑、计算机组成、计算机体系结构、嵌入式系统和计算机网络构成的实践教学体系。

注:*是核心课程

将RoboCup仿真应用技术与计算机学科核心和实践体系标准进行对比(详见表一),可以看出:RoboCup仿真技术10项中有7项是计算机科学与技术专业的8门核心课程,有10项是计算机科学与技术专业实践教学体系规范的课程,占其10/13的比例,基本遍布计算机科学与技术核心课程及实践体系课程。可以看出:RoboCup仿真是计算机科学与技术在实践中探索和应用的一个典范,显然以RoboCup仿真系统作为计算机专业程序设计的实践学习环境是一个当然的选择。

3 基于RoboCup仿真的程序设计教学

在社会实际领域里所面临的问题,往往不是单独使用计算机科学与技术专业某一门课程教授技术所能解决的,计算机程序设计能力也不是高级程序设计语言一门课程教学所能达成的,因此计算机科学与技术专业定位于工科面向应用型。如果将开源RoboCup仿真系统引入到计算机科学与技术专业课程教学体系中,向应用型本科教学迈开重要一步就是建立优化的面向工程实践为目标的教学体系。

3.1 程序设计教学体系的优化

(1)建立计算机工程教学理念

现在社会各领域的企事业对计算机科学与技术的要求是:解决实际问题、提高劳动效率、获取更大利益,所以计算机科学与技术专业教学首先要树立解决实际问题的计算机工程理念:(1)理论为实践服务,虽然实践必须是以理论为基础的,但不能把实验与实践变成了理论教学的配角,首先要重视实验教学建设和实践探索,实际体现为:实验室要成为第一教学课堂而不是第二教学课堂,实验员要成为“讲师”和“教授”而不是“管理员”,讲师和教授要成为实验室的“实验员”而不是空洞的理论讲师和教授,这样才能真正地促进理论教学和实验教学;(2)下水游泳、在游泳中学游泳、真学真练、真练真摔,使学生获得的第一体验就是实践与探索,要相信学生能够做到,要引导学生下水探索———第一课,既在学生预先自学有关材料的前提下教师在第一堂课首先带领学生熟悉程序设计的实验集成环境、源程序构成格式、工程新建过程、程序设计实现的过程,在教师讲授和示范下学生同时进行实验性的学习和探索,使学生逐渐将实践与探索变成一种习惯;(3)边学边用、边用边学,光下水探索不学理论是盲目实践,要边探索边学理论、边学理论边实践,这样才能使实践与探索能够进行下去,才能更加促进学生的理论学习和教师的理论教学,使理论教学很自然地进入更高的层次。

(2)计算机基础导入优化

由于现在高校入学新生在计算机基础常识、Windows操作系统、OFFICE三大应用软件方面已经具备了初步认识和简单操作掌握,甚至有少数学生在程序设计及算法方面也有一定的掌握,因此极大多数入学新生在计算机方面已经是非零基础了。根据这个情况,高校在计算机基础知识教育中除了要避免简单的重复外,对待计算机类或电子信息类专业的计算机基础课程(如:计算机导论或大学计算机基础)内容要进行优化。

(1)强化计算机专业基础知识的引入,既将开源操作系统、计算机网络、数据库系统等基础知识分阶段性的引入,其中包括:Linux操作系统、局域网络的安装配置、SQL查询和网页设计等实践性知识,通过Linux操作系统、计算机网络系统和数据库系统体系的学习、理解和使用,使计算机专业学生认识计算机应用系统构成有很好的启迪作用,而达到扩展大学生计算机知识视野的目的。

(2)提前引入高级程序设计语言基础知识,虽然高级程序设计语言种类繁多,但其基础部分构成均有相同的规律,如:高级语言的关键词汇、程序书写及构成格式、数据类型、运算符、表达式、基本控制结构等方面。根据这个规律,在计算机导论或大学计算机基础教学中,引导性地介绍C/C++、JAVA程序设计语言基础知识以及相应的学习方法。

通过上述优化,使计算机专业大学生在入学首学期的计算机基础知识课程教学过程中,就能够熟悉Linux系统环境与基本操作、局域网络系统构成与使用以及高级程序设计语言的初步,为他们在课外进一步参加计算机实践性学习提供支持性基础,也使计算机专业大学生能够根据兴趣有意识地拓展提供了选择机会。

(3)阶段性整合

在应用领域解决实际问题时往往需要使用计算机的综合技术,而绝不仅仅局限于某单门课程,故在程序设计教学时也要顺应这个需求,对相关课程进行阶段性整合。

(1)高级程序设计语言与数据结构部分整合。高级程序设计语言是一门计算机语言课程,其实施很容易变成纯粹的语言课程教学,其结果是:虽然学生完成该课程学习并通过了考试,大多数却依然找不到编程的感觉。这就要在高级程序设计语言课程的关键阶段中,嵌入数据结构的基本知识,如:在数组应用环节引入顺序表、顺序队列、顺序栈、顺序串实现及实用的案例,将授课时间比例向知识应用探索上倾斜,启发培养学生简单问题解决的主动思维和探索的能力。

(2)高级程序设计语言的过程编程与面向对象编程部分整合。虽然面向过程的编程技术是高级程序设计语言的重要构成基础,但是面向对象编程技术在实际中已经非常广泛应用,因此在程序设计语言数据类型高级知识部分嵌入面向对象编程基本知识对全面理解高级程序设计语言是必要的,如:在C语言的结构体或指针之后加入类的定义、对象实例建立及使用技术。在最后引入高级程序设计语言的可视化技术,使计算机专业大学生对高级程序设计语言技术走向有清楚的把握,更重要的是使大学生在课外实践活动中有了比较清晰的思路与自修基础。

3.2 教学过程

在计算机专业第一、二学期教学体系优化的情况下,基于RoboCup仿真的程序设计教学可以按照预备、启动、开展三个过程来实施,它与计算机专业前三学期相对应(模型详见图一)

(1)预备

在第一学期,首先要实施优化的计算机导论课程教学(包括:优化的理论授课与实验授课),同时有计划、有主题、有任务指导地进行学生自主实践学习活动(其课时与实验课同比例),并适时地开展RoboCup讲座活动,介绍RoboCup大赛项目、内容、前景及与计算机专业的关系,为计算机专业学生描绘专业学习理想蓝图。

(2)启动

在第二学期,首先要实施优化的高级程序设计语言课程教学(包括:优化的理论授课与实验授课),同时开展有计划指导、有任务驱动的Linux环境下编程的学生自主实践学习活动(其课时与实验课同比例),并适时地开展第二次RoboCup讲座活动,为基础好、能力强、有兴趣的学生进行机器人仿真知识的介绍,引导计算机专业学生在高级程序设计语言课程学习的过程中能够较深入地进行Linux环境下面向对象的编程学习,并开始RoboCup源代码的解读学习。

(3)开展

在第三学期,当计算机专业学生通过数据结构课程学习算法时,进行RoboCup仿真的选修教学,为有兴趣的学生提供RoboCup仿真知识系统的学习。并在学生自主实践课时中进行RoboCup仿真实验的学习。在仿真系统学习完成后,按兴趣方向进行球队决策设计的分组活动,在此基础上开展小组间的学习交流和比赛活动。当该阶段完成后,可以在全校开展机器人大赛活动,进一步激励计算机大学生专业学习的热情。

4 结束语

本文针对计算机专业的程序设计教学现状与问题、RoboCup仿真与计算机科学与技术专业关系分析的基础上,对提出的基于RoboCup仿真的程序设计教学体系的优化以及教学过程展开了深入讨论,为计算机科学与技术专业培养实践创新型应用人才提供了一个有效实用的教学模式,为计算机科学与技术专业教学优化与改革提供了一个可行的参考。但是,对于理工类非计算机专业学生培养应用计算机技术创新实践的能力培养模式还有待进一步研究。

参考文献

[1]教育部高等学校计算机科学与技术教学指导委员会.高等学校计算机科学与技术专业人才专业能力构成与培养[M].北京:机械工业出版社,2010.

[2]教育部高等学校计算机科学与技术教学指导委员会.高等学校计算机科学与技术专业核心课程教学实施方案[M].北京:高等教育出版社,2009.

Robocup比赛 篇5

守门员在球门区之内作直线运动,其站位和速度根据小球运行情况来决定,因此在守门员做出决策之前,必须获取小球的有关信息[1]。采用以小球为中心并结合场地划分的动态策略。如果不进行区域划分,就不能根据区域的特点进行针对性的防守,达不到动态效果。但也不是场地划分越多越好,其缺点表现在区域划分越多,其策略的设计越复杂,而且当球在快速穿越多个区域时,其防守策略可能无法平滑过渡,致使防守失误。

1 场地划分

划分场地以小球的射门角度范围作为依据。如图1所示,假设P点为门前任意一点。当α′=α时,P点和P0点对门的威胁程度相同。所有的P点构成一个对门角度相同的轨迹,这些轨迹构成分区边界的依据。

由斜率公式:

其中k1、k2分别为直线P0A和P0B的斜率,α为直线P0A和P0B的夹角。

综合式(1)、式(2)和式(3)有

从式(4)看出,具有相同威胁程度的点分布在同一个圆上。

分区如图2所示,依据小球的位置,把球场划分为危险区、次危险区[2]、低危险区和安全区。0区为守门员站位区域即球门区,1、2区为低危险区,3、4区为次危险区,5、6区为危险区,7区为安全区。

2 区域策略

以足球为中心对守门员进行防守策略设计[3,4]时,根据足球所属区域的不同分别设计,在足球位于危险区时将足球运动情况分为“向球门方向运动”和“不向球门方向运动”两个状态,对于“不向球门方向运动”状态运动方向具有多种情况,分析较为复杂,但对球门的威胁程度小于“向球门方向运动”状态时;“向球门方向运动”状态球的运动方向虽然单一,但对球门的威胁程度较大,对守门员的灵活性要求更高。

2.1 安全区的防守

在这个区域中,足球距离我方球门较远,对守门员来说基本上没有任何威胁[5]。因此,可以让守门员呆在球门前中央的位置不动,一方面可以使守门员机器人节省能量,另一方面使机器人左扑、右挡的距离最小,最大程度降低进球可能性。

2.2 低危险区的防守策略

足球运动到低危险区,由公式(4)知射门角度非常小,此时守门员快速移动到A点或者B点防守。

2.3 次危险区的防守策略

当球位于次危险区,其射门角度较低、危险区增大,在相同x坐标下次危险区离球门的直线距离大于高危险区,球由“不向球门方向运动”向“向球门方向运动”转换时,守门员的反应时间大于高危险区。

守门员站位的设计以射门角度为参考,最大限度减小射门角度。角平分线[6]和球与中点连线如图3所示,虚线dz为足球与球门中点的连线,实线da为足球射门角度的角平分线。守门员站位于dz和da中间d点防守。

2.4 危险区6区的防守策略

足球在危险区的射门角度达到极大值。足球位于该区时需根据“向球门方向运动”和“不向球门方向运动”两个状态[7]进行站位。球处于“不向球门方向运动”状态时,球可能被我方球员控制,也可能是双方反复抢球。为了防止球被敌方断掉后迅速射门,守门员采取次危险区域的方法站位;球处于“向球门方向运动”状态时,无论敌方是否射门,守门员根据球轨迹进行预站位。

2.5 危险区5区的防守策略

足球进入大禁区后射门角度达到极大值和最大值,此时守门员应采取主动出击的方式化解危机。

2.5.1 球“不向球门方向运动”状态时的防守

球“不向球门方向运动”状态时的运动情况复杂,守门员应快速运动到球所在位置前方封堵射门角度并将球撞出禁区。

2.5.2 球“向球门方向运动”状态时的防守

守门员根据次危险区和危险区6区站位后,球以非射门状态进入大禁区时速度较慢,此时应根据小球的轨迹快速运动出0区拦截。

守门员以离最近距离点位拦截点,如图4所示,守门员的拦截速度为

式(5)中Pb(xb,yb)和Pr(xr,yr)分别为球坐标和守门员坐标,vb和lb分别为球的速度和球离拦截点A的距离。

守门员以公式(5)所得到的速度运动到A点时正好与球相撞,此时容易漏球。对公式(5)进行修正得到公式(6)。

式(6)中Pb(xb,yb)和Pr(xr,yr)分别为球坐标和守门员坐标,vb和lb分别为球的速度和球离拦截点A的距离。

守门员速度拦截时先于球到达拦截点A并且在运动过程中根据球和守门员的位置调节速度防止过大超调。

3 实验结果

实验采取实地射门方法,用单一策略和动态策略分别实验。单一策略采取角平分线法进行实验;动态策略采取文中分区决策方法进行实验。实验结果如表1。

其中射门次数为球对准门的有效射门次数。

4 结语

文中介绍了将场地以射门角度为依据分区,以足球所在区域为中心,守门员分区决策的动态守门策略,对危险区域的防守进行了重点讨论,给出了参数计算公式。通过对比实验,动态策略的防守效果明显优于单一策略。在实际比赛中,取得了良好的效果。

参考文献

[1]Harvey J,Chao Cheng,Michaelson D.High-leve design of a MiroSot simulator.Micro-Robot World Cup Soccer Tournament Proceedings,1996;10(3):8—10

[2]王红宝,赵臣,王华,等.微型足球机器人守门员策略研究.哈尔滨工业大学学报,2004;36(7):884—886

[3]陈鑫,吴敏.足球机器人决策子系统设计与分析.计算技术与自动化,2001;10(4):123—146

[4]唐平,杨宜民.从宏观和微观论多智能体系统与足球机器人系统体系结构.控制理论与应用,2003;20(1):72—85

[5]kimhs,shimhs,jungmj,et al.Action selection mechanism for soccer robot.IEEE International Symposium on Computational Intelligence in Robotics and Automation,1997:382—389

[6]刘春阳,柳长安,吴克河.足球机器人的防守策略设计与分析.哈尔滨工业大学学报,2004(36):957—959

Robocup比赛 篇6

我校从2004年起组织学生参加国内外Robocup机器人竞赛, 并取得了较好的成绩:2004年中国机器人大赛Robocup 2D仿真组冠军;2009年伊朗机器人国际公开赛3D仿真组季军;2010年新加坡世界杯3D仿真组冠军;2011年土耳其世界杯3D仿真组季军;2011年中国机器人公开赛3D仿真组冠军;2011年江苏省机器人大赛3D仿真组冠军等等。机器人竞赛的全面开展对提升我校电类专业学生的创新实践能力和增强就业竞争力发挥了积极作用, 也加深了我们对自动化类课程实践教学重要性和必要性的认识, 强化了我们对学生动手能力的训练, 促进了我们对学生基本素质的培养。

学生创新实践能力通过机器人竞赛的成绩来体现, 并在竞赛实施过程中得以培养和提高。近年来, 我们贯彻教育部质量工程建设, 在实施机器人竞赛过程中, 以校级大学生机器人创新基地为龙头, 积极开展教学改革。在教学团队建设、课程体系建设、注重实践教学、重视学生第二课堂等方面全面开展了大学生创新与实践能力培养新途径的探索。开展了如何培养学生的兴趣、如何在实验中发挥学生的主体作用、如何鼓励学生利用课余时间进行电子系统开发、如何营造创新环境、如何培养学生的创新意识、如何提高学生的创新能力、如何激发教师的指导热情等课题研究, 积累了一定的经验, 取得了一定的成效。在这过程中逐步形成了一个竞赛经验丰富的教学团队和一套卓有成效的竞赛培训体系。但是如何以机器人竞赛为载体, 促进大学生创新与实践能力培养, 我们还有很多需要探索和改进的地方, 本文从以下几个方面进行改革。

一、竞赛教材的编写

以培养学生的创新实践能力为目标, 完善培训课程设置、完善培训教学大纲、完善培训教材。建立完善的培训教学计划和培训体系。形成一年级普及兴趣班、二年级提高班、三年级综合班、暑期强化集训班的层次化集训体系, 分别编写相关行之有效的集训教材;建立完善的、随着科技进步不断更新优化的实验教学体系;不断研制开发综合性、设计性培训实验项目。

设计一个参加Robocup球队, 根本问题是设计一个多智能体系统, 能够进行实时的反应, 表现出目标指导的理性行为。目标与环境动态的实时变化, 由于足球比赛的状态空间极大, 不可能用手工的方法来编码所有可能的情形和智能体的行为。这使智能体能学习如何有策略的进行比赛变得极为重要, 因此必须对课程的内容进行合理地选择。我们的选择思路是尽量涵盖机器人学的主要内容, 使学生对机器人有一个整体的认识, 同时必须突出重点, 深入浅出, 使学生掌握课程的关键知识。因此, 选择仿人机器人和轮式机器人为对象, 以机器人运动学、动力学和控制系统设计为主线, 机器人传感器主要介绍光电编码器和视觉传感器, 驱动器重点介绍直流伺服电机和舵机。机器人运动学和动力学部分主要难点是复杂的空间变换、运动学和动力学关系, 这些内容即使对机械类的学生来说学起来也是相当困难的。如果要求学生完全掌握是不符合实际的, 而且过多地纠缠在复杂的公式推导, 学生难以理解反而会失去兴趣。因此, 在讲授过程中简要介绍坐标变换、运动学和动力学原理。这样, 学生以相对简单的对象进行学习, 再通过仿真试验就可以对运动学和动力学原理有比较深的理解。认识到复杂的机器人系统不过是计算过程比较复杂而已, 这一点对增强学生信心是非常重要的。在智能体协作方面, 通过简化的人类足球赛策略模式, 加以改进提升, 形成有效的进攻与防守策略, 让高智能算法理解起来不会太困难, 这样改革教学内容和讲授方式可以减轻学生心理压力, 进而学好本门课程的内容。

二、智能机器人实验平台建设

智能机器人实验平台主要包括轮式机器人实验系统和类人机器人实验系统两个主流的机器人平台。通过这两个平台的建设提高学生的动手和创新能力。

依托与网络机器人中央地方共建实验室的建设, 建立轮式机器人实验系统, 系统中机器人配备摄像头、激光和声纳等传感器, 学生可以从中学习信息如何进行采集、如何进行处理和如何进行利用等多种知识, 学习如何编写程序实现一系列的功能。

在类人机器人实验系统中, 机器人各关节的运动及运动姿态由位于关节处的电机控制, 依据所使用的电机个数的不同, 机器人有不同的自由度, 训练学生通过控制电机来实现机器人的行走、舞蹈及踢球等各种动作, 将书本上的运动学及逆运动学的知识生动地再现。

三、学生兴趣的培养

兴趣是最好的老师。依托学院机器人竞赛创新基地和学生组织“Apollo社团”, 进行科学的培训与管理, 促进学生的素质与素养得到整体提高。培养的具体方法如下。

1. 实验场所、实验设备、实验器材和文献

资料对参赛同学全天候开放, 分层次制订培训计划, 使不同层次的学生都以最快的进度完成计划内容, 让每一个参赛学生都能获得充实感、成就感。

2. 树立培训榜样, 使骨干队员充满自豪感, 全力引跑, 形成一种“比、学、赶、帮”的气氛。

3. 建立竞赛获奖光荣榜, 进行优秀作品展示, 长期激励低年级同学。

4. 积极邀请机器人方面的专家、应用能力强的优秀教师、高年级优秀获奖选手做学术和学习经验报告。

在培养学生的创新意识方面, 我们进行过一些有益的尝试。如2010年机器人世界杯竞赛, 学生任彦达、李立森、黄文伟应用自己所学的数学知识, 完成了仿人机器人的全向行走、远距离射门、快速起身等动作的设计, 并用一个多月的时间完成了算法的调试, 最后在竞赛中取得了优异的成绩。由策划设计到实现调试, 到答辩交流, 整个过程和经历让学生终生难忘。机器人竞赛的操作性很强, 侧重于锻炼学生的动手能力。竞赛使那些具有良好的理论基础、实践动手能力强, 特别是具有创新意识和协作精神的学生有了施展自己才能的空间。在目前就业形势严峻的情况下, 参加过我们集训的同学其实践能力都较为突出, 在毕业时都找到了较为满意的工作, 并得到用人单位的好评。今后我们将在集训项目的选择、竞赛指导的安排上进一步强化学生实践能力的培养。

此项工作得到南京邮电大学通达学院教改项目 (TD00511JG11) 、南京邮电大学教改项目 (JG00511J79、JG00511J78) 资助。

上一篇:ARINC429总线下一篇:公司效益审计改革探讨