APP下载

智能游戏开发与设计课程建设探讨

2011-12-31

计算机教育 2011年15期

  摘要:针对智能科学与技术专业智能游戏开发与设计课程建设现状,在分析重庆邮电大学针对该专业提出的几个特色专业方向、以及面临的课程建设等问题的基础上,阐述针对智能科学与技术专业特点而设置的智能游戏开发与设计课程的教学目标、教学要求和教学内容设置;同时,对考核方式和教材建设等问题进行探讨。
  关键词:人工智能;智能游戏;智能科学与技术
  
  智能科学与技术本科教育在我国已经走过6年的历程,继北京大学率先在国内建立智能科学与技术本科专业之后,相继有17所高校经教育部批准设立了智能科学与技术本科专业。从专业建设经验及成果来看,其中很重要的一点就是“优化核心课程体系,突出特色专业课程”[1]。
  自2009年以来,重庆邮电大学相继招收了两届智能科学与技术新专业学生,笔者承担导师工作,与学生接触密切,同时,从事智能信息处理教学科研工作。在工作中,我们发现专业特色一直是教师和学生共同关注的问题。
  近年来,我校计算机科学与技术学科建设取得明显成绩,成为中国人工智能学会粗糙集与软计算专业委员会的挂靠单位,在智能科学与技术涉及领域的智能信息处理、计算智能、网络智能、文本分类、图像处理等研究方向上取得丰硕成果。因此,在新专业的建设中,针对如何突出专业特色,我们在专业课程规划中提出两个主要的特色方向:一个是智能信息处理方向,它包括数据挖掘、智能计算技术等课程;另一个是智能游戏开发方向,它主要包括多媒体技术、智能游戏开发与设计等课程。
  我校的第一届智能科学与技术专业学生即将进入三年级的专业学习,我们面临着新课程的建设任务。鉴于以前的研究基础,我们在智能信息处理课程建设方面占明显优势,而智能游戏开发课程建设相对薄弱。因此,本文将主要针对智能游戏开发与设计课程建设进行讨论。本文研究内容主要包括:教学目标与基本要求、教学内容的具体设计、对其他教学因素的思考,如考核方式、教学方式改革及教材的选择。
  1游戏与教育
  在此,我们先讨论对游戏的看法。游戏不是简单的“玩”,而是要“从游戏中学会生存”。作为对生存过程的一种模拟,游戏创造了一种虚拟环境,把受体放在媒体之中,使受体自己判断、决策和动作,通过反复操作媒体获得某种能力。数千万年以来,游戏使用着更直接的沉浸手段,让后代在沉浸中得到更实际的生存锻炼[2]。由此可见,作为功能的界定,与游戏更接近的社会部类是教育,而不仅仅或不主要是娱乐。
  美国在这方面走在了全世界的前面,他们有许多成功的经典严肃的游戏作品,比如,《美国陆军》就被美国国防部用于征兵,《紧急事件指挥官》被用于演练应灾、救灾,《虚拟训练银行》为银行提供财务分析和风险管理培训,《销售员世界》对销售进行培训,《神偷卡门》和《万能的数学》用于中小学市场,等等。游戏产业在美国发展迅猛,占据全美每年上千亿美元企业培训市场的相当份额,而且还在以惊人的速度增长[3-4]。
  可见,游戏与教育也是密不可分的,国内已有多所大学开设了游戏设计课程,如北京邮电大学、首都师范大学等[5-6]。2010年新设置智能科学与技术专业的中南大学也拟开设人工智能与游戏编程课程[7]。
  游戏设计虽然涉及多门学科,但其作为应用并没有形成一门单独的理论。在国内,动漫游戏已经得到了一定的发展,动漫游戏专业教育是艺术与技术结合、理论与技能结合、创作与经营结合等形成的综合性教育体系[8]。
  那么,智能科学与技术专业开设游戏设计课程要有自己的特点,就必须在教学中突出“智能”的特点,即在游戏设计与开发中体现智能,或者说如何将人工智能技术应用到游戏设计与开发中。谈到智能游戏,我们的教学资源还很有限,很难找到一本合适的本科生教材,从人工智能角度来讨论游戏的书不多,且多为国外学者所著,不适合直接用做国内学生的教材,因此,本文正是就此课程的具体建设展开讨论。
  2教学目标与基本要求
  我校智能游戏开发与设计课程主要是面向智能科学与技术专业3年级的学生,在3年级第二学期开设。
  本课程先修课程包括4个方面:1)基本数学理论知识:高等数学与线性代数;2)计算机编程方面的知识:C/C++或其他有绘图功能的编程语言和数据结构课程等,学生最好已经熟练掌握一门面向对象程序设计语言(如VC++);3)关于人工智能技术方面,我校开设的先修课程有算法分析与设计、数据挖掘、机器智能等有关课程;4)关于图形处理基础知识,我校针对计算机与智能大类专业培养中在第5学期开设了计算机图形学与多媒体技术课程,学生最好先选学其中一门课程。
  在课程设置方面,上述前三方面的课程基本上都是必修课程,这需要我们在指导学生选课时,给予他们一些对于课程关系上的介绍。本课程后继课程,我校开设的是机器视觉与人机接口等任选课程。
  教学目标:本课程向学生介绍计算机游戏动画的基本原理和最新进展,为学生将来利用人工智能技术以及游戏设计技术奠定必要的基础。
  本课程教学基本要求:通过学习使学生了解游戏设计与虚拟现实的基本概念和相关术语及其基本设计方法,基本掌握计算机游戏动画的最新概况、游戏程序设计概览、二维游戏的基本编程技术、三维游戏动画的基本编程技术、三维游戏场景的组织与绘制、游戏中的高级图形技术、游戏中的音频编程、游戏中的人机界面技术、人工智能在游戏中的应用等。
  基于这样的教学基本要求,本课程有两个重要内容:一个是人工智能技术如何在游戏设计中应用,一个是一般游戏设计技术。显然,第一方面是我们的重点内容,也是体现课程特色的方面。对此,我们采用理论结合实际的理念,将学生已经具备的人工智能理论知识与游戏设计的具体应用联系起来。这样,学生就不会觉得理论知识太抽象,并且可以很好地将理论与实践结合。至于第二方面,游戏设计与开发主要从设计模式上入手,借助多媒体平台进行讲授。我校将该课程作为专业方向特色课程进行建设,教学要求上规划了48个学时。
  3教学内容
  本节将具体介绍教学内容安排以及拟使用的参考书籍。
  1) 游戏程序设计概论(2学时)。概论部分主要介绍计算机游戏的基本概念、游戏类型、特点以及目前国际上该领域的研究和应用情况。
  2) 游戏中的数学和物理基础知识(4学时)。考虑到没有学过计算机图形学的同学需要对此有一定了解,本部分内容主要是对所学相关知识的复习。
  3) 二维游戏的基本编程(10学时)。游戏的基本流程和体系结构、游戏开发的基本理念及方法、游戏引擎简介、游戏的调试与测试、游戏开发的准则和“忠告”、游戏编程人员的基本素质要求。
  以VC++游戏开发典型案例(五子棋)为例[9]讲解,包括五子棋游戏的各种文档的制作、游戏界面的设计、网络通信协议介绍、核心算法的设计等。重点突出人工智能搜索算法的应用。
  4) 三维游戏的基本编程。三维游戏场景的组织和绘制:三维场景的组织与管理、游戏场景的几何优化、三维场景的快速可见性判断与消隐、地形场景的绘制与漫游、三维游戏场景中的碰撞检测(6学时)。
  三维动画的基本编程技术:三维动画技术概述、关键帧动画技术、基于动作捕捉的动画技术、脚本驱动的动画技术(4学时)。
  游戏中的音频编程:声音基础、三维音效生成、常见的声音引擎简介(2学时)。
  游戏中的人机界面技术:游戏的可玩性与人机界面、用户界面设计基础。(2学时)。
  以一个具体的案例学习上述内容,案例集成[10] (2学时)。
  
  5) 人工智能在三维游戏动画中的应用[11](14学时)。
  6) 课程总结(2学时)。在以上课程内容的安排中,关键点是第5方面内容的具体选择。因为,授课对象是本科生,教学中涉及到的人工智能技术难度不能太大,目前,我们正在探索采用哪些算法授课。
  针对第5方面的教学内容,我们有以下几方面的教学设想。1)以遗传算法、决策树、模糊理论、神经网络等为例介绍这些相关算法如何在计算机语言中实现以及如何应用在游戏设计中。2)结合第4部分的三维游戏实例,介绍相关人工智能算法在游戏中的应用。比如通过遗传算法进化出完美的洞穴巨人。
  4其他问题
  该课程实践性比较强,所以,教学过程中,我们希望通过加强案例学习的方式使学生对以前学习过的人工智能算法有更直观的体验,这对教师提出了新的要求,即如何组织案例教学。一是进行完整案例教学还缺乏相关教学资源,教师要自己编写相关教学材料。另外,为了进一步加强学生动手能力,我们可以考虑项目设计的方式,在算法分析与设计课程中采用“大作业”的方式,以带动学生的学习积极性[12]。对此,我们要求学生课后分组完成一个游戏项目设计,学生可以根据其兴趣爱好以及实际的编程能力选择相关游戏设计题目以及游戏类型。
  由于该课程实践性强,因此,考核时应考虑提高项目设计分值,比如,占总成绩的40%。此外,该课程涉及的内容比较多,建议开卷考试,目的主要是检测学生对知识的掌握程度,以及运行知识和解决问题的能力。
  5结语
  智能游戏开发与设计课程是我校正在建设中的一门新课程,我们在文章中针对其教学目标与要求、教学内容、考核方式展开探讨,但在教学实践过程中,我们还会发现许多考虑不周或欠缺之处,我们需要向其他学校学习并且在教学实践进一步提高,以使这门课程的教学更加完善。
  
  参考文献:
  [1]