首先,我想了解SCIDvsPC项目的工作。我知道基础的SCID已经在很多年前停止了,开发人员在扩展它并为国际象棋领域做出贡献方面做得很好。我们学院的第六学期有一个小项目。我们决定在Chess Next Move Analyzer上启动一个基于各种过滤器并实现自学和机器学习的项目。
过去两个月我一直在研究项目构想。实际上我们需要导入一些过滤器上定义的几个游戏,并从生成的PGN文件中读取和分析。例如,如果用户选择根据2000-2500的评级范围获得预测的下一个最佳移动,则我们的程序应该仅导出和分析仅具有此范围内的对手的PGN文件。我知道该项目可以做到这一切,但我对如何实现这一点感到困惑。我的意思是我必须手动输入动作,然后点击生成PGN'但是如何让我的程序执行此操作,即从用户那里获取输入(如前3次移动),让项目运行这些移动(我必须手动),然后生成PGN文件并将其保存在文件夹中。
我在网上浏览与Windows中的GUI元素交互(我们也没有使用Linux的问题),并了解了Microsoft UI Automation,Python,Java和C#软件以及类似COM的内容。该软件是否支持COM或其中任何一个,或者您是否已经开发了这样的功能?请你帮我指导一下吗?
如果要求概括,我想要做的是与GUI Elements进行交互,无论是任何应用程序。以记事本为例。假设我想在其上打开一个文件,找到并替换一个特定的单词。现在,我知道如何手动执行此操作,但是当我有超过数千个文件时,我需要某种程序来为我执行此操作。在我的案例中,像SCID这样的特定程序是否有一些预先构建的功能(有关COM的读取位)来处理这个问题?这涉及哪个编程语言域?使用Linux对我有用吗?
答案 0 :(得分:1)
以记事本为例。假设我要在其上打开一个文件,找到 并替换一个特定的单词。现在,我知道如何手动完成此操作 当我有超过数千个文件时,我需要某种程序来做 这对我来说。在我的案例中,像SCID这样的特定程序有一些 功能(读取有关COM的位)预先构建来处理这个?
在哪个编程语言域中会出现这种情况?
使用Linux对我有更多帮助吗?
答案 1 :(得分:1)
@ SB87给了你一些有用的提示,我想扩大他的答案。
抱歉,我没有想到你知道你在说什么。强化学习(比自学更好的术语)和机器学习并不适合大学项目。在博士或研究水平上,考虑让自己进入大学,甚至在考虑这样的事情之前。
UI自动化是可行的,但容易出错且速度慢。如果你想这样做,你就可以编写一个控制台程序。您提到了有关用户输入的内容,您是否想要在用户鼠标键盘输入上应用机器学习?它不会起作用。国际象棋的机器学习需要成百上千的训练集。
我认为你应该淡化项目并专注于你可以实现的目标。