将棋プログラミング

(将棋に関する)ソフトウェア開発のノウハウ等。

Android: androidx.work の Crash

androidx.work を使用するため、build.gradle で、次のように、記述した。

   implementation "androidx.work:work-runtime:2.4.0"

すると、アプリの起動時に、次の Crash が発生するようになった。

 Fatal Exception: java.lang.IllegalArgumentException
Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent. Strongly consider using FLAG_IMMUTABLE, only use FLAG_MUTABLE if some functionality depends on the PendingIntent being mutable, e.g. if it needs to be used with inline replies or bubbles. 

次のように、バージョンを 2.7.1 に上げると、Crash しないようになった。

    implementation 'androidx.work:work-runtime:2.7.1'


developer.android.com

を見ると、

注: WorkManager バージョン 2.6.0 は、Android 12(S)をターゲットとするアプリと互換性がありません。代わりに、バージョン 2.7.0 を使用してください。

と、Android 12 以上では、バージョン 2.7.0 以降を使わないといけないことが書かれている。

第36回(2026年)世界コンピュータ将棋選手権の勝率・戦型分析

今年(2026年)の第36回世界コンピュータ将棋選手権の棋譜295局の勝率・戦型を分析しました。

第36回世界コンピュータ将棋選手権の勝率・戦型分析

1.棋譜の入手

棋譜ファイルは、次の CSA のサイトから入手できます。

www.computer-shogi.org

※2026年2月、CSA のサイトの URL が変わりました。

第36回 (2026年5月3,4,5日) から wcsc36_kifu.zip をダウンロードし、展開します。
拡張子が .csa のCSA形式の棋譜ファイルが295局あります。

一次予選 144局
二次予選 123局
決勝 28局
295局

2023年から、評価値・読み筋付きです(参加ソフトから送られた場合)。
2025年から、CSA棋譜形式 V3.0 (次)としています。

www.computer-shogi.org

文字コードは、互換性のため、 SHIFT_JIS としています。
何か問題に気がつきましたら、お知らせ下さい。

2.戦型の自動判別

柿木将棋Ⅸを起動し、ツール / 棋譜情報の一括設定 のメニューを実行します。

www.vector.co.jp

「フォルダ」で、CSA形式の棋譜ファイルがあるフォルダを指定します。
「入力」で CSA、「出力」で KIF を選択します。
「戦型を自動設定」をチェックします。
OK 押すと、CSA形式の棋譜を読み、戦型を自動判別し、KIF形式に変換し、保存します。

棋譜情報の一括設定

3.棋譜データベース KifuBase に登録

柿木将棋IXに付属する棋譜データベース KifuBase を起動します。

表操作 / フォルダ指定追加 のメニューを実行します。
フォルダで、選手権の棋譜のフォルダを指定します。
種類で、KIF を指定します。

ファイル / 名前を付けて保存 のメニューを実行します。
例えば、"第36回選手権"という名で、バイナリ(KBK)形式で保存します。

4.決勝

表操作 / 条件検索 のメニューを実行し、ファイル名に "36-F" を入力し、OKを押すと、8チームによる決勝の28局が表示されます。

4.1 決勝の統計計算

ツール / 統計計算 のメニューを実行すると、決勝の28局の勝率・平均手数等が表示されます。

2026年決勝
──────────────────────────────────
棋譜数    :    28
先手勝ち   :    21  宣言勝ちを含む
後手勝ち   :     2  宣言勝ちを含む
先手宣言勝ち :     2
後手宣言勝ち :     0
千日手    :     3
持将棋    :     2  320手
先手勝率1   : 0.913  千日手・持将棋を除外した場合 21勝2敗
後手勝率1   : 0.087  千日手・持将棋を除外した場合
先手勝率2   : 0.839  千日手・持将棋を0.5勝0.5敗とした場合 23.5勝 4.5敗
後手勝率2   : 0.161  千日手・持将棋を0.5勝0.5敗とした場合
平均手数   : 187.214  千日手を含む
平均手数   : 194.680  千日手を除く
手数のメジアン: 167.0    千日手を含む
手数のメジアン: 177.0    千日手を除く
──────────────────────────────────

先手勝率(千日手・持将棋を除外した場合)は、0.913 と上がりました!
千日手・持将棋を 0.5勝0.5敗とした場合、0.839 です。

平均手数は、千日手を除くと約187手と、今年もかなり長くなりました。
入玉宣言勝ちは2(昨年は0局)、千日手は3局(昨年は1局)でした。
320手で引き分けとなった棋譜は2局(昨年は1局)でした。

参考として、2025年までの決勝のデータは次でした。

2025年決勝
──────────────────────────────────
棋譜数    :    28
先手勝ち   :    19  宣言勝ちを含む
後手勝ち   :     7  宣言勝ちを含む
先手宣言勝ち :     0
後手宣言勝ち :     0
千日手    :     1
持将棋    :     1  320手
先手勝率1   : 0.731  千日手・持将棋を除外した場合 19勝7敗
後手勝率1   : 0.269  千日手・持将棋を除外した場合
先手勝率2   : 0.714  千日手・持将棋を0.5勝0.5敗とした場合 20.0勝 8.0敗
後手勝率2   : 0.286  千日手・持将棋を0.5勝0.5敗とした場合
平均手数   : 178.857  千日手を含む
平均手数   : 180.037  千日手を除く
手数のメジアン: 169.0    千日手を含む
手数のメジアン: 170.0    千日手を除く
──────────────────────────────────
2024年決勝
──────────────────────────────────
棋譜数    :    28
先手勝ち   :    18  宣言勝ちを含む
後手勝ち   :     7  宣言勝ちを含む
先手宣言勝ち :     3
後手宣言勝ち :     1
千日手    :     2
持将棋    :     1  320手
先手勝率1   : 0.720  千日手・持将棋を除外した場合 18勝7敗
後手勝率1   : 0.280  千日手・持将棋を除外した場合
先手勝率2   : 0.696  千日手・持将棋を0.5勝0.5敗とした場合 19.5勝 8.5敗
後手勝率2   : 0.304  千日手・持将棋を0.5勝0.5敗とした場合
平均手数   : 177.393  千日手を含む
平均手数   : 183.538  千日手を除く
手数のメジアン: 155.0    千日手を含む
手数のメジアン: 160.0    千日手を除く
──────────────────────────────────
2023年決勝
──────────────────────────────────
棋譜数    :    28
先手勝ち   :    19  宣言勝ちを含む
後手勝ち   :     9  宣言勝ちを含む
先手宣言勝ち :     1
後手宣言勝ち :     1
千日手    :     0
持将棋    :     0  320手
先手勝率1   : 0.679  千日手・持将棋を除外した場合 19勝9敗
後手勝率1   : 0.321  千日手・持将棋を除外した場合
先手勝率2   : 0.679  千日手・持将棋を0.5勝0.5敗とした場合 19.0勝 9.0敗
後手勝率2   : 0.321  千日手・持将棋を0.5勝0.5敗とした場合
平均手数   : 176.250  千日手を含む
平均手数   : 176.250  千日手を除く
手数のメジアン: 162.0    千日手を含む
手数のメジアン: 162.0    千日手を除く
──────────────────────────────────
2022年決勝
──────────────────────────────────
棋譜数    :    28
先手勝ち   :    14  宣言勝ちを含む
後手勝ち   :    10  宣言勝ちを含む
先手宣言勝ち :     0
後手宣言勝ち :     0
千日手    :     2
持将棋    :     0
中断     :     2  320手
先手勝率1   : 0.583  千日手・持将棋を除外した場合 14勝10敗
後手勝率1   : 0.417  千日手・持将棋を除外した場合
先手勝率2   : 0.571  千日手・持将棋を0.5勝0.5敗とした場合 16.0勝12.0敗
後手勝率2   : 0.429  千日手・持将棋を0.5勝0.5敗とした場合
平均手数   : 188.536  千日手を含む
平均手数   : 193.615  千日手を除く
手数のメジアン: 180.0    千日手を含む
手数のメジアン: 183.0    千日手を除く
──────────────────────────────────
2021年決勝
──────────────────────────────────
棋譜数    :    28
先手勝ち   :    14  宣言勝ちを含む
後手勝ち   :    11  宣言勝ちを含む
先手宣言勝ち :     1
後手宣言勝ち :     1
千日手    :     3
持将棋    :     0
中断     :     0
先手勝率1   : 0.560  千日手・持将棋を除外した場合 14勝11敗
後手勝率1   : 0.440  千日手・持将棋を除外した場合
先手勝率2   : 0.554  千日手・持将棋を0.5勝0.5敗とした場合 15.5勝12.5敗
後手勝率2   : 0.446  千日手・持将棋を0.5勝0.5敗とした場合
平均手数   : 175.071  千日手を含む
平均手数   : 185.680  千日手を除く
手数のメジアン: 173.0    千日手を含む
手数のメジアン: 177.0    千日手を除く
──────────────────────────────────
2019年決勝
──────────────────────────────────
棋譜数    :    28
先手勝ち   :    14  宣言勝ちを含む
後手勝ち   :    12  宣言勝ちを含む
先手宣言勝ち :     2
後手宣言勝ち :     2
千日手    :     2
持将棋    :     0
中断     :     0
先手勝率1   : 0.538  千日手・持将棋を除外した場合 14勝12敗
後手勝率1   : 0.462  千日手・持将棋を除外した場合
先手勝率2   : 0.536  千日手・持将棋を0.5勝0.5敗とした場合 15.0勝13.0敗
後手勝率2   : 0.464  千日手・持将棋を0.5勝0.5敗とした場合
平均手数   : 190.143  千日手を含む
平均手数   : 200.308  千日手を除く
手数のメジアン: 186.0    千日手を含む
手数のメジアン: 191.0    千日手を除く
──────────────────────────────────

4.2 決勝の先手勝率と平均手数の推移

2019年以降の決勝の先手勝率と平均手数の推移です。

  決勝の先手勝率と平均手数の推移
───────────────────────────────────
年  先手勝率1 先手勝率2 平均手数 手数のメジアン
2026年 0.913   0.839  187.214  167.0
2025年 0.731   0.714  180.037  170.0
2024年 0.720   0.696  183.538  160.0
2023年 0.679   0.679  176.250  162.0
2022年 0.583   0.571  193.615  183.0
2021年 0.560   0.554  185.680  177.0
2019年 0.538   0.536  200.308  191.0
───────────────────────────────────
先手勝率1:千日手・持将棋を除外した場合
先手勝率2:千日手・持将棋を0.5勝0.5敗とした場合
平均手数:千日手を除く
手数のメジアン:千日手を除く

棋譜数が少ないので、信頼性は低いですが、先手勝率が毎年、上がってきて、先手勝率1は、とうとう 90% を超えました。先手勝率2は、 80% を超えました。
ほんの数年前、2022年までは50%台だったので、平和な時代だったと言えます。
加藤さんもまとめていますので、リンクしておきます。

toybox.tea-nifty.com

決勝の勝率推移
決勝の手数の推移

4.3 決勝、二次予選、一次予選のデータ

今年の二次予選と一次予選のデータです。

2026年二次予選
───────────────────────────────────
棋譜数    :   123
先手勝ち   :    78  宣言勝ちを含む
後手勝ち   :    35  宣言勝ちを含む
先手宣言勝ち :     4
後手宣言勝ち :     1
千日手    :     7
持将棋    :     3  320手
先手勝率1   : 0.690  千日手・持将棋を除外した場合 78勝35敗
後手勝率1   : 0.310  千日手・持将棋を除外した場合
先手勝率2   : 0.675  千日手・持将棋を0.5勝0.5敗とした場合 83.0勝40.0敗
後手勝率2   : 0.325  千日手・持将棋を0.5勝0.5敗とした場合
平均手数   : 169.634  千日手を含む
平均手数   : 173.681  千日手を除く
手数のメジアン: 161.0    千日手を含む
手数のメジアン: 164.0    千日手を除く
───────────────────────────────────
2026年一次予選
───────────────────────────────────
棋譜数    :   144
先手勝ち   :    83  宣言勝ちを含む
後手勝ち   :    59  宣言勝ちを含む
先手宣言勝ち :     2
後手宣言勝ち :     0
千日手    :     2
持将棋    :     0  320手
先手勝率1   : 0.585  千日手・持将棋を除外した場合 83勝59敗
後手勝率1   : 0.415  千日手・持将棋を除外した場合
先手勝率2   : 0.583  千日手・持将棋を0.5勝0.5敗とした場合 84.0勝60.0敗
後手勝率2   : 0.417  千日手・持将棋を0.5勝0.5敗とした場合
平均手数   : 105.153  千日手を含む
平均手数   : 105.500  千日手を除く
手数のメジアン:  96.0    千日手を含む
手数のメジアン:  97.0    千日手を除く
───────────────────────────────────
  2026年の決勝、二次予選、一次予選のデータ
───────────────────────────────────
2026年 先手勝率1 先手勝率2 平均手数 棋譜数
決勝   0.913   0.839  187.214   28
二次予選 0.690   0.675  169.634  123
一次予選 0.585   0.583  105.153  144
───────────────────────────────────
先手勝率1:千日手・持将棋を除外した場合
先手勝率2:千日手・持将棋を0.5勝0.5敗とした場合
平均手数:千日手を除く

一次予選、二次予選、決勝と先手勝率が上がり、平均手数が伸びています。

参考として、2025年までのデータは次でした。

2025年二次予選
────────────────────────────
棋譜数    :   125
先手勝ち   :    73  宣言勝ちを含む
後手勝ち   :    46  宣言勝ちを含む
先手宣言勝ち :     3
後手宣言勝ち :     0
千日手    :     3
持将棋    :     3    320手
先手勝率   : 0.613  73勝46敗
後手勝率   : 0.387
平均手数   : 163.016  千日手を含む
平均手数   : 165.230  千日手を除く
────────────────────────────
※先手勝率は、千日手・持将棋を除外したもの
2025年一次予選
────────────────────────────
棋譜数    :   136
先手勝ち   :    70  宣言勝ちを含む
後手勝ち   :    64  宣言勝ちを含む
先手宣言勝ち :     0
後手宣言勝ち :     1
千日手    :     1
持将棋    :     1    320手
先手勝率   : 0.522  70勝64敗
後手勝率   : 0.478
平均手数   : 89.007  千日手を含む
平均手数   : 89.104  千日手を除く
────────────────────────────
※先手勝率は、千日手・持将棋を除外したもの
  2025年の決勝、二次予選、一次予選のデータ
────────────────────────────
2025年  先手勝率 平均手数(千日手を除く)棋譜数
決勝   0.731  180.037   28
二次予選 0.613  165.230  125
一次予選 0.522   89.104  136
────────────────────────────
※先手勝率は、千日手・持将棋を除外したもの
  2024年の決勝、二次予選、一次予選のデータ
────────────────────────────
2024年  先手勝率 平均手数(千日手を除く)棋譜数
決勝   0.720  183.538  28
二次予選 0.602  175.598 126
一次予選 0.583   95.901 112
────────────────────────────
※先手勝率は、千日手・持将棋を除外したもの

4.4 決勝と二次予選の戦型

決勝の戦型は、次の通りです(ツール / 戦型分析)。

決勝の戦型は、3年連続、角換わりが最多でした(2023年と2022年は、相掛かりが最多)。
角換わり全体は、先手が13勝0敗3分でした。
相掛かりは、先手が6勝2敗2分でした。
2023年と2022年は、相掛かりが最多でした。
振り飛車は、六角堂狸が後手で、1局指しました。

2026年決勝
                  戦型         棋譜数  割合(%)  先手勝率 先手勝ち 後手勝ち 千日手・持将棋
─────────────────────────────────────────────────────────────────────
  1:          角換わり腰掛け銀:    11  39.3%    1.000        10       0       1
  2:              相掛かり:    10  35.7%    0.750         6       2       2
  3:           角換わりその他:     5  17.9%    1.000         3       0       2
  4:                矢倉:     1   3.6%    1.000         1       0       0
  5:              四間飛車:     1   3.6%    1.000         1       0       0
─────────────────────────────────────────────────────────────────────
計                                  28   100%    0.913        21       2       5

※先手勝率は、千日手・持将棋を除外したもの
角換わり全体は、計16局( 57.1%)  13勝0敗3分
千日手・持将棋を除外した場合、13勝0敗  先手勝率 1.000
千日手・持将棋を0.5勝0.5敗とした場合、14.5勝 1.5敗  先手勝率 0.906

二次予選の戦型は、次です。

2026年二次予選
                  戦型         棋譜数  割合(%)  先手勝率 先手勝ち 後手勝ち 千日手・持将棋
─────────────────────────────────────────────────────────────
  1:          角換わり腰掛け銀:    35  28.5%    0.879        29       4       2
  2:                  相掛かり:    31  25.2%    0.538        14      12       5
  3:            角換わりその他:    22  17.9%    0.619        13       8       1
  4:                      矢倉:     9   7.3%    0.778         7       2       0
  5:              その他の戦型:     6   4.9%    0.500         3       3       0
  6:                  四間飛車:     3   2.4%    0.500         1       1       1
  7:        横歩取り△3三角型:     3   2.4%    1.000         3       0       0
  8:            横歩取りその他:     3   2.4%    0.667         2       1       0
  9:            一手損角換わり:     3   2.4%    1.000         3       0       0
 10:                  三間飛車:     2   1.6%    0.000         0       1       1
 11:                向かい飛車:     2   1.6%    0.500         1       1       0
 12:            ゴキゲン中飛車:     2   1.6%    0.500         1       1       0
 13:                      雁木:     1   0.8%    1.000         1       0       0
 14:          角交換型振り飛車:     1   0.8%    0.000         0       1       0
─────────────────────────────────────────────────────────────
計                                 123   100%    0.690        78      35      10

※先手勝率は、千日手・持将棋を除外したもの
角換わり全体は、計60局( 48.8%)  45勝12敗3分
千日手・持将棋を除外した場合、45勝12敗  先手勝率 0.789
千日手・持将棋を0.5勝0.5敗とした場合、46.0勝13.0敗  先手勝率 0.767

参考として、2025年の決勝の戦型は、次でした。

2025年決勝
                  戦型         棋譜数  割合(%)  先手勝率 先手勝ち 後手勝ち
──────────────────────────────────────────────────────
  1:          角換わり腰掛け銀:    12  42.9%    0.818         9       2
  2:            角換わりその他:     6  21.4%    1.000         6       0
  3:                  相掛かり:     4  14.3%    0.000         0       4
  4:                      雁木:     3  10.7%    0.667         2       1
  5:          角交換型振り飛車:     1   3.6%    1.000         1       0
  6:                      矢倉:     1   3.6%    -----         0       0
  7:              その他の戦型:     1   3.6%    1.000         1       0
──────────────────────────────────────────────────────
計                                  28   100%    0.731        19       7
角換わり全体は、計18局  15勝2敗  先手勝率 0.882
※先手勝率は、千日手・持将棋を除外したもの
2025年二次予選
                  戦型         棋譜数  割合(%)  先手勝率 先手勝ち 後手勝ち
──────────────────────────────────────────────────────
  1:            角換わりその他:    33  26.4%    0.750        24       8
  2:                  相掛かり:    27  21.6%    0.423        11      15
  3:          角換わり腰掛け銀:    19  15.2%    0.789        15       4
  4:                      矢倉:     9   7.2%    0.444         4       5
  5:            ゴキゲン中飛車:     7   5.6%    0.600         3       2
  6:                      雁木:     7   5.6%    0.429         3       4
  7:              その他の戦型:     6   4.8%    0.250         1       3
  8:                  三間飛車:     4   3.2%    0.750         3       1
  9:                  四間飛車:     4   3.2%    0.250         1       3
 10:          角交換型振り飛車:     3   2.4%    0.667         2       1
 11:            横歩取りその他:     2   1.6%    1.000         2       0
 12:            一手損角換わり:     2   1.6%    1.000         2       0
 13:                向かい飛車:     1   0.8%    1.000         1       0
 14:        横歩取り△3三角型:     1   0.8%    1.000         1       0
──────────────────────────────────────────────────────
計                                 125   100%    0.613        73      46
※先手勝率は、千日手・持将棋を除外したもの
2024年決勝
                  戦型         棋譜数  割合(%)  先手勝率 先手勝ち 後手勝ち
──────────────────────────────────────────────────────
  1:          角換わり早繰り銀:     7  25.0%    0.833         5       1
  2:          角換わり腰掛け銀:     6  21.4%    0.750         3       1
  3:                  相掛かり:     5  17.9%    0.800         4       1
  4:                      矢倉:     4  14.3%    0.500         2       2
  5:          角換わり飛先交換:     2   7.1%    1.000         2       0
  6:            角換わりその他:     2   7.1%    0.500         1       1
  7:              角換わり右玉:     1   3.6%    1.000         1       0
  8:              角換わり棒銀:     1   3.6%    0.000         0       1
──────────────────────────────────────────────────────
計                                  28   100%    0.720        18       7
角換わり全体は、計19局  12勝4敗  先手勝率 0.750
※先手勝率は、千日手・持将棋を除外したもの

4.5 決勝の初手

柿木将棋で初期配置を表示し、ツール / 棋譜データベースで局面検索(F9) のメニューを実行し、ツール / 次の手分析 を実行すると、初手を分析できます。

初手は、次のように、▲2六歩が21局と最多です。

2026年決勝
   次の手    棋譜数(%)     先手勝率
─────────────────────────────────────────────
 1.▲2六歩      21 ( 75.0%)     0.882     15勝      2敗      4分
 2.▲7六歩       7 ( 25.0%)     1.000      6勝      0敗      1分
─────────────────────────────────────────────
計               28             0.913     21勝      2敗      5分
※先手勝率は、千日手・持将棋を除外したもの


参考として、2025年と2024年の決勝の初手です。

2025年決勝
   次の手    棋譜数(%)     先手勝率
─────────────────────────────────────────────
 1.▲2六歩      18 ( 64.3%)     0.688     11勝      5敗
 2.▲7六歩       9 ( 32.1%)     0.889      8勝      1敗
 3.▲7八金       1 (  3.6%)     0.000      0勝      1敗
─────────────────────────────────────────────
計               28             0.731     19勝      7敗
※先手勝率は、千日手・持将棋を除外したもの
2024年決勝
   次の手    棋譜数(%)     先手勝率
─────────────────────────────────────────────
 1.▲2六歩      25 ( 89.3%)     0.739     17勝      6敗
 2.▲7六歩       3 ( 10.7%)     0.500      1勝      1敗
─────────────────────────────────────────────
計               28             0.720     18勝      7敗
※先手勝率は、千日手・持将棋を除外したもの

5.全棋譜

5.1 全棋譜の統計計算

全棋譜の勝率・平均手数等です。
先手勝率は、決勝だけより下がります。
平均手数は、決勝だけより短くなります。

2026年全棋譜
────────────────────────────
棋譜数    :   295
先手勝ち   :   182  宣言勝ちを含む
後手勝ち   :    96  宣言勝ちを含む
先手宣言勝ち :     8
後手宣言勝ち :     1
千日手    :    12
持将棋    :     5  320手
先手勝率1   : 0.655  千日手・持将棋を除外した場合 182勝96敗
後手勝率1   : 0.345  千日手・持将棋を除外した場合
先手勝率2   : 0.646  千日手・持将棋を0.5勝0.5敗とした場合 190.5勝104.5敗
後手勝率2   : 0.354  千日手・持将棋を0.5勝0.5敗とした場合
平均手数   : 139.827  千日手を含む
平均手数   : 141.325  千日手を除く
手数のメジアン: 131.0    千日手を含む
手数のメジアン: 133.0    千日手を除く
────────────────────────────

参考として、2025年までは、次でした。

2025年全棋譜
────────────────────────────
棋譜数    :   289
先手勝ち   :   162  宣言勝ちを含む
後手勝ち   :   117  宣言勝ちを含む
先手宣言勝ち :     3
後手宣言勝ち :     1
千日手    :     5
持将棋    :     5  320手
先手勝率1   : 0.581  千日手・持将棋を除外した場合 162勝117敗
後手勝率1   : 0.419  千日手・持将棋を除外した場合
先手勝率2   : 0.578  千日手・持将棋を0.5勝0.5敗とした場合 167.0勝122.0敗
後手勝率2   : 0.422  千日手・持将棋を0.5勝0.5敗とした場合
平均手数   : 129.723  千日手を含む
平均手数   : 130.451  千日手を除く
手数のメジアン: 120.0    千日手を含む
手数のメジアン: 122.0    千日手を除く
────────────────────────────
2024年全棋譜
────────────────────────────
棋譜数    :   266
先手勝ち   :   144  宣言勝ちを含む
後手勝ち   :   100  宣言勝ちを含む
先手宣言勝ち :     6
後手宣言勝ち :     2
千日手    :    12
持将棋    :    10  320手
先手勝率1   : 0.590  千日手・持将棋を除外した場合 144勝100敗
後手勝率1   : 0.410  千日手・持将棋を除外した場合
先手勝率2   : 0.583  千日手・持将棋を0.5勝0.5敗とした場合 155.0勝111.0敗
後手勝率2   : 0.417  千日手・持将棋を0.5勝0.5敗とした場合
平均手数   : 138.797  千日手を含む
平均手数   : 141.583  千日手を除く
手数のメジアン: 127.0    千日手を含む
手数のメジアン: 130.0    千日手を除く
────────────────────────────
2023年全棋譜
────────────────────────────
棋譜数    :   266
先手勝ち   :   142  宣言勝ちを含む
後手勝ち   :   121  宣言勝ちを含む
先手宣言勝ち :     2
後手宣言勝ち :     3
千日手    :     0
持将棋    :     0
中断     :     3  320手
先手勝率1   : 0.540  千日手・持将棋を除外した場合 142勝121敗
後手勝率1   : 0.460  千日手・持将棋を除外した場合
先手勝率2   : 0.539  千日手・持将棋を0.5勝0.5敗とした場合 143.5勝122.5敗
後手勝率2   : 0.461  千日手・持将棋を0.5勝0.5敗とした場合
平均手数   : 127.786  千日手を含む
平均手数   : 127.786  千日手を除く
手数のメジアン: 123.0    千日手を含む
手数のメジアン: 123.0    千日手を除く
────────────────────────────
2022年全棋譜
────────────────────────────
棋譜数    :   279
先手勝ち   :   141  宣言勝ちを含む
後手勝ち   :   123  宣言勝ちを含む
先手宣言勝ち :     1
後手宣言勝ち :     1
千日手    :     8
持将棋    :     0
中断     :     7  320手
先手勝率1   : 0.534  千日手・持将棋を除外した場合 141勝123敗
後手勝率1   : 0.466  千日手・持将棋を除外した場合
先手勝率2   : 0.532  千日手・持将棋を0.5勝0.5敗とした場合 148.5勝130.5敗
後手勝率2   : 0.468  千日手・持将棋を0.5勝0.5敗とした場合
平均手数   : 132.251  千日手を含む
平均手数   : 133.424  千日手を除く
手数のメジアン: 123.0    千日手を含む
手数のメジアン: 124.0    千日手を除く
────────────────────────────
2021年全棋譜
────────────────────────────
棋譜数    :   298
先手勝ち   :   146  宣言勝ちを含む
後手勝ち   :   138  宣言勝ちを含む
先手宣言勝ち :     2
後手宣言勝ち :     5
千日手    :    10
持将棋    :     0
中断     :     4  320手
先手勝率1   : 0.514  千日手・持将棋を除外した場合 146勝138敗
後手勝率1   : 0.486  千日手・持将棋を除外した場合
先手勝率2   : 0.513  千日手・持将棋を0.5勝0.5敗とした場合 153.0勝145.0敗
後手勝率2   : 0.487  千日手・持将棋を0.5勝0.5敗とした場合
平均手数   : 134.070  千日手を含む
平均手数   : 135.688  千日手を除く
手数のメジアン: 130.0    千日手を含む
手数のメジアン: 132.0    千日手を除く
────────────────────────────

5.2 全棋譜の戦型

選手権の全棋譜295局の戦型は次です。
相掛かりが多く、振り飛車もある程度あります。

2026年全棋譜
                  戦型         棋譜数  割合(%)  先手勝率 先手勝ち 後手勝ち 千日手・持将棋
─────────────────────────────────────────────
  1:                  相掛かり:    62  21.0%    0.509        28      27       7
  2:          角換わり腰掛け銀:    58  19.7%    0.849        45       8       5
  3:            角換わりその他:    57  19.3%    0.574        31      23       3
  4:              その他の戦型:    31  10.5%    0.613        19      12       0
  5:                      矢倉:    21   7.1%    0.667        14       7       0
  6:                  四間飛車:    12   4.1%    0.636         7       4       1
  7:                  三間飛車:    11   3.7%    0.600         6       4       1
  8:        横歩取り△3三角型:    10   3.4%    0.700         7       3       0
  9:                向かい飛車:     7   2.4%    0.429         3       4       0
 10:          角交換型振り飛車:     7   2.4%    0.857         6       1       0
 11:            横歩取りその他:     5   1.7%    0.800         4       1       0
 12:            ゴキゲン中飛車:     4   1.4%    0.750         3       1       0
 13:            一手損角換わり:     4   1.4%    1.000         4       0       0
 14:                      雁木:     3   1.0%    1.000         3       0       0
 15:                  戦型未定:     2   0.7%    0.500         1       1       0
 16:                相振り飛車:     1   0.3%    1.000         1       0       0
─────────────────────────────────────────────
計                                 295   100%    0.655       182      96      17

※先手勝率は、千日手・持将棋を除外したもの

角換わり全体は、計119局( 40.3%)  80勝31敗8分
千日手・持将棋を除外した場合、80勝31敗  先手勝率 0.721
千日手・持将棋を0.5勝0.5敗とした場合、84.0勝35.0敗  先手勝率 0.706

参考として、2025年までは、次でした。

2025年全棋譜
                  戦型         棋譜数  割合(%)  先手勝率 先手勝ち 後手勝ち
──────────────────────────────────────
  1:            角換わりその他:    58  20.1%    0.732        41      15
  2:                  相掛かり:    55  19.0%    0.415        22      31
  3:              その他の戦型:    34  11.8%    0.469        15      17
  4:          角換わり腰掛け銀:    33  11.4%    0.781        25       7
  5:                      矢倉:    16   5.5%    0.600         9       6
  6:                  四間飛車:    15   5.2%    0.333         5      10
  7:          角交換型振り飛車:    13   4.5%    0.385         5       8
  8:                  三間飛車:    11   3.8%    0.636         7       4
  9:            ゴキゲン中飛車:    11   3.8%    0.667         6       3
 10:                      雁木:    11   3.8%    0.455         5       6
 11:            一手損角換わり:     8   2.8%    0.875         7       1
 12:            横歩取りその他:     7   2.4%    0.714         5       2
 13:                  戦型未定:     7   2.4%    0.571         4       3
 14:                向かい飛車:     6   2.1%    0.500         3       3
 15:        横歩取り△3三角型:     2   0.7%    0.500         1       1
 16:                相振り飛車:     2   0.7%    1.000         2       0
──────────────────────────────────────
計                                 289   100%    0.581       162     117
※先手勝率は、千日手・持将棋を除外したもの
2024年全棋譜
                  戦型         棋譜数  割合(%)  先手勝率 先手勝ち 後手勝ち
──────────────────────────────────────
  1:            角換わりその他:    59  22.2%    0.673        35      17
  2:                  相掛かり:    50  18.8%    0.488        21      22
  3:              その他の戦型:    38  14.3%    0.528        19      17
  4:                      矢倉:    25   9.4%    0.522        12      11
  5:          角換わり腰掛け銀:    19   7.1%    0.688        11       5
  6:                  三間飛車:    16   6.0%    0.438         7       9
  7:          角交換型振り飛車:    12   4.5%    0.636         7       4
  8:                  四間飛車:    10   3.8%    0.600         6       4
  9:        横歩取り△3三角型:    10   3.8%    0.900         9       1
 10:                向かい飛車:     6   2.3%    0.833         5       1
 11:            ゴキゲン中飛車:     6   2.3%    0.500         3       3
 12:            一手損角換わり:     6   2.3%    0.833         5       1
 13:                相振り飛車:     4   1.5%    0.250         1       3
 14:            横歩取りその他:     2   0.8%    0.500         1       1
 15:                  戦型未定:     2   0.8%    0.500         1       1
 16:                    中飛車:     1   0.4%    1.000         1       0
──────────────────────────────────────
計                                 266   100%    0.590       144     100
※先手勝率は、千日手・持将棋を除外したもの
2023年全棋譜
                  戦型         棋譜数  割合(%)  先手勝率 先手勝ち 後手勝ち
──────────────────────────────────────
  1:                  相掛かり:    57  21.4%    0.582        32      23
  2:            角換わりその他:    41  15.4%    0.610        25      16
  3:              その他の戦型:    29  10.9%    0.552        16      13
  4:                      矢倉:    24   9.0%    0.500        12      12
  5:                  四間飛車:    20   7.5%    0.600        12       8
  6:          角換わり腰掛け銀:    20   7.5%    0.579        11       8
  7:          角交換型振り飛車:    17   6.4%    0.471         8       9
  8:                  三間飛車:    14   5.3%    0.500         7       7
  9:            横歩取りその他:    10   3.8%    0.600         6       4
 10:                      雁木:     8   3.0%    0.250         2       6
 11:                    中飛車:     7   2.6%    0.286         2       5
 12:                  戦型未定:     6   2.3%    0.333         2       4
 13:            一手損角換わり:     6   2.3%    0.667         4       2
 14:        横歩取り△3三角型:     3   1.1%    0.667         2       1
 15:                相振り飛車:     2   0.8%    0.000         0       2
 16:            ゴキゲン中飛車:     1   0.4%    0.000         0       1
 17:                向かい飛車:     1   0.4%    1.000         1       0
──────────────────────────────────────
計                                 266   100%    0.540       142     121
※先手勝率は、千日手・持将棋を除外したもの

5.3 全棋譜の初手

全棋譜の初手も、次のように、▲2六歩が最多です。

2026年全棋譜
   次の手    棋譜数(%)     先手勝率
─────────────────────────────────
 1.▲2六歩     164 ( 55.6%)     0.703    109勝     46敗      9分
 2.▲7六歩      87 ( 29.5%)     0.704     57勝     24敗      6分
 3.▲7八金       9 (  3.1%)     0.375      3勝      5敗      1分
 4.▲7八飛       7 (  2.4%)     0.500      3勝      3敗      1分
 5.▲3八銀       5 (  1.7%)     0.200      1勝      4敗      0分
 6.▲5八玉       4 (  1.4%)     0.500      2勝      2敗      0分
 7.▲5六歩       4 (  1.4%)     0.750      3勝      1敗      0分
 8.▲6六歩       4 (  1.4%)     0.250      1勝      3敗      0分
 9.▲6八玉       3 (  1.0%)     0.667      2勝      1敗      0分
10.▲9六歩       2 (  0.7%)     0.000      0勝      2敗      0分
11.▲4八銀       2 (  0.7%)     0.500      1勝      1敗      0分
12.▲5八金左     1 (  0.3%)     0.000      0勝      1敗      0分
13.▲4八金       1 (  0.3%)     0.000      0勝      1敗      0分
14.▲6八金       1 (  0.3%)     0.000      0勝      1敗      0分
15.▲7八銀       1 (  0.3%)     0.000      0勝      1敗      0分
─────────────────────────────────
計              295             0.655    182勝     96敗     17分
※先手勝率は、千日手・持将棋を除外したもの

参考として、2025年までは、以下です。

2025年全棋譜
   次の手    棋譜数(%)     先手勝率
─────────────────────────────
 1.▲2六歩     163 ( 56.4%)     0.645    100勝     55敗
 2.▲7六歩      76 ( 26.3%)     0.539     41勝     35敗
 3.▲5六歩      12 (  4.2%)     0.800      8勝      2敗
 4.▲7八飛       7 (  2.4%)     0.571      4勝      3敗
 5.▲7八金       7 (  2.4%)     0.429      3勝      4敗
 6.▲9六歩       7 (  2.4%)     0.000      0勝      7敗
 7.▲4八銀       5 (  1.7%)     0.200      1勝      4敗
 8.▲6六歩       4 (  1.4%)     0.500      2勝      2敗
 9.▲3八銀       2 (  0.7%)     0.000      0勝      2敗
10.▲6八玉       2 (  0.7%)     0.500      1勝      1敗
11.▲4六歩       1 (  0.3%)     0.000      0勝      1敗
12.▲4八玉       1 (  0.3%)     1.000      1勝      0敗
13.▲6八金       1 (  0.3%)     0.000      0勝      1敗
14.▲5八金左     1 (  0.3%)     1.000      1勝      0敗
─────────────────────────────
計              289             0.581    162勝    117敗
※先手勝率は、千日手・持将棋を除外したもの
2024年全棋譜
   次の手    棋譜数(%)     先手勝率
─────────────────────────────
 1.▲2六歩     144 ( 54.1%)     0.705     91勝     38敗
 2.▲7六歩      84 ( 31.6%)     0.449     35勝     43敗
 3.▲7八飛       6 (  2.3%)     0.600      3勝      2敗
 4.▲7八金       6 (  2.3%)     0.500      3勝      3敗
 5.▲5六歩       5 (  1.9%)     0.400      2勝      3敗
 6.▲4八銀       5 (  1.9%)     0.400      2勝      3敗
 7.▲9六歩       4 (  1.5%)     0.500      2勝      2敗
 8.▲6六歩       3 (  1.1%)     0.667      2勝      1敗
 9.▲6八玉       3 (  1.1%)     0.333      1勝      2敗
10.▲9八香       1 (  0.4%)     1.000      1勝      0敗
11.▲1六歩       1 (  0.4%)     1.000      1勝      0敗
12.▲4八飛       1 (  0.4%)     0.000      0勝      1敗
13.▲3八銀       1 (  0.4%)     0.000      0勝      1敗
14.▲5八飛       1 (  0.4%)     1.000      1勝      0敗
15.▲1八香       1 (  0.4%)     0.000      0勝      1敗
─────────────────────────────
計              266             0.590    144勝    100敗
※先手勝率は、千日手・持将棋を除外したもの

6.後手番での勝率

後手番での勝率の高いプログラムを調べた。

   後手  棋譜数 (%)     後手の勝率と勝敗
───────────────────────────────────────────────
 1. こだぬき                 9 (  3.1%)     0.750      6勝      2敗    0分
 2. Argo                     4 (  1.4%)     0.750      3勝      1敗    0分
 3. きのあ将棋               4 (  1.4%)     0.750      3勝      1敗    0分
 4. HoneyWaffle              4 (  1.4%)     0.667      2勝      1敗    1分
 5. ねね将棋                 9 (  3.1%)     0.625      5勝      3敗    0分
 6. 氷彗                    10 (  3.4%)     0.500      3勝      3敗    3分
 7. 芽生将棋                 8 (  2.7%)     0.500      4勝      4敗    0分
 8. 東横将棋                 4 (  1.4%)     0.500      2勝      2敗    0分
 9. etude12                  4 (  1.4%)     0.500      2勝      2敗    0分
10. なのは                   4 (  1.4%)     0.500      2勝      2敗    0分
11. まったりゆうちゃん       4 (  1.4%)     0.500      2勝      2敗    0分
12. 65537                    4 (  1.4%)     0.500      2勝      2敗    0分
13. ザ・グレートウシジマ     4 (  1.4%)     0.500      2勝      2敗    0分
14. 手抜き                   4 (  1.4%)     0.500      2勝      2敗    0分
15. 二番絞り                 4 (  1.4%)     0.500      2勝      2敗    0分
16. GABEL                   10 (  3.4%)     0.444      4勝      5敗    0分
17. W@nderER                 9 (  3.1%)     0.444      4勝      5敗    0分
18. 四七八将棋               8 (  2.7%)     0.429      3勝      4敗    1分
19. JHBR                     8 (  2.7%)     0.429      3勝      4敗    1分
20. dlshogi                  7 (  2.4%)     0.400      2勝      3敗    2分
───────────────────────────────────────────────
※勝率は、千日手・持将棋を除外したもの

Android: Firebase で分析データが表示されなくなった。

Android アプリをアップデイトしたところ、Firebase で、分析データが表示されなくなった。
ログを見ると、次のように、エラーが表示されていた。

Missing google_app_id. Firebase Analytics disabled. See https://goo.gl/NAOOOI

アップデイトでは、次のように、firebase-bom のバージョンを 29.1.0 から 29.2.1 に上げたので、これが原因かも知れない。しかし、元に戻しても解決しなかった。

implementation platform('com.google.firebase:firebase-bom:29.2.1')

もう1点、変えたのは、Android Studio Narwhal | 2025.1.1 から Android Studio Otter 2 Feature Drop | 2025.2.2 にしたことで、これが原因かも知れない。

色々、やってみた結果、次のように、com.google.gms:google-services を 4.3.10 から 4.4.4 に上げたところ、エラーが解決した。

// ROOT build.gradle
    dependencies {
        // 4.3.10 -> 4.4.4
        classpath 'com.google.gms:google-services:4.4.4'
    }

イベントが送られるようになったことは、Firebase の DebugView で確認できる。

参考サイト:
stackoverflow.com

新しい Mac での Xcode のエラー

Xcode 26.4

Xcode の最新版 26.4 (26.4.1) をインストールするためには、macOS Tahoe 26.2 以降が必要である。

developer.apple.com

macOS Tahoe 26 を実行するには、次の Mac が必要である。

support.apple.com

これまで使っていた MacBook Pro (15-inch, 2019) では、とうとうこの macOS が実行できなくなり、初めて、Appleシリコンの MacBook Pro を購入した。

シミュレーター用のビルドでエラー

Xcode 26.4 で、従来のプロジェクトをシミュレーター用にビルドしたところ、次のエラーメッセージが表示された。

Building for 'iOS-simulator', but linking in object file (***) built for 'iOS'

この場合の対応として、よく書かれているのは、

・Build Settings の Excluded Architectures に Any iOS Simulator SDK arm64 を追加する。

であるが、僕の場合は、状況が悪化しただけだった。

エラーメッセージの中に libAdIdAccess.a が書かれていた。
これは、GoogleAnalytics をインストールする際、ファイルとしてリンクした古い Framework で、もう使っていない。
Build Phase の Link Binaly With Libraries で、このフレームワークを削除することで解決した。

libGoogleAnalyticsServices.a も同様であった。

Link Binaly With Libraries

証明書が「信頼されていません。」

実機用にビルドした際、証明書・プロビジョニングファイルがエラーになった。
キーチェーンアクセスで証明書の情報を確認すると、証明書が「信頼されていません。」との表示だった。
次から、証明書をダウンロードし、インストールすることで解決した。

www.apple.com

wcscpy_s、wcscat_s 等でアクセス違反

次のようなコードを書き、アクセス違反となり、一瞬、原因がわからなかった。

#define BUF_SIZE 1024

	// _UNICODE を定義
	TCHAR *buf = (TCHAR *)malloc(BUF_SIZE);
	wcscpy_s(buf, BUF_SIZE, _T("文字列"));

learn.microsoft.com

learn.microsoft.com

どちらも

これらの関数のデバッグ ライブラリ バージョンでは、最初にバッファーを 0xFE で埋めます。

malloc や GlobalAlloc の引数は、どちらもバイト数であるので、次のように書かないといけない。

#define BUF_SIZE 1024

	// _UNICODE を定義
	TCHAR *buf = (TCHAR *)malloc(sizeof(TCHAR) * BUF_SIZE);	// バイト数
	または
	TCHAR *buf = new TCHAR[BUF_SIZE]; // 文字数

	wcscpy_s(buf, BUF_SIZE, _T("文字列"));

Windows MFC の WriteProfileString と GetProfileInt の落とし穴

MFC で、レジストリに整数を記録する場合、WriteProfileInt を次のように書く。

AfxGetApp()->WriteProfileInt("Section", "Entry", Value);

これは、CWinApp のメンバー関数である。

読む時は、次のようにする。

int i = AfxGetApp()->GetProfileInt("Section", "Entry", Default); // AfxGetApp()-> が必要!

これを次のように書いてもエラーにはならない。

int i = GetProfileInt("Section", "Entry", Default);

しかし、これは WIN32 の API であり、期待の動作とはならない。

learn.microsoft.com

また、レジストリに文字列を記録する場合、次のように書く。

AfxGetApp()->WriteProfileString("Section", "Entry", Value);	// AfxGetApp()-> が必要!

これを次のように書いてもエラーにはならない。

WriteProfileString("Section", "Entry", Value);

しかし、これは WIN32 の API であり、期待の動作とはならない。

learn.microsoft.com

Android Studio や Visual Studio Code で、ソースコードにマークを記録する

Mac の Xcode では、ソースコードに、次のようにマークを記録でき、とても便利だ。

#pragma mark -
#pragma mark UIWebView delegate methods
#pragma mark 選択

この機能は、他の開発ツールでも使いたくなる。
実際、次で、Android Studio で、同等の機能がないかの質問がされている。

stackoverflow.com

僕は、次のように記述し、代用している。
日本語でも書ける。

	void ______MARK______ () {}	// Structure 用マーク
	void ______日本語のメモ______ () {}	// Structure 用マーク

Visual Studio Code で、JavaScript の場合は、次のように記述できる。

function ___MARK________() {} // OUTLINE 用マーク

今回、次で、Visual Studio 用に、同じ方法が書かれているのに気がついた。
stackoverflow.com