チェスエンジンは、移動が悪いまたは良い理由を教えてくれますか?


8

チェスエンジンで、移動が悪いまたは良い理由を教えてもらえますか?たとえば、チェスエンジンで対戦相手のスコアが現在+2であると言っているとします。それから私は移動し、私のスコアは1.4と言うために下がります。スコアが2から1.4に下がったなど、エンジンが間違ったことを教えてもらえますか(駒やポーンを吊り下げなかった場合など)

チェスプログラマーがプログラムをさらに強力にすることは今では無意味であると私には思われます。現在のところ不可能であると仮定して、彼らのプログラムに移動が悪い(または良い)理由を教えてもらうことができれば、平均的なチェスプレーヤーにとってはるかに有益です。これを行う。


5
なぜ動きが良いか悪いかを理解しようとする方が有益かもしれません。
トニー・エニス

回答:


7

ある種の(実際にはそうではない)-そして、エンジンがこれを行うのは実際には難しくなっています。 理由を理解するには、評価がどのように行われるかを理解する必要があります。エンジンは通常、所定の位置でスナップ評価を行い、生のポイント値を与えることができます。次に、ポジションが何であれ、彼らは前方にプレーし、双方のスコアを最適化する前方のラインを見つけようとします。

「2.0」または「1.4」のスコア現在の位置の評価/スコアではないことを理解することが重要です。代わりに、それは評価Nがラインを下って移動することであり、各サイドがエンジンが見つけた最良の移動を果たします。コンピュータが考えている間、「現在の評価スコア」がジャンプするのはこのためです。ポジションの「スコア」が変わったわけではありません-異なるラインに行き着いた別のラインを見つけただけです(異なるスコアを持っていました)。

過去には、エンジンが吸いました。アルゴリズムが最適ではないだけでなく、ハードウェアが非常に遅いためです。複利計算が強力であると考える場合、ムーアの法則と比較すると何もありません。そのため、当時のコンピュータは、将来のいくつかの動きを検討していました。これにより、人間がロジックに従うのが比較的簡単になりました。次のターンで騎士を失っているので、スコアが下がりました。

でも今?スコアが「2.0」から「-0.3」に変わった場合は、次の7移動で避けられない戦術が原因で、クイーンの喪失やチェックメイトを回避するために交換をあきらめる必要がある可能性があります。 。しかし、「これが今の位置だ」と「今、200億の位置を評価し、彼らの司教のルークを犠牲にするのはあなたが望んだ最高のことだと言ったとき私を信頼している」からの飛躍を示すのは難しい。


4

@D_MはChessmasterについて言及しましたが、次のような非常に単純な静的機能のみを報告します。

  • あなたの女王は攻撃されています
  • コンピュータラインでポーンを失う
  • あなたはコンピュータラインで交換に勝ちます

なぜチェスマスターがそれをしたのか知っていますか?それは、実装が簡単だったからです。

スコアが2から1.4に下がったなど、エンジンが間違ったことを教えてもらえますか(駒やポーンを吊り下げなかった場合など)

いいえ。チェスマスターはそれができない。ソフトウェアはそれを行うことができません。それを行う技術はありません。従来のエンジンプログラミング手法ではそれができません。

あなたが説明することを行うには、高度な数学/機械学習モデルが必要です。そのようなことは何も知りません。


しかし...私のバージョンのChessmaster DIDは単なるマテリアルを超えており、位置的な考慮事項についてユーザーに伝えました。たぶんあなたは以前のバージョンを持っていましたか?そして、あなたには、いくつかの理由でChessmasterのについての私を信じていない場合でも、明らかにそれはだ可能実際には、我々は現在、宇宙と質屋位置のようなものに基づいて位置を獲得するアルゴリズムを持っていないことを考えると、現在の技術で行うこと。彼らが見た唯一のものが物質であったならば、エンジンははるかに弱くなるでしょう。
DM

@D_Mいいえ。私は経験豊富なエンジン開発者です。私が話していることはわかっています。それは可能です、不可能はありません。私たちは宇宙にプローブを送りました。もちろん、よりインテリジェントなチェスエンジンを構築することも可能です。しかし、今はありません。
-SmallChess

@D_Mチェスマスターであなたが言及する位置的な考慮事項は何ですか?出力を投稿しますか?
SmallChess 2017年

一番下までスクロールすると、chess.com / forum / view / general / chessmaster9に出力例がありました。「このプレーの結果として、攻撃の可能性が増加します。さらに、ポーンの開発がいくぶん改善されます。」それは私が覚えているほとんどの出力です。Windowsの10は私の古いChessmasterの9000 CDを実行することができた場合、私はあなたに自分自身をより多くの例を与えるだろう(またはCDドライブが私の古いコンピュータに壊れていなかった場合を。)
DM

ここで別のものを見つけました: chess.com/forum/view/chess-equipment/… 「この一連のプレーの結果、ビショップとポーンを獲得します。さらに、駒の機動性が大幅に向上し、ブラックの機動性が低下します。また、ブラックのポーンの形成が多少中断されます。最後に、ブラックのキングへのプレッシャーがいくらか増加し、キングへのプレッシャーがわずかに減少します。」
DM

1

他の回答に加えて、エンジンは人間のような位置を評価しないので、なぜあなたの動きが劣っているのか(必ずしもそうではない、と彼らが考えることに重点を置いている)理由説明することはできません。

しかし、エンジンの提案を使用して副業をフォローし、それが劣っていた理由を理解することができます。少なくともこれは私がすることです。

これを行うことができるエンジンがありますか?確かにそうだと思いますが、ビジネスの観点からは、たぶん実行不可能なほどの多大な努力が必要です。


チェスエンジンの評価関数を見ると、人間と同じように位置を評価していると思います。違いは、コンピュータはさまざまな行の多くのポジションをすばやく評価できる一方で、人間は経験や一般原則に依存していることです。
user1583209 2017年

1

チェスエンジンはあなたに「伝える」ことができると思いますが、間接的な方法です。

私がすることは、同じポジションからいくつかの異なる動きをすることです。チェスエンジンは(おそらく)それぞれに異なるスコアを与えます。

これにより、さまざまな動きを「ランク付け」することができます。おそらく、パターンが現れるでしょう。そうでない場合は、チェスエンジンのランキングを(より強い)人間のプレイヤーに説明してもらいたいかもしれません。


1

はい、なぜその動きが言語上で良いか悪いかを説明しようとするプログラムを見てきました。Chessmaster 9000はこれを行います。

多くのエンジンは、各移動に最適なラインを表示します。したがって、g6をプレイするとゲームはf5 gxf5 Nxf5に進むと予想されますが、b6をプレイするとゲームはa5 bxa5 Bxa5に進むと予想できます。しばしばそこから、その動きがなぜ良いか悪いかがわかります。しかし、時にはそれはまだ非常に微妙です。

ここに位置を入力できるツールがあり、それがStockfishが位置を評価する方法で位置を評価する理由を正確に示します。これは静的な位置でのみ機能します(まったく先読みしません)が、それでも興味深いものです。


そのツールをどのように使用しますか?htmドキュメントのようです。それを開いて操作するにはどうすればよいですか?
Santropedro

個人的には、それをダウンロードし、ファイルをブラウザにドラッグアンドドロップしました。
DM

0

いいえ。チェスマスターは、誰もが言っているように、次の行が交換の犠牲になるか、ポーンを失うかなどの基本的なことを教えてくれますが。

しかし、これを自分で分析することもできます。チェスエンジンはありませんし、近い将来、動きが良い/悪い理由を説明できるようなものはありません。エンジンが将来彼の位置を改善するために動きをしたかもしれないので、50動きの後のように言います。この移動が50移動後により良い位置になる理由を説明できる方法はありません。

また、ストックフィッシュなどの市場の主要なチェスエンジンは、チェスエンジンがプレイするレベルが完全に異なり、すべての動きの説明が提供されていても分析が非常に難しいなどの機能を組み込むことさえありません。


チェスマスターは、「このプレーの結果として、攻撃の可能性が増加します。さらに、ポーンの発達がいくらか改善された」などと言っていました。勝つかどうかだけでなく、材料を失う。少なくとも私のバージョンはしました。
DM

0

エンジンの評価( "2" / "1.4")は、実際には人間が位置を評価する方法と非常によく似ています。これは基本的に、現在の位置ではなく、約20先の位置で評価された、材料王の安全駒のアクティビティなどのさまざまな要因の合計です。両側からの完璧なプレーを想定しています。

原則として、(エンジンのようにそれらの合計だけではなく)これらすべての要因の変化を個別に監視しようとすることができます。たとえば、ある動きが「最高の動き」と比較して後で「王の安全」の値が低くなる場合、学習者に次のようなことを伝えたくなるかもしれません。最後の動きで王がより脆弱になった

ただし、これが実際のゲームで機能するかどうかは疑問です。

  • 学習者の移動には、実際には他の問題がある可能性があります。たとえば、開発を無視する可能性があり、そのため、プレーヤーは後でキングの保護に関して譲歩しなければならない場合があります(最高のプレーを想定)。
  • 多くの要因が同時に変化する可能性があり、いくつかは上昇し、いくつかは下降します。これを言葉で表現しようとすると、面倒な場合があります。たとえば、最後の動きで王の安全を無視しましたが、駒の活動を改善し、ポーンを失いましたが、開いているファイルを占有しました。この情報は学習者に役立ちますか?

このため、少なくとも現在のテクノロジーでは、コンピュータが(原則に基づいて)位置的または直感的な遊びを教えることができるとは思えません。他の人間、注釈付きゲームの読み取り/鑑賞/聴解などの古典的な方法を使用する方が良い

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.