终于,我开始着手我的毕业设计项目——基于网络的智能职业指导系统。我的系统的核心功能是
推荐系统
我们的推荐系统将通过兴趣测试和用户的学术记录,仔细分析用户的偏好,并基于这些分析信息,为用户提供最佳的职业选择,例如计算机科学学士课程等。
- 推荐系统的输入将是学生的证件和兴趣测试。在兴趣测试中,问题将根据用户的学术历史和他在测试中给出的答案来设定,因此,测试不会对每个人提出相同的问题,而是根据系统定义的规则实时决定向哪个用户提问什么问题。
- 其输出将是基于兴趣测试决定的领域选项。
问题
当我在委员会面前辩护我的项目范围时,他们说“这是简单的if-else”,这个系统并不智能。
我的问题是,可以使用哪种人工智能技术或算法来使这个系统智能化。我已经做了很多搜索,但与我的系统相关的论文非常表面化,它们只强调想法而不是方法论。
我希望在Java中完成所有工作。如果答案是技术特定的,那就太好了。
如果我的问题不符合SO问答标准,你们可以将其转移到其他StackExchange网站。
编辑
从答案中获得一些想法后,我想实现一个基于规则和推理引擎的专家系统。现在我想在技术方面更明确地了解如何实现基于规则的引擎。经过搜索,我发现Drools是最好的,但它是否也适用于Web应用程序?我还发现Tohu是最好的动态表单生成器(这也是我的项目所需的)。我可以将Tohu与Drools一起使用来构建我的Web应用程序吗?实现这种类型的系统容易吗?
回答:
在我的毕业设计中,我曾使用过Jena RDF推理引擎。基本上,你可以用它创建一个知识库,设定规则如“如果用户选择了这个答案,他具有那个特质”和“如果用户具有这些特质,他可能适合那个工作”。将答案添加到系统中,你可以查询他的当前状态并相应地调整问题。用它创建一个概念验证非常容易,比一堆if-else更简单,如果你的教授崇拜类似Prolog的东西,他们会喜欢它的。