15 个解决方案
#1
这应该算一个典型的专家系统,算法比较成熟,难度不大。
主要是你能建立一个完善描述你的需求的数据结构。
类似的问题解不是唯一的,但是你只要能找到一个解就可以。
建立一个数组,描述所有的课时,然后添加一个课程,检查全部的条件,满足则下一步,不满足则后退,换一个课程,以此类推,我95年大学曾经有一个老师用foxpro写出来的,让我佩服够呛,后来我用c++写过一个例子。
主要是你能建立一个完善描述你的需求的数据结构。
类似的问题解不是唯一的,但是你只要能找到一个解就可以。
建立一个数组,描述所有的课时,然后添加一个课程,检查全部的条件,满足则下一步,不满足则后退,换一个课程,以此类推,我95年大学曾经有一个老师用foxpro写出来的,让我佩服够呛,后来我用c++写过一个例子。
#2
pazee(耙子) :
很感谢你,我觉得你说的这个是不是有些类似与数据结构中的回溯算法--典型例子是8皇后问题!
老师提供给我的算法是用评价函数实现:
排课遵循的原则是:
1 上课时间均匀。不如数据结构课,每周上3次,最好能分在周1,周3,周5,这个是最好的,给100分,若不能的话,就分1-2-4给90分,或者是2-3-5,1-2-3就给70分。。。。自己定义,把所有的情况都列出来!
2 老师上课不连续,就是每天有4节课,1,2,3,4。最好同一教师不连续上1,2 或者3,4
可定义一个评价函数!
3 学生上课地点分布均匀。比如一门课程最好总是在一个教室上,给100分,最多不能多于3个教室!
4。节数分布均匀。就是比如大一不能老上第一节,大四不能老上第4节。。。。最好均匀
5 教室利用率
上述原则分别占%35,%30,%20,%10,%5
整个排课过程就是基于所定义的评价函数的!
可是现在我不知道该怎么用dephi来实现评价函数,是先定义呢?还是在程序运行中进行判断?
在教室数据库和教师数据库中分别取来信息,运行过程中动态生成每个教室的课程表和教师的课程表,两者重叠找出空闲的时间和地点,再遵照上述原则进行判断!不知道这个办法可行与否!望大侠指点!现在一头雾水!!
很感谢你,我觉得你说的这个是不是有些类似与数据结构中的回溯算法--典型例子是8皇后问题!
老师提供给我的算法是用评价函数实现:
排课遵循的原则是:
1 上课时间均匀。不如数据结构课,每周上3次,最好能分在周1,周3,周5,这个是最好的,给100分,若不能的话,就分1-2-4给90分,或者是2-3-5,1-2-3就给70分。。。。自己定义,把所有的情况都列出来!
2 老师上课不连续,就是每天有4节课,1,2,3,4。最好同一教师不连续上1,2 或者3,4
可定义一个评价函数!
3 学生上课地点分布均匀。比如一门课程最好总是在一个教室上,给100分,最多不能多于3个教室!
4。节数分布均匀。就是比如大一不能老上第一节,大四不能老上第4节。。。。最好均匀
5 教室利用率
上述原则分别占%35,%30,%20,%10,%5
整个排课过程就是基于所定义的评价函数的!
可是现在我不知道该怎么用dephi来实现评价函数,是先定义呢?还是在程序运行中进行判断?
在教室数据库和教师数据库中分别取来信息,运行过程中动态生成每个教室的课程表和教师的课程表,两者重叠找出空闲的时间和地点,再遵照上述原则进行判断!不知道这个办法可行与否!望大侠指点!现在一头雾水!!
#3
可以用神经网络实现,参考TSP旅行商的解法,我上2届的一个师兄做过一个.不过要注意网络收敛.
#4
谢谢,crazyworker,可是我不了解神经网络的算法
#5
请问crazyworker,你说的‘神经网络’和‘TSP旅行商的解法’在哪里可以查到??
#6
我现在的任务也是这样的这几天就要做了
#7
帮你顶一下,
不知你做的怎样了?????
不知你做的怎样了?????
#8
你这有点像A*搜索了,
你到网络上搜索一下“搜索 算法”
关于里面有很多介绍搜索中使用的评估函数的。
你到网络上搜索一下“搜索 算法”
关于里面有很多介绍搜索中使用的评估函数的。
#9
关注
#10
我想过自动排课,我也做过自动排课,但效果不太理想!!
学习学习!!
学习学习!!
#11
啊?这个问题还没结贴啊。。。加油啊。
liujiang(冥色烟火) ,‘神经网络’和‘TSP旅行商的解法’很多地方都有啊,神经网络的书一般都有介绍。不过要用hopfield来做排课表还是有些困难的,要在tsp解法的基础上自己发挥。
加油啊,dongyexue (东野雪)
liujiang(冥色烟火) ,‘神经网络’和‘TSP旅行商的解法’很多地方都有啊,神经网络的书一般都有介绍。不过要用hopfield来做排课表还是有些困难的,要在tsp解法的基础上自己发挥。
加油啊,dongyexue (东野雪)
#12
关注吧。算法不是很难。我高三时写过一个,不过是FOX,现在已经没了。
#13
study
#14
Waiting~~~
#15
楼主大概把这张帖子给忘了吧???!1!
#1
这应该算一个典型的专家系统,算法比较成熟,难度不大。
主要是你能建立一个完善描述你的需求的数据结构。
类似的问题解不是唯一的,但是你只要能找到一个解就可以。
建立一个数组,描述所有的课时,然后添加一个课程,检查全部的条件,满足则下一步,不满足则后退,换一个课程,以此类推,我95年大学曾经有一个老师用foxpro写出来的,让我佩服够呛,后来我用c++写过一个例子。
主要是你能建立一个完善描述你的需求的数据结构。
类似的问题解不是唯一的,但是你只要能找到一个解就可以。
建立一个数组,描述所有的课时,然后添加一个课程,检查全部的条件,满足则下一步,不满足则后退,换一个课程,以此类推,我95年大学曾经有一个老师用foxpro写出来的,让我佩服够呛,后来我用c++写过一个例子。
#2
pazee(耙子) :
很感谢你,我觉得你说的这个是不是有些类似与数据结构中的回溯算法--典型例子是8皇后问题!
老师提供给我的算法是用评价函数实现:
排课遵循的原则是:
1 上课时间均匀。不如数据结构课,每周上3次,最好能分在周1,周3,周5,这个是最好的,给100分,若不能的话,就分1-2-4给90分,或者是2-3-5,1-2-3就给70分。。。。自己定义,把所有的情况都列出来!
2 老师上课不连续,就是每天有4节课,1,2,3,4。最好同一教师不连续上1,2 或者3,4
可定义一个评价函数!
3 学生上课地点分布均匀。比如一门课程最好总是在一个教室上,给100分,最多不能多于3个教室!
4。节数分布均匀。就是比如大一不能老上第一节,大四不能老上第4节。。。。最好均匀
5 教室利用率
上述原则分别占%35,%30,%20,%10,%5
整个排课过程就是基于所定义的评价函数的!
可是现在我不知道该怎么用dephi来实现评价函数,是先定义呢?还是在程序运行中进行判断?
在教室数据库和教师数据库中分别取来信息,运行过程中动态生成每个教室的课程表和教师的课程表,两者重叠找出空闲的时间和地点,再遵照上述原则进行判断!不知道这个办法可行与否!望大侠指点!现在一头雾水!!
很感谢你,我觉得你说的这个是不是有些类似与数据结构中的回溯算法--典型例子是8皇后问题!
老师提供给我的算法是用评价函数实现:
排课遵循的原则是:
1 上课时间均匀。不如数据结构课,每周上3次,最好能分在周1,周3,周5,这个是最好的,给100分,若不能的话,就分1-2-4给90分,或者是2-3-5,1-2-3就给70分。。。。自己定义,把所有的情况都列出来!
2 老师上课不连续,就是每天有4节课,1,2,3,4。最好同一教师不连续上1,2 或者3,4
可定义一个评价函数!
3 学生上课地点分布均匀。比如一门课程最好总是在一个教室上,给100分,最多不能多于3个教室!
4。节数分布均匀。就是比如大一不能老上第一节,大四不能老上第4节。。。。最好均匀
5 教室利用率
上述原则分别占%35,%30,%20,%10,%5
整个排课过程就是基于所定义的评价函数的!
可是现在我不知道该怎么用dephi来实现评价函数,是先定义呢?还是在程序运行中进行判断?
在教室数据库和教师数据库中分别取来信息,运行过程中动态生成每个教室的课程表和教师的课程表,两者重叠找出空闲的时间和地点,再遵照上述原则进行判断!不知道这个办法可行与否!望大侠指点!现在一头雾水!!
#3
可以用神经网络实现,参考TSP旅行商的解法,我上2届的一个师兄做过一个.不过要注意网络收敛.
#4
谢谢,crazyworker,可是我不了解神经网络的算法
#5
请问crazyworker,你说的‘神经网络’和‘TSP旅行商的解法’在哪里可以查到??
#6
我现在的任务也是这样的这几天就要做了
#7
帮你顶一下,
不知你做的怎样了?????
不知你做的怎样了?????
#8
你这有点像A*搜索了,
你到网络上搜索一下“搜索 算法”
关于里面有很多介绍搜索中使用的评估函数的。
你到网络上搜索一下“搜索 算法”
关于里面有很多介绍搜索中使用的评估函数的。
#9
关注
#10
我想过自动排课,我也做过自动排课,但效果不太理想!!
学习学习!!
学习学习!!
#11
啊?这个问题还没结贴啊。。。加油啊。
liujiang(冥色烟火) ,‘神经网络’和‘TSP旅行商的解法’很多地方都有啊,神经网络的书一般都有介绍。不过要用hopfield来做排课表还是有些困难的,要在tsp解法的基础上自己发挥。
加油啊,dongyexue (东野雪)
liujiang(冥色烟火) ,‘神经网络’和‘TSP旅行商的解法’很多地方都有啊,神经网络的书一般都有介绍。不过要用hopfield来做排课表还是有些困难的,要在tsp解法的基础上自己发挥。
加油啊,dongyexue (东野雪)
#12
关注吧。算法不是很难。我高三时写过一个,不过是FOX,现在已经没了。
#13
study
#14
Waiting~~~
#15
楼主大概把这张帖子给忘了吧???!1!