AOYAMA Koji's プログラミングブログ - プログラミングを楽しく体験

レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】全員向け(プログラミング無関係)

2025/07/13
レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】

 詰将棋(将棋のルールを利用したパズルゲーム)を自動生成するWebアプリケーションを作りました。
 詰将棋の問題集はたくさん市販されていますが、1手詰でも複雑に感じます。 簡単すぎると売り物にできないという理由もあると思いますが、 自動生成なら許されるでしょう。
 本記事は、使用する駒を金銀に限定したレベル2:金銀の1手詰です。 将棋を覚えたての方や、初心者の方、「観る将」の方にも、きっと楽しんでいただけると思います。 ぜひ遊んでみてください。
 後半では、技術解説として、 ゲームの進化が今の人工知能(AI)を生んだお話、なぜグラフィックボードを作ってきた nVidia が AI を代表する会社になっているのか、その理由を考察しています。

レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】
[PR]

遊んでみよう! レベル2:金銀の1手詰



レベル変更


 自動生成☆詰将棋は、自分が楽しめる問題レベルを選択することをおすすめします。 レベルを変更する場合は以下からご確認ください。

詰将棋アプリの遊び方・操作方法


 本Webアプリケーション【自動生成☆詰将棋】の操作方法を説明します。

[操作方法] 駒の動かし方


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 駒の動かし方
 動かしたい駒をクリックまたはタップし、続けて動かしたい先のマスをクリックまたはタップすることで、1手指すことができます。 それにより詰みの状態になれば、成功です。

[操作方法] 問題(詰将棋)の更新


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 問題(詰将棋)の更新
 更新ボタンをクリックまたはタップすると、詰将棋の問題が更新されます。 今の問題は消えてしまいますのでご注意ください。

[操作方法] やりなおし(進む・戻る)


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 やりなおし(戻る・進む)
 戻るボタンをクリックまたはタップすると、手を戻すことができます。 進むボタンで再確認することができます。

[操作方法] 正解を見る


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 正解を見る
 解ボタンをクリックまたはタップすると、正解を見ることができます。
 正解に対しても、戻るボタンと進むボタンで再確認することができます。

[操作方法]問題(詰将棋)のURLをコピー


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 詰将棋問題のURLをコピー
 urlボタンをクリックまたはタップすると、現在表示されている問題のURLをコピーします。
 コピーされたURLに移動すると、自動生成☆詰将棋シリーズの詰将棋ソルバーで、 現在の問題およびその解答を確認することができます。 繰り返しプレイしたい問題の保存や、お気に入りの詰将棋の共有にご利用ください。

手数制限について


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 正解を見る
 1手詰の問題は、1手で詰ませられれば正解ですが、3手で詰ますなど、手数をオーバーすると失敗です。
 3手詰の問題も、3手で詰ませられれば成功、そうでなければ失敗です。
 一般的な詰将棋は、何手かかっても王手の連続で詰めば正解ですが、 本記事では指定手数以内に収める必要があります。 ご注意ください。
SOLVER

詰将棋(つめしょうぎ)とは?将棋初心者向け基本ルール


 詰将棋は、将棋ルールの範囲内で、王手をかけ続けて、詰みの状態にするパズルゲームです。

将棋のルール


 将棋は、先手と後手が対戦し、交互に指して(さして=自分の駒を1つ動かして)、先に相手の王将を取った方が勝ちというルールのゲームです。
 駒ごとに動ける場所が決まっています。
 自分の駒を動かした先に、相手の駒があれば、その駒を取ることができます。

王手(おうて)


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 王手の例
 次に相手の王将が取れる状態のことを、王手といいます。
 金は矢印の方向に動けるため、この図は、王手がかかっています。

王手の解除と詰み(つみ)


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 王手の解除の例
 王手に対しては、この図のように、逃げるか、王手をかけられている駒を取るなどして解除すれば、ゲームを続けられます。
 しかし、王手を解除できなければ、その時点で終了です。 実際に王将が取られるところまでは指しません。
 王手をどうやっても解除できない状態のことを、詰みといいます。

各駒の動かし方と詰みのパターン


 駒はそれぞれ、動ける場所が決まっています。
 本セクションではまず、全駒共通の指し方を解説し、駒ごとの動かし方は後述します。

盤上の駒の動かし方


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 基本的な駒の動かし方
 盤上の駒は、動ける先が空いているか、相手の駒のある場所なら、動くことができます。
 もし相手の駒があれば、それを取って、自分の持ち駒にします。

持ち駒の打ち方


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 持ち駒はすべての空きマスに打てる
 持ち駒は、駒の種類によらず、盤上の好きな空きマスに打つことができます。
 ただし、詰将棋ではそれにより王手をかける必要がありますので、打てるマスは、そこ駒がそこにいることで王手がかかる場所に限られます。
 なお、相手の駒があるマスへは打てません。 つまり持ち駒を使用して直接取ることはできません。

駒の成り方


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 駒の成り方
 盤上の駒を動かすときに、移動元または移動先が相手陣地に入っていると成ることができます。 盤上の、奥の3行が相手陣地、手前の3行が自分の陣地です。
 成る場合は成(なり)、成らない場合は不成(ならず)といいます。 成るか成らないかは、指している手番の人が選択します。
 成ることで、駒の動ける範囲が変わります。 具体的には、個別の駒の動かし方をご確認ください。
 なお、玉と金は成ることができません。 また、持ち駒からいきなり成の状態で打つことはできません。

玉(ぎょく)の動かし方


玉の動ける範囲


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 後手玉が動ける範囲

 玉は、全方向に一歩ずつ動けます。
 玉は、前記の王将のことです。 人間同士の対戦では強い人が王(おう)=王将(おうしょう)、その相手が玉(ぎょく)=玉将(ぎょくしょう)を使用するという慣例はありますが、 ルール上は同じ駒です。
 当ブログの「自動生成☆詰将棋」シリーズでは「玉」で統一します。

金(きん)の動かし方と詰みの例


金の動ける範囲


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 先手金が動ける範囲 レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 後手金の動ける範囲

 金は、斜め後ろ以外に一歩ずつ動けます。

頭金による詰みの例


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 頭金の詰みの例 レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 頭金の詰み矢印解説

 金は、後ろに行き場の無い相手玉の正面あると、相手玉は行けるところが無いため、その金が取られても取り返せる状態にあれば、詰みになります。 これが詰将棋の基本の形で、頭金(あたまきん)と呼ばれます。

金による詰みの例


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 金による詰みの例1 レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 金による詰みの例2

 また、金は前方および横に動けるため、図のような詰みの形があります。

銀(ぎん)の動かし方と詰みの例


銀の動ける範囲


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 先手銀が動ける範囲 レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 後手銀が動ける範囲

 銀は、前3箇所と、斜め後ろに一歩ずつ動けます。

成銀(なりぎん)の動ける範囲


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 先手成銀が動ける範囲 レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 後手成銀が動ける範囲

 銀は成ると成銀になります。
 成銀は赤字の全で表されます。動かし方は金と同じです。

銀による詰みの例


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 銀による詰みの例1 レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 銀による詰みの例2

 銀は前方および、すべての斜め方向に一歩ずつ動けるため、図のような詰みの形があります。
 例1は成っても成らなくても詰みますが、例2は不成にしないと王手がかかりません。

[PR]

【技術解説】ゲームの進化が今の人工知能(AI)を生んだお話プログラマー向け実装解説


 本記事の範囲での詰将棋の解説は以上です。 ぜひ、遊んでみてください!
 この、詰将棋の自動生成および解くプログラムは、人工知能(AI)と呼ばれる分野になります。 自動生成プログラムについてはこの記事の中で解説していますので、よろしければそちらもご覧ください。
 以下では、今の AI の発展は、ゲームの進化が大きく寄与していますよ、というお話をします。

nVidiaはAI?GPU?


 現在の AI を象徴する会社は nVidia(エヌビディア)社でしょう。
 一方で、nVidia と聞くと、GeForce シリーズという、 パソコンのGPU を思い浮かべる方も、 少なからずいらっしゃると思います。 ゲームに詳しい方なら、家庭用ゲーム機のニンテンドースイッチの GPU が nVidia 製だとご存知かもしれません。
 実は、GPU と AI には、とても深い関係があります。

ゲームの進化で向上したGPU性能


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 透視変換  ゲームはリアルタイムに処理する必要があるため、シビアに性能が要求されます。 特にコンピューターグラフィックスの処理に時間がかかるので、ここがゲームの進化に合わせて向上していきました。
 コンピューターグラフィックスは、特に3D空間において、大量の情報に対する計算が必要です。 自動生成☆詰将棋の正解演出時に表示している紙吹雪も、それなりの量の3D演算をしていますし、本格的な3Dゲームではもっと大量の計算が必要です。
 コンピューターグラフィックスに必要な計算は、例えば、透視変換と呼ばれる、3D空間の頂点座標を、Webブラウザー画面などの2D座標に変換するなどです。 それらはほとんどが単純な積和演算です。 また、他の計算結果の影響を受けない、つまり並列処理できる、という特徴があります。
 そのため、GPUは、進化し続けるゲーム開発者の要望に答えて、単純な積和演算が大量に並列計算できるよう、性能が向上していきました。

人間の脳を模したニューラルネットワーク


レベル2:将棋超初心者も楽しめる金銀の1手詰【自動生成☆詰将棋】 ニューラルネットワーク  第3次AIブーム以降に主流になったAIは、人間の脳の神経細胞網を模した、ニューラルネットワークと呼ばれるものを用いています。
 ニューラルネットワークは、各ノード(図のマル)が大量のデータを受け取り、それらを重み付けして加算しながら、次のノードに渡していきます。 ここに、大量の情報を入力していくことで、AIが学習し、重み付けの割合を変化させていきます。
 これらには大量の積和演算が必要です。また、それぞれ並列処理できます。

AI の処理に GPU が使われるように


 以上の流れで、AI の演算にも GPU が使われるようになりました。
 つまり、筆者はゲーム開発経験が長いからかもしれませんが、ゲームの進化が GPU 性能向上を引き出し、現在のAI性能の向上に繋がったと言えると、考えています。 そして GPU の会社だったはずの nVidia が AI の代表的な会社になりました。
 このように、一見関係なさそうなところで繋がるのは、素敵ですよね。 
[PR]

まとめ


 本記事は、自動生成☆詰将棋Webアプリケーションのレベル2:金銀の1手詰です。
 詰将棋の基本および、登場する駒の解説をしています。
 また、技術解説として人工知能(AI)とゲームの進化とのつながりも解説しました。 一部でも興味を持って読んでいただけたら幸いです。

補足

  • 本記事の駒の動かし方の説明は登場する玉・金・銀に絞っています。将棋の駒は他に飛・角・桂・香・歩および先手玉があります。
  • 記事の校正/添削に生成AIのClaudeを利用しております。
  • 画像内のラスタライズ文字フォントにOpen Font LicenseZen Antiqueを使用しております。
  • 画像内のラスタライズ文字フォントにOpen Font LicenseNoto Sans Japaneseを使用しております。
  • 画像内のラスタライズ文字フォントにOpen Font LicenseLimelightを使用しております。
  • (本記事公開後)Webブラウザーのサイトデータに「最後に表示された問題」を保存するようにしました。


カテゴリー:Webアプリケーション,自動生成☆詰将棋
[PR]