タグ付けされた質問 「engines」

チェスエンジンに関する質問:チェスの位置を再生/分析できるコンピュータープログラム。

1
エンジンは同じゲームを続けます
自由に利用できるtscpエンジンに基本的にビットボードを追加することで、チェスエンジンのカスタマイズを書き終えたところです。今、私はそれをwinboardでテストしていますが、2台のマシンが同じゲームを何度も同じ試合でプレイすることがよくあります。少なくともランダムに等しい動きを選択させることで、ゲームにいくつかの種類を追加したいと思います。私は単純な移動順序でアルファベータ検索を使用しています。葉のノードに小さな乱数を追加して関係を壊すことを考えていますが、評価関数が使用する小さなボーナスのいくつかは3〜5センチポーンであるため、このソリューションはあまり好きではありません。だから、私は乱数を結びつけるのに十分な「部屋」を持っていません。 私のもう1つの考えは、評価==アルファを見つけたときにエンジンがランダムに選択して移動することでした。私は、検索で最後に順序付けられた移動を優先するのではないかと思うので、私はこれがあまり好きではありません。 問題は、等しいスコアのリーフノードからランダムに選択するにはどうすればよいですか?そしてまた均等に?
8 engines 

3
チェスエンジンに実装する必要のあるインターフェイスプロトコルはどれですか?
私はC ++ https://github.com/RomainGoussault/Deepovでチェスエンジンを書いています。 そこにはいくつかのインターフェイスプロトコル(UCI、Winboardプロトコルなど)があり、どちらを実装するかわかりません。次のいずれかをお願いします。 エンジンがオンライントーナメントをプレイできるようにします Linux、Windows、iOS用のGUIがいくつかあります ある種のドキュメントがあります ありがとう

3
トッププレイヤーはどのようにコンピューターを使用してプレイを改善しますか?
この質問は、中村ヒカル+ RybkaとStockfishの昨日の試合に触発されました。中村は古いバージョンのRybkaを使用して彼を助け、Stockfishはその全力でプレイすることを許可されましたが、オープニングブックやエンドゲームのテーブルベースを使用することはできませんでした。 質問1: 中村のようなプレーヤーはどのようにしてRybkaを使用してコンピューターの対戦相手に対するプレーを改善することができますか? 私はいくつかの素朴な推測を思い付くことができます:失敗について自分の動きを確認してください。コンピューターの提案をチェックして、大きな利点につながる複雑な移動シーケンスがあるかどうかを確認します。そして、コンピュータに彼らのために終盤を遊ばせる。ただし、これは完全な話である必要はありません。チェスエンジンには、私が知らない便利な機能があるかもしれません。また、人間のプレーヤーが自分の直感にどの程度依存するかについても疑問に思っています。コンピューターが失敗を示唆したり、見づらい驚くべき勝利の動きを提案したりしない場合、彼は常に自分の動きを果たしますか? 私の2番目の非常に類似した質問は、redditスレッドでの中村のいくつかのコメントに触発されています。 フィッシャーはほぼ間違いなく[自分、カールセン、カスパロフなどの人々]に負けるだろうが、これはゲームが根本的に変わったという事実によるものである。フィッシャーがコンピューターを使うのに数年かかったとしたら、彼はおそらく同じレベルにいると思います。 そして 主にコンピューターから学べることは、ほとんどすべてのポジションが正確なプレーで大丈夫であるという深い理解です。以前は、多くの人が特定の位置は自動的に悪いと想定していましたが、コンピューターはルールと思考プロセスが常に正確であるとは限らないことを示しています! 質問2: コンピューターは、今日のトッププレーヤーのプレイ方法をどのように変更しましたか(コンピューターの支援を受けていない場合)? 最初の引用はどういう意味ですか?2番目の引用は、あきらめたくないかもしれないことを示していますが、プレイスタイルの変更を示唆していません。
8 engines 



1
スカンジナビア:2. Nc3 d4
私は単純な冒頭から始めました。1. e4 d5 2. Nc3それからコンピューターに2... d4出会ったのですが、これまで出会ったことがないので、驚くべきことでした。それ以来、私はこの方向転換を自分に有利にできるのか、それとも単に騎士があまりアクティブでない広場に行くのかを確認するために考えられる方法を分析しようと努めてきました。だから私はこの動きに対抗するための最良の方法を知りたかった。私は、より中級/上級のチェスに挑戦しようとしているカジュアルなプレイヤーです。私に開口部を教えるためのプログラムやオンラインの提案があれば、ぜひ聞いてください。ありがとう。

1
「ボード強度」を評価する際に考慮すべき要素
私が夢見ているルールエンジンのデモの一部として、その時点での両サイドの総合的な強さを伝えるチェス盤の評価を行いたいと思います。動きの予測や合致パターンの確立などの高度なことは、このアイデアの範囲をはるかに超えています。とりあえず、目の前にあるものを考えればいいのです! また、ボードの強度を数値に下げる方法を正確に確立する必要もありません。これは、このようにして、合理的であると思われるものを見つけるために、いじくり回すことになるでしょう。今のところ、ボード上の誰かの立場がどれだけ強いか弱いかを決定するために、たとえば3つの要素を理解する必要があります。 私の現在の考えは、一般的に重要な順序です: マテリアル(ポーンの場合、ルーク= 5、ナイト= 3など) ボードの中央にある攻撃経路を開く(クリティカルエリア、開発に進む) 攻撃可能な正方形の合計(開発) この評価で特に重要な要素が欠けていますか?それを間違って測定しようとしていますか?

1
チェスエンジンの評価はどのくらい正確ですか?
進行中のTCECトーナメントに照らして、私は彼らがこれらのコンピューターの評価をどのように考え出すのかと考えていました。おそらく、2000の評価されたチェスエンジンは、人間の評価された2000に対して約0.5のスコアを期待する必要があります。これにより、チェスエンジンが実際に彼らが言っている評価とほぼ同じかどうかを簡単に確認できます。しかし、これはおそらく3250前後であると思われるkomodoのようなより高い定格のプログラムには問題があります。明らかに、このレベルでは人間はプレイしません。さらに、2800の評価されたコンピューターでさえ人間と対戦しません(magnusがコンピューターと対戦して開発者の評価を定義するのを助けることは疑わしいです)。エンジンがグランドマスターと対戦してその強さを判断するのは疑わしいことです。したがって、これらのエンジンレーティングは、はるか昔に同じような強さの対戦相手をプレイするエンジンによって決定されているのではないかと思います。最近のほとんどの評価は、エンジン対エンジンゲームによるものです。しかし、これが真実なら、エンジンの評価が人間のeloスケールと比較して正確であるとは期待できません。エンジンの定格が正確であることを確認する方法はありますか?
8 engines 

3
エンジンは必ずしも強力ではありませんが、「魅力的」です
誰もが、可能な限り強力ではないが「魅力的な」チェスをプレイするようにプログラムされているチェスエンジンを知っていますか? 攻撃の動きがあまり最適ではない場合でも、プログラムはアグレッシブなスタイルを持ち、メイト攻撃に対応する必要があります。または、少なくとも、エンジンは終了するまでに永遠にかかる傾向がある非常にクローズされたポジションを回避するために、プログラムはいくつかのパンを早期にトレードする必要があります。 一方で、プログラムは弱すぎてはなりません。評価は少なくとも約2000 Eloでなければなりません。 誰かがそのようなエンジンを知っていますか?

3
複数の人間が1台のチェスコンピュータと対戦するゲームはありませんか?
次のシナリオがこれまでに行われたことがあるかどうか疑問に思っています。 チェスゲームの側面が一度に複数の人間によってプレイされると、共同で次の動きを決定します。これは、おそらく、最高のパーセンテージを持つ移動が選択された移動である、ある種のゲームロジックによって強制される可能性があります。意思決定に貢献している人間が1000人もいる可能性があるとします。反対側は、1台のチェスコンピューターでプレイされます。 誰かがこのようなことを試みたことがありますか?もしそうなら、結果はどうでしたか?ゲームの一方の側で決定を下すために人間のプレーヤーを追加すると、その側がコンピューターの対戦相手を倒す可能性が高くなりますか?


2
ポジションが取引所の真ん中にある場合、チェスエンジンはどのようにポジションを評価しますか?
ミニマックスアルゴリズムでは、チェスエンジンは、先に計算できる範囲で深さ優先検索を実行し、次にこれらすべての最終位置を評価します。次に、これらの評価を使用して、一度に1つずつ逆方向に動作し、前の位置に値を割り当てます。最終的に彼らは現在の開始位置に到達し、それに評価値を与えます。 しかし、ミニマックスチェスエンジンが交換の最中にあった場合、最終的な位置をどのように評価しますか?たとえば、次のようにします。 e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Bxc6 エンジンの深度容量が7プライ(いずれかのプレーヤーからの移動)であり、ゲームの開始からの計算の最終位置の1つとしてこの位置に到達したとしましょう。それ以上計算することはできず(そして、Blackが4 ... dxc6をプレイできることを確認)、この位置を今すぐ評価する必要があります。私には、この最終ポジションにホワイトの+3アドバンテージを割り当てる必要があるようですが、チェスエンジンにはこれを回避する方法があることを知っています。 私の質問は、チェスエンジンはこのシナリオをどのように回避するのですか?

2
Alpha ZeroとStockfishの試合でのランダム性の原因は何でしたか?
私の理解では、Alpha Zeroのアルゴリズムは「学習」フェーズの後で修正されたので、すべてのポジションで同じ動きが生まれるでしょうか?完全にストックフィッシュの設定が原因で試合の変動性があったのですか、それともアルファゼロもその移動選択にランダム性の要素を表示しましたか?

2
2012年のLomonosov-endgame-tablebaseがいまだに最も強力なテーブルベースである可能性はありますか?
以下のためにウィキペディア:終局はtablebaseロモノーソフの終盤のtablebaseはまだ(140TBのサイズの)最大のtablebaseです。現在、このテーブルベースは2012年にロモノソフ1(Top500リスト2012年11月、ランク26)で計算されました。Lomonosov 1には78.660コア、最大900 TFlop / s(ピーク:1.700 TFlop / s)がありました。私はほとんどの見ていたとき、最近のTOP500-一覧(2016年6月)を、超No1のはランク:私はロモノーソフ2は〜2.100 TFlop /秒(〜2.900 TFlop / sのピーク)と、世界で41位にランクいることがわかりコンピューターの93.000 TFlop / s。 だから、4年後のLomonosov-tablebaseが今でも最大のテーブルベースであるのはなぜだろう。コンピューター能力の増大に伴い、8人組のテーブルベースを計算するのは簡単ではないでしょうか。または、7から8へのステップが大きすぎますか?サイズが指数関数的に増加するので、標準のストレージシステムはこれを処理できないのでしょうか。 このテーマに関するすべての情報をいただければ幸いです。前もって感謝します!


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