2017-02-18 7 views
-2

まず、SCIDvsPCプロジェクトの作業に感謝したいと思います。私は基本的なSCIDの1つが長年中止され、開発者はそれを拡張し、チェスフィールドのために彼のシェアを尽くして素晴らしい仕事をしたことを知っています。私たちは、この第6学期のマイナープロジェクトを行います。私たちは、さまざまなフィルタに基づいたChess Next Move Analyzerでプロジェクトを開始し、自己学習と機械学習を実装することに決めました。WindowsアプリケーションのGUI要素との相互作用

私は過去2ヶ月間のプロジェクトアイデアについて研究してきました。実際には、いくつかのフィルタで定義されたいくつかのゲームを読み込み、生成されたPGNファイルから読み込んで分析する必要があります。たとえば、ユーザーが2000〜2500の評価範囲に従って予測された次の最良の動きを得ることを選択した場合、このプログラムは、この範囲の両方の相手しか持たないPGNファイルのみをエクスポートして分析する必要があります。私はプロジェクトがこれをすべて行うことができることを知っていますが、私はこれを自動化する方法について混乱しています。私は手動で移動を入力してから 'Generate PGN'をクリックする必要がありますが、私のプログラムはこれを行う方法(最初の3回の移動のように)を入力してください。 )、PGNファイルを生成してフォルダに保存します。

WindowsのGUI要素とのやりとりについてネットサーフィンしたところ、Linuxでの作業には問題はありませんでした.Microsoft UIオートメーション、Python、Java、C#などのCOMについて知りました。ソフトウェアはCOMまたはこれらのいずれかをサポートしていますか、またはこのようないくつかの機能を既に開発していますか?これで私を導くことができますか?

これを一般化するように頼まれたら、私はGUIエレメントとやり取りすることです。メモ帳を例に取る。ファイルを開き、特定の単語を見つけて置き換えたいとします。さて、私は手動でこれを行う方法を知っていますが、何千ものファイルを持っていると、私のために何らかのプログラムが必要になります。私の場合、SCIDのようないくつかの特定のプログラムは、これを処理するために事前に構築されたいくつかの機能(COMについての読み取りビット)を持っていますか?どのプログラミング言語ドメインでこれが起こりますか? Linuxを使用していますか?

+0

本当にGUI要素を自動化する必要がある場合は、Autoit/Autohotkeyを使用します。しかし、コマンドラインインターフェースが利用可能であれば(Linuxでもっと一般的かもしれません)、または最後にメモ帳の例でテキストファイルを直接読み書きするだけで、コマンドラインインターフェースを使用する方が簡単です。 – Richard

答えて

1

例としてメモ帳を取ります。ファイルを開き、 を見つけて特定の単語を置き換えたいとします。今、私は手動でこれを行う方法を知っていますが、私は何千ものファイルを持っているときに 私にこれを行うには何らかの種類のプログラムが必要です。私の場合、SCIDのようないくつかの特定のプログラムは、これを処理するために予め組み込まれた 機能(COMについての読み取りビット)を持っていますか?

  • あなたの状況は非常に特異的であるように聞こえるので、私はあなたのためにこれを行うには、既存のプログラムを見つけることができるようになりますかどうかを疑います。意味:自分でコードを作成する必要があります。

どのプログラミング言語ドメインでこれが起こりますか?

  • まあ、これはおそらく、多くの、多くの異なるプログラミング言語で行うことができます。シンプルなシェルスクリプトは、あなたが与えたメモ帳の例を実現することができます。

Linuxを使用していますか?

  • いいえ、あなたの目標は、Windows、MacOSのか、Linuxディストリビューションに書き込むかどうか、簡単なシェルスクリプトによってかなり達成可能であるように見えます。
1

@ SB87が役に立つヒントをくれたので、私は彼の答えを広げたいと思います。

  • 申し訳ありませんが、私はあなたが何を言ってるのか知っているとは思わない。強化学習(自己学習よりも良い言葉)と機械学習は、大学のプロジェクトには適していません。それは博士号や研究のレベルで、大学に入ることを考えてから、そのようなことについて考えることさえします。

  • UIの自動化は可能ですが、エラーが発生しやすく、遅くなります。それをやりたければ、コンソールプログラムを書くでしょう。ユーザーの入力について何か言及しましたが、ユーザーのマウスキーボードの入力に機械学習を適用することを意味しますか?それはうまくいかないでしょう。チェスの機械学習には数百、数千のトレーニングセットが必要です。

私はプロジェクトを控えて、達成できるものに焦点を当てるべきだと思います。

関連する問題