于延,马晓迪(哈尔滨师范大学,哈尔滨150025))
基于本体的C语言课程知识建模
于延,马晓迪
(哈尔滨师范大学,哈尔滨150025))
摘要:针对高校高级语言程序设计课程,探讨了知识库本体的概念和构建,设计了基于本体的知识表示形式。实践表明:基于本体构建的知识模型可以有效地表示知识结构,有利于智能教学系统的设计和实现。
关键词:本体;C语言;知识表示
目前,人工智能系统设计的关键技术之一就是知识的表示方法,此方法在智能教育、智能决策、智能系统分析等各个领域得到了非常广泛的应用。
不同的知识表示方式,决定了知识和知识之间关系的表示、不同系统之间知识信息的共享和复用。笔者在多年的C语言教学过程中,一直在努力研究开发一种“实用又好用”的智能教学系统。而构建智能教学系统的关键技术就是要构建一种形式化的、语义化的知识表示方法,这对于知识构建、学习者自主性学习、知识的智能管理具有十分重要的作用。为了研究智能教学系统的理论基础,提高教学系统的智能性、可扩展性和可复用性,本文研究了一种基于本体的C程序设计语言知识模型,为智能教学系统提供理论基础。
本体(Ontology)是在语义知识层面上描述人工智能领域系统常用的建模工具,是共享概念模型明确的形式化规范说明[1]。在人工智能领域,特别是对智能教学系统的研究,知识点元数据的表示和组织,利用本体思想构建知识模型是非常恰当的。
某领域M内有多个不同的主体,这些主体之间要进行信息交流,本体可以看作是它们之间进行信息交流的语义基础,是这些主体概念和概念之间关系的描述。这些描述信息可形式化地用二元组M(S,T)来表示。其中,S可以看作是领域M中的概念集合;T是领域M内所有概念之间关系的集合。本体通过对领域内知识库的建立,通过描述知识库中各知识点之间的关系,对知识内容进行逻辑扩展推理,从而完成对隐性知识的挖掘[2]。
目前,描述本体的语言主要有KIF、OWL、Loom等,常用的开发工具主要有Ontolingue、ODE、Proté gé、WebOnto等[3]。
为便于用本体理论构建C语言程序设计知识体系,我们编写了《C语言程序设计案例教程》教材,在清华大学出版社出版。该教材最大特点是优化内容编排,采用“章-节”二级目录结构,每小节由若干相对独立又相互关联的“知识单元组成”,形成独特的“章-节-知识单元”体系。
教材将传统C语言教材进行知识结构的调整,通过“章-节-知识单元”的设计,使每个知识单元规模适当、相对独立。几乎每个知识单元都以程序案例开始,让学生先认识程序、再学习知识。
构建C语言知识本体就是把C语言程序设计课程合理地分解成相对独立的知识点,并定义知识点之间的逻辑关系,从而提供可共享、可重用、可提供个性化解决方案的资源。其中,知识点包括基本概念、语句、例题和练习等,根据《C语言程序设计案例教程》教材的“章-节-知识单元”体系及各知识单元能力要求,可抽象出如图1所示的知识结构。
图1 C语言知识单元图Fig.1 C language knowledge unit chart
C语言课程的基本知识点经过以上层次化分析,每个知识点已经基本具备规模适当、相对独立的特点。为了更有效地研究基于本体的教学设计,为了更好地整合教学资源,课题研究小组采用本体编辑软件Protégé实现了课程的知识表示。本文定义了3个基本类目,分别是知识结构、能力要求和教学资源。其中在知识结构类中设置了13个子类,分别代表每一章的具体内容;在能力要求类下设置了“认识、理解、领会、运用、创新”5个子类,表明对学习者的能力要求;在教学资源下暂时设置了“程序案例、习题、微视频”3个子类,如图2所示。
图2 C语言知识点本体Fig.2 C language knowledge point ontology
其中能力要求的5个子类分别对应以下含义
认识:要求学生至少要认真阅读2遍,才能达到认识的目标。
理解:要求学生能理解知识点或程序清单中的代码,针对此知识点在面对教师或同学提问时能自如回答,要求学生对相关程序代码上机练习至少1次。
领会:要求学生能达到为其他学生讲解该知识点或程序清单的能力,能恰当运用教学方法和手段,并且能理清与关联知识点的关系,要求学生对相关程序代码上机练习至少2次。
运用:要求学生对相关程序代码上机练习至少3次以上;能在不参照任何资料的情况下,独立完成程序代码的录入、调试和执行;对此单元的知识点和代码能达到为其他学生脱稿讲解。
创新:要求学生根据本单元内的程序代码,能举一反三,自行查找资料设计同类问题,自行分析解决,并最终编写程序代码,调试运行。
在目前的人工智能领域,本体是知识建模的一种积极有效的方法[3]。将本体方法和技术引入智能教学系统的研究和开发,是一条非常有效的途径,可以很好地描述知识以及知识之间的关系,并且可以方便地挖掘隐性知识,以达到知识扩展和复用的科学目的。
参考文献:
[1]刘垣,顾君忠.本体理论及其在E-Learning中的应用[J].计算机应用与软件,2012,29(4):114-127.
[2]马斌.基于本体的VB语言程序设计知识表示方法研究[J].电脑开发与应用,2012,25(11):6-8.
[3]金芝.知识工程中的本体论研究[M].北京:清华大学出版社,2001.
Research on Ontology-based C Language Knowledge Modeling
YUYan, MAXiao-di
(Harbin Normal University,Harbin 150025,China)
Abstract:The concept and construction of knowledge base ontology is discussed in this paper, and the form of ontology-based knowledge representation is designed.Practice shows that the knowledge model based on ontology can effectively represent the knowledge structure, which is conducive to the design and implementation of intelligent tutoring system.
Key words:Ontology; Clanguage;Knowledge representation
作者简介:于延(1976-),男,黑龙江哈尔滨人,硕士,副教授,从事智能教育与数字游戏研究。
基金项目:黑龙江省自然基金“泛在学习环境下集成情境的知识建模与知识管理技术研究”(F201319);黑龙江省教育厅科技项目“基于多AGENT的智能教学系统关键技术研究”(12541247);黑龙江省应用开发研究项目“支持情境感知的智能教学系统模型及应用研究”;哈尔滨师范大学大学生创新基金项目
收稿日期:2015-12-27
中图分类号:TP312
文献标志码:A
文章编号:1674-8646(2016)02-0100-02