The best known packings of unequal circles with integer radii in a square (complete up to N = 100)


Last update: 21-Jul-2026


Overview    Download    Results    History of updates    References

Overview

1-12   13-24   25-36   37-48   49-60   61-72   73-84   85-96   97-100  


Download

You may download ASCII files which contain all the values of radius, ratio etc. by using the links given in the table header below.
All coordinates of all packings are packed as ASCII files here.
All packings are stored as nice PDF files here.
All contact graphs of all packings are stored as nice PDF files here.
For industrial applications, for instance if a machine has to do an important job at every circle center,
it is useful to know a tour visiting each of the circle centers once which is of minimal length.
This problem is known as the "Traveling Salesman Problem" (TSP). Thus (very near) optimal tours are provided for every packing.
All optimal TSP tours of all packings are stored as nice PDF files here.


Results

The table below summarizes the current status of the search.
Please use the links in the following table to view a picture for a certain configuration.
Furthermore, note that for certain values of N several distinct optimal configurations exist; however, only one is shown here.
Proven optimal packings are indicated by a radius in bold face type.

Legend:
N
the number of circles; colors correspond to active researchers in the past, see "References" at the bottom of the page
radius
of the largest circle in the container square, the latter has always a side length of 1
ratio
is the side length of the circumscribed square if r1=1
density
ratio of total area occupied by the circles to container area, also known as packing fraction ϕ
contacts
number of contacts between circles and container and mutually between the circles
loose
number of circles that have still degrees of freedom for a movement inside the container (so called "rattlers")
boundary
number of circles that are near to the container boundary (including rattlers if any)
core
number of circles that are at the container core
reference
for the best known packing so far, see at bottom of the page
records
the sequence of N 's that establish density records

N radius ratio density contacts loose boundary core reference
1 0.500000000000 2.0000000000 0.785398163397 4 1
2 0.390524291751 5.1213203436 0.598902316059 5 2
3 0.351471862576 8.5355339059 0.603693534587 5 1 3
4 0.334735107215 11.9497474683 0.660014797289 5 2 4
5 0.320445439141 15.6032802757 0.709709703127 7 2 4 1 [16]
6 0.308913652863 19.4229032754 0.757814603624 7 3 6 [16]
7 0.293884516036 23.8188799275 0.775238331435 11 2 6 1 [16]
8 0.274864248385 29.1052766848 0.756548153681 11 3 7 1 [16]
9 0.266632649665 33.7543058260 0.785844052832 7 6 6 3 [16]
10 0.259198794035 38.5804264146 0.812599508588 15 3 9 1 [16]
11 0.247163327190 44.5049843156 0.802570301381 15 4 9 2 [31]
12 0.239133461623 50.1811830036 0.810926398507 15 5 10 2 [31]
13 0.232178672615 55.9913615390 0.820713765587 15 6 9 4 [31]
14 0.226354370430 61.8499213131 0.833561431951 19 5 9 5 [31]
15 0.218890022409 68.5275639104 0.829546950560 17 7 13 2 [31]
16 0.213306762250 75.0093425601 0.835315900179 25 4 12 4 [17]
17 0.208583778822 81.5020232924 0.844211594720 21 7 13 4 [18]
18 0.203610493383 88.4040881240 0.847777243445 23 7 12 6 [17]
19 0.198431041375 95.7511479474 0.846367244411 25 7 11 8 [18]
20 0.193953211391 103.1176532553 0.847941181266 19 11 14 6 [31]
21 0.189941602299 110.5602971954 0.850962963235 23 10 15 6 [17]
22 0.185867536223 118.3638651864 0.850987881603 33 6 13 9 [18]
23 0.182534535157 126.0035531370 0.855598420798 25 11 16 7 [18]
24 0.179007777510 134.0723868749 0.856381487321 31 9 13 11 [18]
25 0.175783323972 142.2205442197 0.858138689425 33 9 13 12 [18]
26 0.172502694180 150.7222836351 0.857544513724 27 13 18 8 [18]
27 0.169771311851 159.0374704985 0.860764184295 35 10 18 9 [18]
28 0.166845093699 167.8203378909 0.860479097197 37 10 17 11 [22]
29 0.164300639059 176.5057042147 0.862685296594 35 12 18 11 [18]
30 0.161583478754 185.6625456478 0.861713316159 25 18 18 12 [18]
31 0.159189016456 194.7370534113 0.862886461779 45 9 17 14 [18]
32 0.156794336236 204.0890045400 0.862852739685 37 14 19 13 [18]
33 0.154634301277 213.4067262400 0.864271266631 39 14 19 14 [18]
34 0.152583663931 222.8285723649 0.865870450598 43 13 19 15 [18]
35 0.150413388907 232.6920512484 0.865096231238 41 15 22 13 [22]
36 0.148608142987 242.2478289305 0.867572785241 53 10 20 16 [22]
37 0.146590093103 252.4045057670 0.866664484203 49 13 21 16 [22]
38 0.144864470723 262.3141465282 0.868348634979 43 17 24 14 [18]
39 0.143010409756 272.7074208546 0.867673632307 41 19 23 16 [18]
40 0.141457873682 282.7696964392 0.869884831612 43 19 23 17 [22]
41 0.139865435364 293.1389009257 0.870889293339 63 10 19 22 [22]
42 0.138193104447 303.9225449639 0.870180725722 55 15 25 17 [22]
43 0.136689294198 314.5820618381 0.870905629582 55 16 25 18 [22]
44 0.135434330638 324.8806989537 0.874190328780 47 21 29 15 [22]
45 0.133844527455 336.2109819180 0.872542460153 55 18 23 22 [22]
46 0.132424778658 347.3670144377 0.872489297886 41 26 27 19 [22]
47 0.131031049417 358.6936089508 0.872195909534 57 19 24 23 [22]
48 0.129895370219 369.5281819442 0.874807591891 59 19 25 23 [22]
49 0.128570348494 381.1143127012 0.874358191992 59 20 29 20 [22]
50 0.127336668139 392.6598734730 0.874635562954 63 19 26 24 [22]
51 0.126244384599 403.9783643594 0.876381404300 59 22 30 21 [22]
52 0.125129733903 415.5686932110 0.877367391736 59 23 28 24 [22]
53 0.123864476691 427.8870053451 0.875777603250 57 25 28 25 [22]
54 0.122770267713 439.8459089968 0.876154015383 67 21 26 28 [22]
55 0.121739531481 451.7842259692 0.877021400075 63 24 28 27 [22]
56 0.120693868770 463.9838010894 0.877272087748 67 23 31 25 [22]
57 0.119657967578 476.3577482881 0.877269124198 61 27 31 26 [22]
58 0.118706918393 488.5983124235 0.878133537612 59 29 32 26 [22]
59 0.117815884014 500.7813716592 0.879533761847 71 24 30 29 [22]
60 0.116789594321 513.7443994817 0.878558888681 67 27 34 26 [22]
61 0.115863832229 526.4800829256 0.878741962774 73 25 32 29 [22]
62 0.115093149393 538.6940954068 0.880960515162 79 23 28 34 [22]
63 0.114138344595 551.9617462780 0.880045054541 83 22 35 28 [22]
64 0.113222798803 565.2571803260 0.879406128100 69 30 33 31 [22]
65 0.112478309051 577.8891996910 0.881126076835 79 26 30 35 [22]
66 0.111675615884 590.9974122583 0.881653311271 77 28 30 36 [22]
67 0.110854940485 604.3934506404 0.881610201757 79 28 33 34 [22]
68 0.110135545641 617.4210115765 0.882905826813 91 23 32 36 [22]
69 0.109274725361 631.4360413349 0.881661383319 77 31 34 35 [22]
70 0.108566653629 644.7651987065 0.882614274603 77 32 38 32 [22]
71 0.107854963149 658.2914492485 0.883261045273 81 31 32 39 [22]
72 0.107058300258 672.5307596561 0.882262207109 81 32 36 36 [22]
73 0.106440451086 685.8294873318 0.883971431279 91 28 37 36 [22]
74 0.105703658062 700.0703793675 0.883475414873 79 35 38 36 [22]
75 0.105075138390 713.7749342916 0.884561106469 91 30 35 40 [22]
76 0.104403103540 727.9477086694 0.884695878117 91 31 36 40 [22]
77 0.103728414410 742.3231179056 0.884564847689 83 36 37 40 [22]
78 0.103077622915 756.7112802386 0.884625700834 89 34 39 39 [22]
79 0.102437223753 771.2040321418 0.884655622005 105 27 35 44 [22]
80 0.101781087043 786.0006443637 0.884206493661 91 35 37 43 [22]
81 0.101241836948 800.0645033927 0.885594872068 97 33 36 45 [22]
82 0.100588603495 815.2016943358 0.884798472062 85 40 40 42 [22]
83 0.100050466299 829.5813410037 0.885838438320 99 34 37 46 [22]
84 0.099480598488 844.3857523665 0.886138784838 83 43 46 38 [22]
85 0.098884373992 859.5898074536 0.885787597639 103 34 40 45 [22]
86 0.098359302961 874.3453584082 0.886536072812 111 31 37 49 [22]
87 0.097778873619 889.7627552860 0.886115127109 97 39 39 48 [22]
88 0.097289598015 904.5160201626 0.887180609346 121 28 39 49 [22]
89 0.096754655982 919.8523739908 0.887253869973 107 36 41 48 [22]
90 0.096205879007 935.4937653418 0.886909494306 95 43 42 48 [22]
91 0.095768080490 950.2122161628 0.888459657908 107 38 35 56 [22]
92 0.095188399595 966.5043260631 0.887224491984 97 44 43 49 [22]
93 0.094752116916 981.5084140278 0.888511344160 113 37 42 51 [22]
94 0.094248698388 997.3612538748 0.888396625911 113 38 43 51 [22]
95 0.093766588001 1013.1540671927 0.888537667610 111 40 39 56 [22]
96 0.093256028251 1029.4240683421 0.887994472849 117 38 40 56 [22]
97 0.092781667242 1045.4651536600 0.887997861155 103 46 43 54 [22]
98 0.092376890226 1060.8713906709 0.889202435457 115 41 40 58 [22]
99 0.091941339424 1076.7735234251 0.889688868522 129 35 40 59 [22]
100 0.091466448537 1093.2970679358 0.889282378614 109 46 43 57 [22]



Updates

Please note that the results are taken from a running search. For updates look at the list below.

06-May-2013: First complete presentation from N=1 to N=72.
21-May-2013: First improvements for N=23, 40, 42, 49, 51, 54, 58, 61, 63, 64, 65, 67, 68, 70 and 72 by Eckard Specht [31].
19-Apr-2015: Improvements for N=16, 18, 19, 21–46, 49, 50, 55, and 60 by Kun He, Menglong Huang, and Chenkai Yang [17]. All these packings could be slightly improved by simple exchange heuristics [31], nevertheless the credits should go to the authors.
23-Apr-2015: Further improvements for N=29, 30, 33, 35, 39, 41, 42, 44, 45, 49, 55, and 56 by Eckard Specht [31].
24-Sep-2015: The next round on the record spiral up for N=17, 19, 22–45, 50, 55, and 60 by Zhizhong Zeng, Xinguo Yu, Kun He, and Zhanghua Fu [18].
14-Oct-2015: Some small improvements (some can easily improved further) for N=52, 61–63, 66–68 by Kun He, Mohammed Dosh, Shenghao Zou [19].
19-Oct-2015: By some exchange heuristics and relocations (see [32]), some packings could be improved for N=32, 39, 42, 52, 61–68 by Eckard Specht [19].
28-Oct-2015: Some tiny improvements for N=47, 69, and 72 by Kun He, Mohammed Dosh, Shenghao Zou [19].
19-Jul-2026: André Müller has published his records on github in December 2025 [22]. For N=28, 35–37, 40–72 he found new records, and this repository could be extended up to N=100.
21-Jul-2026: Almost all of the new candidates, namely N=38, 41, 49–53, 56–60, 62, 63, 65–69, 73, 76–81, 83–86, 88–92, 94, 96–98, could be slightly improved by simple swapping of circles [31]. But the credits should remain at the author.


References

[1]   Ignacio Castillo, Frank J. Kampas, János D. Pintér, Solving circle packing problems by global optimization: Numerical results and industrial applications, European Journal of Operational Research 191 (2008), 786–802.
[2]   I. Al-Mudahka, Mhand Hifi, Rym M'Hallah Packing circles in the smallest circle: an adaptive hybrid algorithm, J. Operational Research Society 62 (2010), 1917–1930.
[3]   Wenqi Huang, Ruchu Xu, Two personification strategies for solving circles packing problem, Science in China (Series E) 42 (1999), 595–602.
[4]   Huaiqing Wang, Wenqi Huang, Quan Zhang, Dongmin Xu, An improved algorithm for the packing of unequal circles within a larger containing circle, European Journal of Operational Research 141 (2002), 440–453.
[5]   Wenqi Huang and Yan Kang, A Short Note on a Simple Search Heuristic for the Diskspacking Problem, Annals of Operations Research 131 (2004), 101–108.
[6]   De-fu Zhang, Xin Li, A Personified Annealing Algorithm for Circles Packing Problem, Acta Automatica Sinica 31 (2005), 590–595.
[7]   De-fu Zhang, An-sheng Deng, An effective hybrid algorithm for the problem of packing circles into a larger containing circle, Computers & Operations Research 32 (2005), 1941–1951.
[8]   Hakim Akeb, Yu Li, A hybrid heuristic for packing unequal circles into a circular container, Service Systems and Service Management, 2006 Int. Conf. on (2006), 922–927.
[9]   Wen Qi Huang, Yu Li, Chu Min Li, Ru Chu Xu, New heuristics for packing unequal circles into a circular container, Computers & Operations Research 33 (2006), 2125–2142.
[10]   Zhipeng Lü, Wenqi Huang, PERM for solving circle packing problem, Computers & Operations Research 35 (2008), 1742–1755.
[11]   Ignacio Castillo, Frank J. Kampas, János D. Pintér, Solving circle packing problems by global optimization: Numerical results and industrial applications, European Journal of Operational Research 191 (2008), 786–802.
[12]   Mhand Hifi, Rym M'Hallah, Adaptive and restarting techniques-based algorithms for circular packing problems, Comput. Optim. Appl. 39 (2008), 17–35.
[13]   Bernardetta Addis, Marco Locatelli, Fabio Schoen, Efficiently packing unequal disks in a circle, Operations Research Letters 36 (2008), 37–42.
[14]   A. Grosso, A. R. M. J. U. Jamali, M. Locatelli, F. Schoen, Solving the problem of packing equal and unequal circles in a circular container, J. Glob. Optim. 47 (2010) 1, 63–81.
[15]   Jingfa Liu, Shengjun Xue, Zhaoxia Liu, Danhua Xu, An improved energy landscape paving algorithm for the problem of packing circles into a larger containing circle, Computers & Industrial Engineering 57 (2009), 1144–1149.
[16]   , Packing unequal circles using formulation space search, Computers & Operations Research 40 (2013), 1276–1288.
[17]   , Computers & Operations Research 58 (2015), 67–74.
[18]   Zhizhong Zeng, Xinguo Yu, Kun He, Zhanghua Fu, private communication, September 2015.
[19]   Kun He, Mohammed Dosh, Shenghao Zou, private communication, October 2015.
[22]   , github.com/muellan/packing, December 2025.
[31]   , program csqn, 2005–2026.
[32]   Eckard Specht, A precise algorithm to detect voids in polydisperse circle packings, Proc. R. Soc. A 471 (2015), 20150421.