sdk0002
の編集
http://k.osask.jp/wiki/?sdk0002
[
リロード
] [
新規
|
編集
|
差分
|
添付
] [
トップ
|
一覧
|
単語検索
|
最終更新
|
バックアップ
|
ヘルプ
]
-- 雛形とするページ --
2012_09
ADSL
ADSL1
BarbaraDye@protonmail.com
Books
DVD-R
EPIA_series
EPM
FormatRule
FrontPage
Help
HomeBakery
HomeBakery2016
InterWikiName
InterWikiSandBox
InterWikiテクニカル
K
KHBIOS/0001
KHBIOS/0002
Lojban
MenuBar
OSA/imp060524
OSC_rule
PASS3
PASS3v1
PukiWiki
RecentDeleted
SandBox
SitePolicy
WattChecker
bank
banks
blogs
blogs2
boyaki_a
boyaki_a/00001
boyaki_a/00002
boyaki_a/00003
boyaki_a/00004
boyaki_a/00005
boyaki_a/00006
boyaki_a/00007
boyaki_a/00008
boyaki_a/00009
boyaki_a/00010
boyaki_a/00011
boyaki_a/00012
boyaki_a/00013
boyaki_a/00014
boyaki_a/00015
boyaki_a/00016
boyaki_a/00017
boyaki_a/00018
boyaki_a/00019
boyaki_a/00020
boyaki_a/00021
boyaki_a/00023
boyaki_a/00024
boyaki_a/00025
boyaki_a/00026
boyaki_a/00027
boyaki_a/00028
boyaki_a/00029
boyaki_a/00030
boyaki_a/00031
boyaki_a/00032
boyaki_a/00033
boyaki_a/00034
boyaki_a/00035
boyaki_a/00036
boyaki_a/00037
boyaki_a/00038
boyaki_a/00039
boyaki_a/00040
boyaki_a/00041
boyaki_a/00042
boyaki_a/00043
boyaki_a/00044
boyaki_a/00045
boyaki_a/00046
boyaki_a/00047
boyaki_a/00048
boyaki_a/00049
boyaki_a/00050
boyaki_a/00051
boyaki_a/00052
boyaki_a/00053
boyaki_a/00054
boyaki_a/00055
boyaki_a/00056
boyaki_a/00057
boyaki_a/00058
boyaki_a/00059
boyaki_a/00060
boyaki_a/00061
boyaki_a/00062
boyaki_a/00063
boyaki_a/00064
boyaki_a/00065
boyaki_a/00066
boyaki_a/00067
boyaki_a/00068
boyaki_a/00069
boyaki_a/00070
boyaki_a/00071
boyaki_a/00072
boyaki_a/00073
boyaki_a/00074
boyaki_a/00075
boyaki_a/00076
boyaki_a/00077
boyaki_a/00078
boyaki_a/00079
boyaki_a/00080
boyaki_a/00081
boyaki_a/00082
boyaki_a/00083
boyaki_a/00084
boyaki_a/00085
boyaki_a/00086
boyaki_a/00087
boyaki_a/00088
boyaki_a/00089
boyaki_a/00090
boyaki_a/00091
boyaki_a/00092
boyaki_a/00093
boyaki_a/00094
boyaki_a/00095
boyaki_a/00096
boyaki_a/00097
boyaki_a/00098
boyaki_a/00099
boyaki_a/00100
boyaki_a/00101
boyaki_a/00102
boyaki_a/00103
boyaki_a/00104
boyaki_a/00105
boyaki_a/00106
boyaki_a/00107
boyaki_a/00108
boyaki_a/00109
boyaki_a/00110
boyaki_a/00111
boyaki_a/00112
boyaki_a/00113
boyaki_a/00114
boyaki_a/00115
boyaki_a/00116
boyaki_a/00117
boyaki_a/00118
boyaki_a/00119
boyaki_a/00120
boyaki_a/00121
boyaki_a/00122
boyaki_a/00123
boyaki_a/00124
boyaki_a/00125
boyaki_a/00126
boyaki_a/00127
boyaki_a/00128
boyaki_a/00129
boyaki_a/00130
boyaki_a/00131
boyaki_a/00132
boyaki_a/00133
boyaki_a/00134
boyaki_a/00135
boyaki_a/00136
boyaki_a/00137
boyaki_a/00138
boyaki_a/00139
boyaki_a/00140
boyaki_a/00141
boyaki_a/00142
boyaki_a/00143
boyaki_a/00144
boyaki_a/00145
boyaki_a/00146
boyaki_a/00147
boyaki_a/00148
boyaki_a/00149
boyaki_a/00150
boyaki_a/00151
boyaki_a/00152
boyaki_a/00153
boyaki_a/00154
boyaki_a/00155
boyaki_a/00156
boyaki_a/00157
boyaki_a/00158
boyaki_a/00159
boyaki_a/00160
boyaki_a/00161
boyaki_a/00162
boyaki_a/00163
boyaki_a/00164
boyaki_a/00165
boyaki_a/0022
data/Clover
data/Clover/hrb_A
data/Clover/hrb_Clover
data/Clover/mail0000
data/Clover/mail0001
data/Clover/mail0002
data/Clover/mail0003
data/Clover/mail0004
data/Clover/mail0005
data/Clover/others
dev-j/THE-BBL/nanasi
ideas
ideas/s7st
ideas/tek3
ideas/tek5
impressions
index
isolations/osw_vga
k
k_in_TOMAMI
kclib1_0000
kclib1_0001
kclib1_0002
kclib1_0003
kclib1_0004
keng
khaba/memo001
khaba/memo002
khaba/memo003
khaba/memo004
khaba/memo005
khaba/memo006
khaba/memo007
klog
klog/comment03
klog/comment04
klog/comment05
klog/essay050
klog/essay051
klog/essay052
klog/essay053
klog/essay054
klog/essay055
klog/essay056
klog/essay057
klog/essay058
klog/essay059
klog/essay060
klog/essay061
klog/essay062
klog/essay063
klog/essay064
klog/essay065
klog/essay066
klog/essay067
klog/essay068
klog/essay069
klog/essay070
klog/essay071
klog/essay072
klog/essay073
klog/essay074
klog/essay075
klog/essay076
klog/essay077
klog/essay078
klog/essay079
klog/essay080
klog/essay081
klog/essay082
klog/essay083
klog/essay084
klog/essay085
klog/essay086
klog/essay087
klog/essay088
klog/essay089
klog/essay090
klog/essay091
klog/essay092
klog/essay093
klog/essay094
klog/essay095
klog/essay096
klog/essay097
klog/essay098
klog/essay099
klog/essay100
klog/essay101
klog/essay102
klog/essay103
klog/essay104
klog/essay105
klog/essays
klog/gfghh
klog/monologue0312
klog/monologue0401
klog/monologue0402
klog/monologue0403
klog/monologue0404
klog/monologue0405
klog/monologue0406
klog/monologue0407
klog/monologue0408
klog/monologue0409
klog/monologue0410
klog/monologue0411
klog/monologue0412
klog/monologue0501
klog/monologue0502
klog/monologue0503
klog/monologue0504
klog/monologue0505
klog/monologue0506
klog/monologue0507
klog/monologue0508
klog/monologue0509
klog/monologue0510
klog/monologue0511
klog/monologue0512
klog/monologue0601
klog/monologue0602
klog/monologue0603
klog/monologue0604
klog/monologue0605
klog/monologue0606
klog/monologue0607-12
klog/old1010
klog/oldk00
krdm0000
krdm0001
krdm0002
krdm0003
links
links/pc0000
links/prog0000
links/soft0000
math
math/00
math/01
math/02
math/03
math/04
math/05
math/06
math/07
math/08
math/09
math/10
mc
memo0001
memo0002
memo0003
memo0004
memo0005
memo0006
memo0011
memo0012
memo0013
memo0014
memo0015
memo0016
memo0017
memo0018
memo0019
memo0020
memo0020/old
memo0021
memo0022
memo0023
memo0024
memo0025
memo0026
memo0027
memo0028
memo0029
memo0030
memo0031
memo0032
memo0033
memo0034
memo0035
memo0036
memo0037
memo0038
memo0039
memo0040
memo0041
memo0042
memo0043
memo0044
memo0045
memo0046
memo0047
memo0048
memo0049
memo0050
memo0051
memo007
memo008
memo009
memo010
memo_dos
memo_opera
minimemo
miniquestions
nask/guide000
nask/guide001
notice
osalinks
osask_khb/memo001
osask_khb/memo002
oversampling
p2018
p20181020
p20181021a
p20181023a
p20181024a
p20181026a
p20181026b
p20181026c
p20181102a
p20181115a
p20181127a
p20181208a
p20181214a
p20190119a
p20190122a
p20190126a
p20190129a
p20190131a
p20190201a
p20190201b
p20190206a
p20190206b
p20190208a
p20190209b
p20190213a
p20190218a
p20190225a
p20190306a
p20190513a
p20190524a
p20190528a
p20190917a
p20191006a
p20191025a
p20191030a
p20191122a
p20191125a
p20191126a
p20191226a
p20200109a
p20200221a
p20200309a
p20200315a
p20200423a
p20200513a
p20200808a
p20200821a
p20211014a
p20211017a
p20211028a
p20211223a
p20220106a
pcmemo
physics
populars
prog/01
prog/02
prop/WaseiOs
quake
quake/jsedip
quake/jsedip/data
quake/jsedip/data05
rep_20061028
rep_OSC06_niigata
sam
sdk0000
sdk0001
sdk0002
sdk0003
sdk0004
spam/hrbwiki/rule
spam/kkiwi/boyaki_a
spam/oswiki/ASKA
spam/oswiki/VGA
spam/oswiki/qemu
spam/test
spysee
test_kor
travel
urls
videochips
ヘルプ
整形ルール
練習用ページ
20212021
* 川合秀実の数独研究に関するドキュメント#2 -(by [[K]], 2019.04.02) ** (4) 富士型 (2015年07月ごろ) -そうこうしているうちに大した成果も出ないまま、2年が過ぎていました。 -私の仮説として、難問は何らかのパターンを有しているというのがあります。・・・つまりこういうことです。高得点の難問を集めてじっと見つめていると、共通のパターンが見えてきて、そのパターンを見出した後は、そのパターンを有する問題を大量生産してgsf's -q2 ratingをひたすら計算すれば、きっと未知の超絶難問を見つけることができるだろう、ということです。 -要するに「既知の難問に似た問題を作りまくっていれば、そのうち何とかなるでしょう、・・・何とかなったらいいな、・・・何とかなってくれ!」という安直なアイデアです(笑)。 -いやだって、もう自分たちの計算力を考えたら、全探索なんて全く望めないわけで、そうなれば「(正解が)ありそうなところを必死で探す」しか戦略はないわけです。 -ということで「富士型」は #07: 000100020000030400005006007400000000086007000709000005000400300000020010060008009 q2=99480 -に類似の問題を探すために見いだされたパターンです。 -富士型がどういう形なのか当初はわかっていなかったのですが、研究が進むにつれて簡潔に表せるようになってきました。ここでは簡潔に紹介します。 --http://k.osask.jp/files/fuji99480a.PNG -この図は、q2=99480の問題を同値変形(後述)して、 http://www.sudokuwiki.org/sudoku.htm に入力して見やすくしたものです。 -この中で数字の背景が青のものは、位置だけではなく数字の値もこの値に固定できます。 -緑の背景は、位置は固定ですが、数字の値は問題によって変わる部分です。 -黄色の部分は、位置も値も変わる部分です。 -なぜこのパターンに注目したかですが、''まずA〜C行を3行まとめた「ボックス行」(勝手に命名)に注目してください。この中にあるヒント数字は、7つあります。・・・これは同様に、D〜Fのボックス行やG〜Jのボックス行にも当てはまります。さらに、1〜3列をまとめたボックス列、4〜6列をまとめたボックス列、7〜9列をまとめたボックス列についても、ヒント数字はきっかり7つです。'' -したがって自動的にこの数独問題の総ヒント数は21になるわけですが、だからこの数独問題は''どのボックス行・列にも均等にヒントが配されている''ことになります。 -''また中央のヒントを5つ含んでいるボックスはちょっと特別なので除外して、それを含まない4本のボックス行・列については、7つのヒント数字は全く重複がありません。'' -''また使われているヒント数字の出現回数ですが、どれも2〜3回になっています。これは、9種類の数字があって数字は全部で21回出さなければいけないとすると、均等な出現回数を目指せば同じ数字は2〜3回出るしかないわけですが、まったくその通りになっているのです。'' -おおなんと美しい!・・・美しいといえば富士山ですよね、だから富士型と命名しました。 -私はq2ランキングの上位問題をぼんやり眺めていて、ヒント数=21の問題に注目してみたら、いくつかがこの''「どのボックス行・列にも均等にヒントが配されている、かつボックスごとのヒント数は、5個ボックスx1,3個ボックスx4,1個ボックスx4になっている」パターン''があることに気付き、それを同値変形しまくって、上図の一般化に成功したのでした。 -さてここまで限定できれば、あとは総当たりで問題を作ってq2のratingを計算するだけです。・・・結果は・・・結局、99480を超えることはできませんでした。つまり富士型の最高得点は、#07の問題で、既出だったのです。 -しかし富士型に関する研究は、私たちを大いに盛り上げました(特に私が盛り上がりました)。パターンを見出して探しまくるという手法が一通りやれたわけです。・・・何よりまずパターンを見つけたときに、ものすごく盛り上がります。これはいける!と思うわけです。そして探索プログラムを走らせて、次こそは未知の超難問が出力されるんじゃないかと、すごくわくわくするわけです。・・・そしてそんなものが出てこないと判明すると「ああ、このパターンはすでに掘りつくされていたのか・・・」と思うわけです。 -この富士型の探索も含めて、一般に私の探索のやり方の場合、コンピュータの処理時間の大半は「解の一意性判定」になります。これは自分の決めたパターンに数字を配してみても、それだけでは数独の問題として成立しているとは限らないので、解はあるのか、解があったとしてもその解はちゃんと一つだけになっているのか、を確認しなければいけないのです。これが探索処理全体としては一番CPU時間がかかるのです。 -パターンなんかに頼らず、まず数独の解(81マスがすべて埋まったもの)を用意して、そこから数字を抜いて作問する方式なら、少なくとも解が0個になる心配はありません。そうすると高速化できそうなのですが、その場合はパターンを満たしていない数独問題がいくつもできてそれを捨てなければいけなくて、むしろ遅くなってしまうので、私のやり方には使えないのです。 ** (5) 数独の同値変形について -上記の富士型の説明図は、 #07: 000100020000030400005006007400000000086007000709000005000400300000020010060008009 q2=99480 -と同値であると説明していますが、単純に上記の81文字を http://www.sudokuwiki.org/sudoku.htm に入力すると以下のようになり、似ても似つかない形状になります。 --http://k.osask.jp/files/fig20190403a.PNG -・・・私はこれは同値変形の結果だと説明していますが、多くの人にとっては、それは自明なことではないでしょう。 -数独は、A行とB行をごっそりと全部入れ替えても、難易度は全く変わりません。それぞれの空きマスへのヒントやマス同士の排他関係などが何も変わらないためです。・・・しかし、A行とD行の入れ替えは同値変形ではありません。それは関係するボックスが違ってしまうからです。 -またABCボックス行とDEFボックス行をごっそりと全部入れ替えても、難易度は変わりません。・・・しかし、ボックスを勝手に入れ替えるのはもちろんアウトです。ボックス行ごと入れ替える(もしくはボックス列ごと入れ替える)からこそ許されるのです。 -ほかに、左右を反転したり上下を反転したり、対角線を軸に反転したり(=転置)、どれも同値変形になります。 -また数字の付け替えも問題の難易度を全く変えません。 -ちなみに、この同値変形をいくら行っても、上記に挙げた富士型の性質(ボックス列内のヒント数など)は不変に保たれます。 ** (6) 総ヒント数=17はそんなに難しくない -数独はヒント数を16以下にすると必ず複数解をもつようになり、だから数独の問題として成立しないことが知られています。・・・一方、数独は基本的にはヒントが少なければ少ないほど難しいので、それなら17ヒント問題が一番難しいのではないかと容易に想像できます。 -にもかかわらず、q2ランキングの上位50問の中には一つとして17ヒント問題はありません。それどころか18も19もありません。・・・これはどうしてでしょうか。 -決定的なことはわかっていないのですが、私の調べた限りでは17ヒント問題は、最初の数ステップはすごく簡単な解法が連続でヒットして数字が確定していき、実質的に20ヒント以上の問題になってしまいます。そこから多少は難しくなれる問題と、そのままズルズルと崩れていくパターンがあるようです。 -17ヒント問題は http://www.sudokuwiki.org/sudoku.htm の「Take Step」を連打していくだけで最後まで解けてしまう問題がほとんどです。私の知る限り、例外は以下の1問しかありません。この問題は(やはり最初はスイスイ進むのですが)途中で行き詰ります。 602050000000004030000000000430008000010000200000000700500270000000000081000600000 -ではこの問題がすごく難しいのかというと、実はそんなことはなくて、単に人類の解法の開発が進んでいないだけで、少し頭をひねれば理屈だけで突破できます(気が向いたらその話をいつか書きます)。 ** つづく -続きはこちら: [[sdk0003]] * こめんと欄 #comment
タイムスタンプを変更しない
* 川合秀実の数独研究に関するドキュメント#2 -(by [[K]], 2019.04.02) ** (4) 富士型 (2015年07月ごろ) -そうこうしているうちに大した成果も出ないまま、2年が過ぎていました。 -私の仮説として、難問は何らかのパターンを有しているというのがあります。・・・つまりこういうことです。高得点の難問を集めてじっと見つめていると、共通のパターンが見えてきて、そのパターンを見出した後は、そのパターンを有する問題を大量生産してgsf's -q2 ratingをひたすら計算すれば、きっと未知の超絶難問を見つけることができるだろう、ということです。 -要するに「既知の難問に似た問題を作りまくっていれば、そのうち何とかなるでしょう、・・・何とかなったらいいな、・・・何とかなってくれ!」という安直なアイデアです(笑)。 -いやだって、もう自分たちの計算力を考えたら、全探索なんて全く望めないわけで、そうなれば「(正解が)ありそうなところを必死で探す」しか戦略はないわけです。 -ということで「富士型」は #07: 000100020000030400005006007400000000086007000709000005000400300000020010060008009 q2=99480 -に類似の問題を探すために見いだされたパターンです。 -富士型がどういう形なのか当初はわかっていなかったのですが、研究が進むにつれて簡潔に表せるようになってきました。ここでは簡潔に紹介します。 --http://k.osask.jp/files/fuji99480a.PNG -この図は、q2=99480の問題を同値変形(後述)して、 http://www.sudokuwiki.org/sudoku.htm に入力して見やすくしたものです。 -この中で数字の背景が青のものは、位置だけではなく数字の値もこの値に固定できます。 -緑の背景は、位置は固定ですが、数字の値は問題によって変わる部分です。 -黄色の部分は、位置も値も変わる部分です。 -なぜこのパターンに注目したかですが、''まずA〜C行を3行まとめた「ボックス行」(勝手に命名)に注目してください。この中にあるヒント数字は、7つあります。・・・これは同様に、D〜Fのボックス行やG〜Jのボックス行にも当てはまります。さらに、1〜3列をまとめたボックス列、4〜6列をまとめたボックス列、7〜9列をまとめたボックス列についても、ヒント数字はきっかり7つです。'' -したがって自動的にこの数独問題の総ヒント数は21になるわけですが、だからこの数独問題は''どのボックス行・列にも均等にヒントが配されている''ことになります。 -''また中央のヒントを5つ含んでいるボックスはちょっと特別なので除外して、それを含まない4本のボックス行・列については、7つのヒント数字は全く重複がありません。'' -''また使われているヒント数字の出現回数ですが、どれも2〜3回になっています。これは、9種類の数字があって数字は全部で21回出さなければいけないとすると、均等な出現回数を目指せば同じ数字は2〜3回出るしかないわけですが、まったくその通りになっているのです。'' -おおなんと美しい!・・・美しいといえば富士山ですよね、だから富士型と命名しました。 -私はq2ランキングの上位問題をぼんやり眺めていて、ヒント数=21の問題に注目してみたら、いくつかがこの''「どのボックス行・列にも均等にヒントが配されている、かつボックスごとのヒント数は、5個ボックスx1,3個ボックスx4,1個ボックスx4になっている」パターン''があることに気付き、それを同値変形しまくって、上図の一般化に成功したのでした。 -さてここまで限定できれば、あとは総当たりで問題を作ってq2のratingを計算するだけです。・・・結果は・・・結局、99480を超えることはできませんでした。つまり富士型の最高得点は、#07の問題で、既出だったのです。 -しかし富士型に関する研究は、私たちを大いに盛り上げました(特に私が盛り上がりました)。パターンを見出して探しまくるという手法が一通りやれたわけです。・・・何よりまずパターンを見つけたときに、ものすごく盛り上がります。これはいける!と思うわけです。そして探索プログラムを走らせて、次こそは未知の超難問が出力されるんじゃないかと、すごくわくわくするわけです。・・・そしてそんなものが出てこないと判明すると「ああ、このパターンはすでに掘りつくされていたのか・・・」と思うわけです。 -この富士型の探索も含めて、一般に私の探索のやり方の場合、コンピュータの処理時間の大半は「解の一意性判定」になります。これは自分の決めたパターンに数字を配してみても、それだけでは数独の問題として成立しているとは限らないので、解はあるのか、解があったとしてもその解はちゃんと一つだけになっているのか、を確認しなければいけないのです。これが探索処理全体としては一番CPU時間がかかるのです。 -パターンなんかに頼らず、まず数独の解(81マスがすべて埋まったもの)を用意して、そこから数字を抜いて作問する方式なら、少なくとも解が0個になる心配はありません。そうすると高速化できそうなのですが、その場合はパターンを満たしていない数独問題がいくつもできてそれを捨てなければいけなくて、むしろ遅くなってしまうので、私のやり方には使えないのです。 ** (5) 数独の同値変形について -上記の富士型の説明図は、 #07: 000100020000030400005006007400000000086007000709000005000400300000020010060008009 q2=99480 -と同値であると説明していますが、単純に上記の81文字を http://www.sudokuwiki.org/sudoku.htm に入力すると以下のようになり、似ても似つかない形状になります。 --http://k.osask.jp/files/fig20190403a.PNG -・・・私はこれは同値変形の結果だと説明していますが、多くの人にとっては、それは自明なことではないでしょう。 -数独は、A行とB行をごっそりと全部入れ替えても、難易度は全く変わりません。それぞれの空きマスへのヒントやマス同士の排他関係などが何も変わらないためです。・・・しかし、A行とD行の入れ替えは同値変形ではありません。それは関係するボックスが違ってしまうからです。 -またABCボックス行とDEFボックス行をごっそりと全部入れ替えても、難易度は変わりません。・・・しかし、ボックスを勝手に入れ替えるのはもちろんアウトです。ボックス行ごと入れ替える(もしくはボックス列ごと入れ替える)からこそ許されるのです。 -ほかに、左右を反転したり上下を反転したり、対角線を軸に反転したり(=転置)、どれも同値変形になります。 -また数字の付け替えも問題の難易度を全く変えません。 -ちなみに、この同値変形をいくら行っても、上記に挙げた富士型の性質(ボックス列内のヒント数など)は不変に保たれます。 ** (6) 総ヒント数=17はそんなに難しくない -数独はヒント数を16以下にすると必ず複数解をもつようになり、だから数独の問題として成立しないことが知られています。・・・一方、数独は基本的にはヒントが少なければ少ないほど難しいので、それなら17ヒント問題が一番難しいのではないかと容易に想像できます。 -にもかかわらず、q2ランキングの上位50問の中には一つとして17ヒント問題はありません。それどころか18も19もありません。・・・これはどうしてでしょうか。 -決定的なことはわかっていないのですが、私の調べた限りでは17ヒント問題は、最初の数ステップはすごく簡単な解法が連続でヒットして数字が確定していき、実質的に20ヒント以上の問題になってしまいます。そこから多少は難しくなれる問題と、そのままズルズルと崩れていくパターンがあるようです。 -17ヒント問題は http://www.sudokuwiki.org/sudoku.htm の「Take Step」を連打していくだけで最後まで解けてしまう問題がほとんどです。私の知る限り、例外は以下の1問しかありません。この問題は(やはり最初はスイスイ進むのですが)途中で行き詰ります。 602050000000004030000000000430008000010000200000000700500270000000000081000600000 -ではこの問題がすごく難しいのかというと、実はそんなことはなくて、単に人類の解法の開発が進んでいないだけで、少し頭をひねれば理屈だけで突破できます(気が向いたらその話をいつか書きます)。 ** つづく -続きはこちら: [[sdk0003]] * こめんと欄 #comment
テキスト整形のルールを表示する