最小公倍図形

初版:2011.12.01

最小公倍図形の問題は、2005年のGPCCの課題の1つとして提起されましたが、あまり進展がなく、2011年に再度提起されました。
ゲームの説明は、[3] a) のGPCCのHPを参照されたい。同HPによると、現在知られている最小公倍図形は、河原哲郎氏の発見されたTペントミノ120個の解のみです。これ以下の解を探索するのが目標です。

deepgreenは、最小公倍図形の問題は制約条件が大変厳しいので、部分解合成法(NQueens問題のSolverQJHで使った方法)に向いている問題と思い挑戦してみました。

直 接、"最小" を狙うはの難しそうなので、探索範囲をN x Nの正方形の範囲に限定した探索プログラムを作成しました。ようやく、プログラムが完成し、N=21,23,25と範囲を広げて探索したところ、N=25 のところで、Tペントミノ68個(340単位)の解がみつかりました。
25x25の範囲では、この340単位の解が6個存在するだけで、より大きな解は存在しないこともわかりました。

Tペントミノ68個が "最小" というためには、制約を外した探索が必要となりますので、別のプログラムを作る必要があります。(今のプログラムを改造すればできるかもしれません。時間ができたらやってみようと思っていますが、しばらくは手がでません)


----- 探索結果 -------------------------------------------------

探索方法 : 部分解合成法
         (13x13の部品を4つ組み合わせて全体解を生成する方法 )
         
探索範囲 : 25x25の正方形に納まる範囲

探索結果 : 340単位(T=68,O=85)の解 6個を検出
             解の一覧HJoin-13-SymCheck−log.txt

探索時間 : 約3時間30分

PC環境
   CPU          : Intel Core i7-2600  3.4GHz
   メモリ          : 4GB
   使用ディスク容量:約31GB(約466M個の部品を格納)
   OS            : Window7 Home Premium(32ビット版)
  
プログラムサイズ   : 約1950行


【340単位の解の一例】

==== T-piece map (68) ====
 .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  02 03 .  .  .  .  .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  .  .  01 01 01 04 02 02 02 03 03 03 .  .  .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  .  .  05 01 09 04 04 04 02 03 06 07 .  .  .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  08 05 05 05 01 09 04 0a .  06 06 06 07 07 07 .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  08 08 08 05 09 09 09 0a .  .  .  06 07 0b 0c .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  11 08 .  .  .  .  .  0a 0a 0a 0e 0f 0b 0b 0b 0c 0c 0c 10 .  .  .  .  .
 .  .  .  .  .  .  .  .  11 0d 0d 0d .  .  .  12 0e 0e 0e 0f 0f 0f 0b 0c 10 10 10 .  .  .  .  .
 .  .  .  .  .  .  16 11 11 11 0d 17 .  .  18 12 12 12 0e 0f .  .  .  .  .  .  10 15 .  .  .  .
 .  .  .  .  .  .  16 13 13 13 0d 17 .  .  18 12 14 14 14 19 .  .  .  .  1a 15 15 15 .  .  .  .
 .  .  .  .  .  16 16 16 13 .  17 17 17 18 18 18 1d 14 21 19 19 19 .  .  1a 1a 1a 15 .  .  .  .
 .  .  .  .  .  1b 1b 1b 13 .  1c 1c 1c 20 1d 1d 1d 14 21 19 1e 1e 1e 22 1a 1f 1f 1f .  .  .  .
 .  .  .  .  .  .  1b 26 .  .  23 1c 27 20 20 20 1d 21 21 21 25 1e 29 22 22 22 1f 2a .  .  .  .
 .  .  .  .  .  .  1b 26 23 23 23 1c 27 20 24 24 24 28 25 25 25 1e 29 22 .  .  1f 2a .  .  .  .
 .  .  .  .  .  .  26 26 26 2b 23 27 27 27 2c 24 31 28 28 28 25 29 29 29 .  32 2a 2a 2a .  .  .
 .  .  .  .  .  .  30 2b 2b 2b .  .  2c 2c 2c 24 31 28 2d 2d 2d 2e 2e 2e .  32 2f 2f 2f .  .  .
 .  .  .  .  .  .  30 30 30 2b .  .  .  .  2c 31 31 31 33 2d .  .  2e 38 32 32 32 2f .  .  .  .
 .  .  .  .  .  .  30 35 .  .  .  .  .  .  36 37 33 33 33 2d .  .  2e 38 34 34 34 2f .  .  .  .
 .  .  .  .  .  .  .  35 35 35 39 3a 36 36 36 37 37 37 33 .  .  .  38 38 38 34 .  .  .  .  .  .
 .  .  .  .  .  .  .  35 39 39 39 3a 3a 3a 36 37 3b 3b 3b .  .  .  .  .  3d 34 .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  39 3a 3e 3f .  .  .  3b 3c 3c 3c 40 3d 3d 3d .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  3e 3e 3e 3f 3f 3f .  3b 41 3c 44 40 40 40 3d .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  .  .  3e 3f 42 43 41 41 41 3c 44 40 .  .  .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  .  .  42 42 42 43 43 43 41 44 44 44 .  .  .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  .  .  .  .  42 43 .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
 
==== O-piece map (85) ====
 .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  01 01 .  .  .  .  .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  .  .  02 02 03 03 04 04 01 01 05 05 .  .  .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  .  .  02 02 03 03 04 04 06 06 05 05 .  .  .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  07 07 08 08 09 09 0a 0a .  06 06 0b 0b 0c 0c .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  07 07 08 08 09 09 0a 0a .  .  .  0b 0b 0c 0c .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  0d 0d .  .  .  .  .  0e 0e 0f 0f 10 10 11 11 12 12 13 13 .  .  .  .  .
 .  .  .  .  .  .  .  .  0d 0d 14 14 .  .  .  0e 0e 0f 0f 10 10 11 11 12 12 13 13 .  .  .  .  .
 .  .  .  .  .  .  15 15 16 16 14 14 .  .  17 17 18 18 19 19 .  .  .  .  .  .  1a 1a .  .  .  .
 .  .  .  .  .  .  15 15 16 16 1b 1b .  .  17 17 18 18 19 19 .  .  .  .  1c 1c 1a 1a .  .  .  .
 .  .  .  .  .  1d 1d 1e 1e .  1b 1b 1f 1f 20 20 21 21 22 22 23 23 .  .  1c 1c 24 24 .  .  .  .
 .  .  .  .  .  1d 1d 1e 1e .  25 25 1f 1f 20 20 21 21 22 22 23 23 26 26 27 27 24 24 .  .  .  .
 .  .  .  .  .  .  28 28 .  .  25 25 29 29 2a 2a 2b 2b 2c 2c 2d 2d 26 26 27 27 2e 2e .  .  .  .
 .  .  .  .  .  .  28 28 2f 2f 30 30 29 29 2a 2a 2b 2b 2c 2c 2d 2d 31 31 .  .  2e 2e .  .  .  .
 .  .  .  .  .  .  32 32 2f 2f 30 30 33 33 34 34 35 35 36 36 37 37 31 31 .  38 38 39 39 .  .  .
 .  .  .  .  .  .  32 32 3a 3a .  .  33 33 34 34 35 35 36 36 37 37 3b 3b .  38 38 39 39 .  .  .
 .  .  .  .  .  .  3c 3c 3a 3a .  .  .  .  3d 3d 3e 3e 3f 3f .  .  3b 3b 40 40 41 41 .  .  .  .
 .  .  .  .  .  .  3c 3c .  .  .  .  .  .  3d 3d 3e 3e 3f 3f .  .  42 42 40 40 41 41 .  .  .  .
 .  .  .  .  .  .  .  43 43 44 44 45 45 46 46 47 47 48 48 .  .  .  42 42 49 49 .  .  .  .  .  .
 .  .  .  .  .  .  .  43 43 44 44 45 45 46 46 47 47 48 48 .  .  .  .  .  49 49 .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  4a 4a 4b 4b .  .  .  4c 4c 4d 4d 4e 4e 4f 4f .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  4a 4a 4b 4b 50 50 .  4c 4c 4d 4d 4e 4e 4f 4f .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  .  .  51 51 50 50 52 52 53 53 54 54 .  .  .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  .  .  51 51 55 55 52 52 53 53 54 54 .  .  .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  .  .  .  .  55 55 .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
 .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
 
---------------- (end) -----------------------------------------------------------------------------




[1] 処理論理の説明

  作成予定(時期未定)

[2] ソースコード

     処理論理の説明とあわせて公開予定
  ( ソースのみでよいから見たいという方は直接deepgreen宛てにメールをください )

[3] 参考情報
  a)  GPCC, http://hp.vector.co.jp/authors/VA003988/gpcc/gpcc.htm


Home