在多目标进化算法中,时间复杂度过高是普遍的问题,特别是三个目标函数以上时,解的等级分配占用了过多的运算时间。针对三目标问题,利用帕累托支配关系,对解的等级分配进行研究,发现经典的等级排序及分配方法存在一定的冗余操作,需对全部的解先排序后,才能再分配等级并选择下一代,造成部分不必要的运算。为减少该冗余,利用帕累托非支配关系结合差分进化,实现高效三目标进化算法。算法每次迭代对种群中最高等级的个体进行计算,在分配等级同时进行选择后代个体操作,当后代种群生成时便跳出计算,从而减少个体的计算数量,降低运算量;同时给出该方法的相关理论分析和证明过程。针对一系列三目标优化问题,将提出方法与著名排序方法NSGAⅡ及近年来优秀的ENS方法进行对比实验。仿真实验结果表明,提出方法在时间复杂度和收敛速度上优于经典方法,稍差于ENS方法。在标准测试函数DTLZ1-DTLZ6的性能上,提出方法近似于ENS方法,优于NSGAⅡ算法,从而验证了提出方法的有效性和正确性。
1
一种支持类模版和函数模版的C++双向链表,实现了各种排序算法(排序原则可定制),包含学生信息的使用示例(VC 6.0、VS2008).
2022-04-14 15:50:50 941KB C++双向链表 类模版 函数模版 排序
1
C# 多个属性排序 List Dictionary 升序降序 可以同时包含升序降序 一个类中 按属性A降序 ,然后按属性B升序 ,最后按照属性C降序
2022-04-14 13:48:31 3KB C# 多个属性排序 List
1
unity3d-reorderable-list Unity的列表控件,允许编辑器开发人员将可重新排序的列表控件添加到其GUI。 支持通用列表和序列化属性数组,尽管可以通过实现Rotorz.Games.Collections.IReorderableListAdaptor来支持其他集合类型。 $ yarn add rotorz/unity3d-reorderable-list 该软件包与工具兼容。 有关将程序​​包同步到Unity项目中的信息,请参阅工具的。 特征 拖放重新排序! 重新排序时,如果在滚动视图内,则自动滚动。 使用标记轻松自定义。 IList和SerializedProperty适配器。 订阅以添加/删除项目事件。 支持混合的项目高度。 逐项禁用拖动和/或移除。 插入插入(用于UnityEditor.DragAndDrop )。 如果需要,可以按列
2022-04-14 09:33:25 208KB unity3d unity3d-npm-package C#
1