一种关于进化算法的实验教学方法和系统技术方案

技术编号:23213312 阅读:26 留言:0更新日期:2020-01-31 22:03
一种关于进化算法的实验教学方法和系统。其目的是实现让所有学生同做一个实验,并且让学生深度参与到进化算法运行过程的中间步骤决策当中。本发明专利技术的方法和系统利用手机APP让上实验课的所有学生扮演进化算法中的智体群,每个学生是智体群中的一个智体。而老师在手机APP上负责问题设置、进化算法参数设置、以及算法运行进度控制。学生扮演的智体可以按进化算法的工作机理在APP上进行各自的决策行为。当所有智体完成各自的决策行为后,老师控制算法运行进入下一代智体群;学生又在新一代智体群中扮演智体进行决策行为。如此反复,直到进化算法的停止运行条件满足。实验最终输出结果是所有学生共同深度参与同一个进化算法运行过程的中间步骤决策的结果。

An experimental teaching method and system about evolutionary algorithm

【技术实现步骤摘要】
一种关于进化算法的实验教学方法和系统
:本专利技术提供了一种关于进化算法的实验教学方法和系统,属于人工智能教学培训领域。
技术介绍
:人工智能是现今一个最热门的科学
,既是国家的一项重大科技发展战略方向,也是企业机构争相研发应用的技术,社会上也出现了学习人工智能技术的学习热潮。许多大学除了在传统专业院系开设的专业课级别的人工智能课程外,还面向全校所有专业的学生开设全校通识性人工智能选修课;社会上的商业培训机构也开始大量开设各种形式的人工智能培训课程。进化算法是一项重要的人工智能技术,一般是大学所开设的人工智能专业课和选修课都必须包括的内容。学习进化算法,除了理论知识技术的学习外,通常还需要一些实验教学,以便学生能够更好地理解和掌握所学习的理论知识技术。现有的关于进化算法的实验教学方法通常可以分为两大类。一类是让学生上机自己编写一个进化算法的小程序,另一类是让学生使用一些现有的进化算法软件包解决一个小问题。第一类实验教学方法对学生的相关专业知识和技能要求较高,一般只适用于人工智能专业课学生,难以适用于全校通识选修课学生。第二类实验教学方法只能让学生感受到进化算法软件包的外表功能,而难以体会和理解到进化算法内部的工作机理。事实上,既便是第一类实验教学方法,学生经常也只是将书本上描述的进化算法工作机理机械地转换为程序代码,一旦编好程序,程序运行时进化算法的工作机理到底是怎么运作怎样起作用的,学生也体会不到,因为程序在计算机上运行的内部过程对学生一般是不可见的,学生一般仍然只能看到程序运行的最终结果。虽然有一些进化算法软件也可以显示运行过程的中间步骤数据,一些好学生在编程时也会强制程序在运行过程中输出中间步骤数据,但是,这些中间步骤数据只能看,不能改。即,进化算法软件也好,学生编的程序也好,一旦在计算机上运行起来,其中间步骤的运算过程就不再受学生控制;学生对于一个正在运行的进化算法程序,只是一个旁观者,而不是一个参与者。设想一下,如果学生能够成为一个正在运行的进化算法程序的过程参与者,即如果进化算法运行过程中的某一个步骤该怎么往下发展进行,是可以由学生根据进化算法工作机理来人为选择决定的话,那实验过后,学生就能对进化算法工作机理有非常深刻的体会和理解,而不仅仅是看见了一堆无需自己参与就出现在屏幕上的数据。目前的两大类关于进化算法的实验教学方法都无法带给学生上述的深度参与感。目前的两大类关于进化算法的实验教学方法的另外一个弊端就是:不论是使用现成的进化算法软件,还是学生自己动手编写程序,通常都是学生各自做各自的实验,所有学生的实验彼此之间没有联系,认真的学生可能会把实验做得很好,而不认真的学生可能就是混个出勤,实验只是问问抄抄他人的数据而已;由于带实验的老师人数精力有限,很难监督到每个学生;尤其是全校通识性选修课,由于人工智能的热度,选课学生可以达数百人,现有的两大类关于进化算法的实验教学方法很难监督到每个学生的实验质量。设想一下,如果能让所有学生同做一个实验,任何一个学生不作为实验就无法进行,那么就可以有效避免学生实验课混出勤的情况。本专利技术提出一种关于进化算法的实验教学方法和系统,就是要让所有学生共同一起做一个进化算法实验,并且要让学生深度参与到进化算法运行过程的中间步骤决策当中,从而既能有效避免学生实验课混出勤的情况,又能加深学生对进化算法工作机理的体会和理解。
技术实现思路
:本专利技术的目的是要提供一种关于进化算法的实验教学方法和系统,以实现让所有学生共同一起做一个进化算法实验,而不是彼此独立地各做各的进化算法实验;并且还要实现让学生深度参与到进化算法运行过程的中间步骤决策当中,而不是只做进化算法运行过程的旁观者和进化算法输出数据的记录者。为实现上述目的,本专利技术的技术和系统利用实验教学APP,即实验教学应用程序,包括老师APP和学生APP两部分。众所周知,进化算法是模仿各种生物界群体进化行为的多智体自组织随机搜索算法,利用计算机技术模拟智体群中智体基于特定自组织机理的彼此交互行为并不断进化智体群,从而找到待求解问题的高质量解。本专利技术的方法和系统利用实验教学APP让上实验课的所有学生扮演进化算法中的智体群,每个学生通过自己的APP扮演智体群中的一个智体;学生扮演的智体可以按进化算法的工作机理由学生在APP上进行自主的决策行为。而老师在自己APP上负责待求解问题选择和设置、进化算法参数设置、算法运行进度控制、以及APP系统参数调整设置。当老师在APP上完成相关实验设置后,就控制进化算法实验开始进入第一代智体群,然后学生所扮演的智体就可以根据进化算法的随机规则由学生在APP上自主进行各自的第一次决策行为。当所有智体完成各自的决策行为后,所有智体各自的决策信息会上传汇总到老师的APP上。老师的APP会根据上传汇总的所有智体各自的决策信息,再根据进化算法对智体的评分规则自动计算所有智体各自的得分,并且根据所有智体各自的得分情况,按照进化算法的进化规则为每个智体定制化下一次决策行为的约束条件;请注意,这些都是老师的APP自动完成的,不需要老师采取任何操作。然后老师在APP上人工控制算法运行进入下一代智体群;学生又在新一代智体群中扮演智体并通过APP进行自主决策行为。从第二代智体群开始,APP会约束大多数智体不再按简单的随机规则进行各自的决策行为,而是要根据特定的进化算法工作机理来进行各自的决策行为,以便主要靠进化算法工作机理而非随机规则生成新一代智体群。如此反复,所有学生所扮演的智体群就能不停地进化,直到进化算法的停止运行条件得到满足。当进化算法停止运行后,当前智体群,即最后一代智体群中的得分最高的智体就是老师所选择和设置的待求解问题的高质量解;这个高质量解作为进化算法实验最终输出结果是所有学生共同深度参与同一个进化算法运行过程的中间步骤决策的结果。需要强调的是,根据目前的其他关于进化算法的实验教学方法,在一次进化算法实验的运行过程中,当智体群向下一代进化时,决定进化效果的智体决策行为是完全由计算机自动完成的,参加实验的学生只能看,而没有任何干预手段。而在本专利技术的方法和系统中,决定进化算法中智体群的进化效果的智体决策行为是由扮演智体的学生在APP上人为自主完成的,与计算机无关。因此,本专利技术的方法和系统可以使学生深度参与到进化算法实验的运行过程中,从而对进化算法的工作机理有深刻的体会和理解。当进化算法运行过程中需要从当前一代智体群向下一代智体群进化时,只要当前一代智体群中有一个扮演智体的学生没有完成决策行为,进化算法的运行过程就会停滞而无法继续,即,一次进化算法实验需要所有学生的共同参与才能完成,任何一个学生的不作为都会导致所有学生共同参与的进化算法实验不能顺利完成。这与目前的其他关于进化算法的实验教学方法有着本质的不同,在目前的其他关于进化算法的实验教学方法中,各个学生所进行的进化算法实验是彼此独立互不相关的,即,一个学生的不作为只会导致该学生自己的进化算法实验不能顺利完成,而其他学生只要认真实验,仍然可以顺利完成其自己的实验。在本专利技术的方法和系统中,没有完成决策行为的学生信息会显示在老师的APP上,从而本文档来自技高网
...

【技术保护点】
1.一种关于进化算法的实验教学方法和系统,用以实现让所有学生共同一起做一个进化算法实验,并且让学生深度参与到进化算法运行过程的中间步骤决策当中。进化算法是模仿各种生物界群体进化行为的多智体自组织随机搜索算法,利用计算机技术模拟智体群中智体基于特定自组织机理的彼此交互行为并不断进化智体群,从而找到待求解问题的高质量解;本专利技术的方法和系统利用实验教学APP,即实验教学应用程序,包括老师APP和学生APP两部分,让上实验课的所有学生扮演进化算法中的智体群,每个学生通过自己的APP扮演智体群中的一个智体;而老师在自己APP上负责待求解问题选择和设置、进化算法参数设置、算法运行进度控制、以及APP系统参数调整设置;学生扮演的智体可以按进化算法的工作机理由学生在APP上进行自主的决策行为;当老师在APP上完成相关实验设置后,就控制进化算法实验开始进入第一代智体群,然后学生所扮演的智体就可以根据进化算法的随机规则进行各自的第一次决策行为;当所有智体完成各自的决策行为后,所有智体各自的决策信息会上传汇总到老师的APP上;老师的APP会根据上传汇总的所有智体各自的决策信息,再根据进化算法对智体的评分规则自动计算所有智体各自的得分,并且根据所有智体各自的得分情况,按照进化算法的进化规则为每个智体定制化下一次决策行为的约束条件;然后老师控制算法运行进入下一代智体群;学生又在新一代智体群中扮演智体进行决策行为;从第二代智体群开始,APP会约束大多数智体不再按简单的随机规则进行各自的决策行为,而是要根据特定的进化算法工作机理来进行各自的决策行为,以便主要靠进化算法工作机理而非随机规则生成新一代智体群;如此反复,直到进化算法的停止运行条件得到满足;进化算法停止运行后,当前智体群,即最后一代智体群中的得分最高的智体就是老师所选择和设置的待求解问题的高质量解;这个高质量解作为实验最终输出结果是所有学生共同深度参与同一个进化算法运行过程的中间步骤决策的结果;当进化算法运行过程中需要从当前一代智体群向下一代智体群进化时,只要当前一代智体群中有一个扮演智体的学生没有完成决策行为,进化算法的运行过程就会停滞而无法继续;没有完成决策行为的学生信息会显示在老师的APP上,从而老师可以采取必要的协助和督促措施以帮助该学生完成其所扮演的智体的决策行为,以便进化算法的当前一代智体群能够继续向下一代智体群进化;参与实验的学生需要事先以诸如自己的学号和姓名的身份信息注册并登陆自己的APP,所以老师在进化算法运行过程中可以准确定位没有及时完成决策行为的学生。/n...

【技术特征摘要】
1.一种关于进化算法的实验教学方法和系统,用以实现让所有学生共同一起做一个进化算法实验,并且让学生深度参与到进化算法运行过程的中间步骤决策当中。进化算法是模仿各种生物界群体进化行为的多智体自组织随机搜索算法,利用计算机技术模拟智体群中智体基于特定自组织机理的彼此交互行为并不断进化智体群,从而找到待求解问题的高质量解;本发明的方法和系统利用实验教学APP,即实验教学应用程序,包括老师APP和学生APP两部分,让上实验课的所有学生扮演进化算法中的智体群,每个学生通过自己的APP扮演智体群中的一个智体;而老师在自己APP上负责待求解问题选择和设置、进化算法参数设置、算法运行进度控制、以及APP系统参数调整设置;学生扮演的智体可以按进化算法的工作机理由学生在APP上进行自主的决策行为;当老师在APP上完成相关实验设置后,就控制进化算法实验开始进入第一代智体群,然后学生所扮演的智体就可以根据进化算法的随机规则进行各自的第一次决策行为;当所有智体完成各自的决策行为后,所有智体各自的决策信息会上传汇总到老师的APP上;老师的APP会根据上传汇总的所有智体各自的决策信息,再根据进化算法对智体的评分规则自动计算所有智体各自的得分,并且根据所有智体各自的得分情况,按照进化算法的进化规则为每个智体定制化下一次决策行为的约束条件;然后老师控制算法运行进入下一代智体群;学生又在新一代智体群中扮演智体进行决策行为;从第二代智体群开始,APP会约束大多数智体不再按简单的随机规则进行各自的决策行为,而是要根据特定的进化算法工作机理来进行各自的决策行为,以便主要靠进化算法工作机理而非随机规则生成新一代智体群;如此反复,直到进化算法的停止运行条件得到满足;进化算法停止运行后,当前智体群,即最后一代智体群中的得分最高的智体就是老师所选择和设置的待求解问题的高质量解;这个高质量解作为实验最终输出结果是所有学生共同深度参与同一个进化算法运行过程的中间步骤决策的结果;当进化算法运行过程中需要从当前一代智体群向下一代智体群进化时,只要当前一代智体群中有一个扮演智体的学生没有完成决策行为,进化算法的运行过程就会停滞而无法继续;没有完成决策行为的学生信息会显示在老师的APP上,从而老师可以采取必要的协助和督促措施以帮助该学生完成其所扮演的智体的决策行为,以便进化算法的当前一代智体群能够继续向下一代智体群进化;参与实验的学生需要事先以诸如自己的学号和姓名的身份信息注册并登陆自己的APP,所以老师在进化算法运行过程中可以准确定位没有及时完成决策行为的学生。


2.根据权利要求1所述的一种关于进化算法的实验教学方法和系统,其特征是:如果进化算法实验是关于遗传算法的,即关于GeneticAlgorithm,则当老师的APP在根据上传汇总的所有智体各自的决策信息而自动算出所有智体各自的得分后,需要按照进化算法的进化规则为每个智体定制化下一次决策行为的约束条件时,老师的APP会按老师在实验开始前所设定的算法参数之一的变异概率自动选定一些智体,扮演这些智体的学生在下一次决策时只能对自己APP上的智体染色体进行变异操作,即,学生自主选择自己所扮演智体的染色体中的一个基因,然后学生在由待求解问题所给定的相关值域中自主选择一个数值以替换该基因的当前数值;老师的APP还会按老师在实验开始前所设定的算法参数之一的交叉概率自动选定一些智体,扮演这些智体的学生在下一次决策时只能对自己APP上的智体染色体进行交叉操作,即,老师的APP会自动成对选取智体,选出一对智体后,老师的APP还会自动从中选出一个智体作为主导交叉操作的智体,另一个智体则为被动交叉智体,扮演被选中那对智体的学生在各自的APP上都能看见对方智体,扮演主导交叉操作的智体的学生在两个智体染色体中自主选择一个交叉基因位,然后在所选交叉基因位对两个智体染色体进行交叉操作,生成两个新的智体染色体,扮演主导交叉操作的智体的学生选择其中一个作为自己的新智体染色体,扮演被动交叉智体的学生则无需做任何决策,而是直接接受另一个新的智体染色体。


3.根据权利要求1所述的一种关于进化算法的实验教学方法和系统,其特征是:如果进化算法实验是关于蚁群算法的,即关于AntColonyOptimization,则当老师的APP在根据上传汇总的所有智体各自的决策信息而自动算出所有智体各自的得分后,需要按照进化算法的进化规则为每个智体定制化下一次决策行为的约束条件时,老师的APP会根据老师在实验开始前所设定的蚂蚁荷尔蒙信息素分泌函数,基于当前智体群中所有智体蚂蚁在待求解问题的解空间中所爬行过的路径,自动计算出所有可以供蚂蚁选择的路径步骤上由当前智体群中所有智体蚂蚁所分泌留下的荷尔蒙信息素浓度,并与每个可选路径步骤上的现有荷尔蒙信息素浓度各自相叠加;当下一代智体群中的每个智体蚂蚁重新在待求解问题的解空间中搜寻路径时,将参照各个可选路径步骤上的荷尔蒙信息素浓度决定选择哪些路径步骤以构成一条新的路径,即,扮演下一代智体群中的智体蚂蚁的学生需要在自己的APP上参照各个可选路径步骤上的荷尔蒙信息素浓度自主选择一条新的路径;当下一代智体群中的所有智体蚂蚁都选好了新的路径后,老师的APP会根据老师在实验开始前...

【专利技术属性】
技术研发人员:胡小兵
申请(专利权)人:中国民航大学
类型:发明
国别省市:天津;12

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1