Abstract
In this paper we design the algorithm aimed at fast enumeration of diagonal Latin squares of small order. This brute force based algorithm uses straightforward representation of a Latin square and greatly depends on the order in which we fill in Latin square cells. Moreover, we greatly improved its effectiveness by careful optimization using bit arithmetic. By applying this algorithm we have enumerated diagonal Latin squares of order 9. This problem was previously unsolved. In order to ensure the accuracy of the obtained result, two separate large-scale experiments were carried out. In the first one a computing cluster was employed. The second one was performed in a BOINC-based volunteer computing project. Each experiment took about 3 months. As a result we obtained two similar numbers.
Stepan Kochemazov and Oleg Zaikin are funded by Russian Science Foundation (project No. 16-11-10046). Stepan Kochemazov and Oleg Zaikin are additionally supported by Council for Grants of the President of the Russian Federation (stipends SP-1829.2016.5 and SP-1184.2015.5 respectively). Eduard Vatutin is partially supported by Council for Grants of the President of the Russian Federation (grant MK-9445.2016.8) and by Russian Foundation for Basic Research (grant 17-07-00317-a). We thank all Gerasim@home volunteers, whose computers took part in the experiment. Authors contribution: E. Vatutin: general scheme of algorithm proposed in Sect. 2, the experiment described in Subsect. 4.2; S. Kochemazov: bit arithmetic implementation of algorithm outlined in Sect. 3; O. Zaikin: The experiment described in Subsect. 4.3.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
Colbourn, C.J., Dinitz, J.H.: Handbook of Combinatorial Designs, 2nd edn. (Discrete Mathematics and Its Applications). Chapman & Hall/CRC, Boca Raton (2006). http://dx.doi.org/10.1201/9781420010541
Jacobson, M.T., Matthews, P.: Generating uniformly distributed random Latin squares. J. Comb. Des. 4(6), 405–437 (1996)
Karp, R.M.: Reducibility among combinatorial problems. In: Miller, R.E., Thatcher, J.W., Bohlinger, J.D. (eds.) Complexity of Computer Computations. The IBM Research Symposia Series, pp. 85–103. Springer, Boston (1972). doi:10.1007/978-1-4684-2001-2_9
Knuth, D.: Dancing links. Millenn. Perspect. Comput. Sci. 187–214 (2000)
Golomb, S.W., Baumert, L.D.: Backtrack programming. J. ACM 12(4), 516–524 (1965). http://dx.doi.org/10.1145/321296.321300
Vatutin, E., Zaikin, O., Zhuravlev, A., Manzyuk, M., Kochemazov, S., Titov, V.: Using grid systems for enumerating combinatorial objects on example of diagonal Latin squares. In: Selected Papers of the 7th International Conference Distributed Computing and Grid-technologies in Science and Education, Dubna, Russia, 4–9 July 2016. vol. 1787, pp. 486–490. CEUR-WS (2016)
Sloane, N.J.A.: The on-line encyclopedia of integer sequences. In: Kauers, M., Kerber, M., Miner, R., Windsteiger, W. (eds.) Calculemus/MKM -2007. LNCS, vol. 4573, p. 130. Springer, Heidelberg (2007). doi:10.1007/978-3-540-73086-6_12
Vatutin, E., Valyaev, S., Titov, V.: Comparison of sequential methods for getting separations of parallel logic control algorithms using volunteer computing. In: Second International Conference BOINC-based high performance computing: fundamental research and development (BOINC: FAST 2015), Petrozavodsk, Russia, 14–18 September 2015, vol. 1502, pp. 37–51. CEUR-WS (2015)
Foster, I.: Designing and Building Parallel Programs: Concepts and Tools for Parallel Software Engineering. Addison-Wesley Longman Publishing Co., Inc., Boston (1995)
Anderson, D.P., Fedak, G.: The computational and storage potential of volunteer computing. In: Sixth IEEE International Symposium on Cluster Computing and the Grid (CCGrid 2006), 16–19 May 2006, Singapore, pp. 73–80. IEEE Computer Society (2006). http://dx.doi.org/10.1109/ccgrid.2006.101
Egan, J., Wanless, I.M.: Enumeration of MOLS of small order. Math. Comput. 85(298), 799–824 (2016). http://dx.doi.org/10.1090/mcom/3010
Bammel, S.E., Rothstein, J.: The number of \(9 \times 9\) Latin squares. Discrete Math. 11(1), 93–95 (1975). http://dx.doi.org/10.1016/0012-365X(75)90108-9
McKay, B.D., Rogoyski, E.: Latin squares of order 10. Electr. J. Comb. 2(1), 1–4 (1995)
McKay, B.D., Wanless, I.M.: On the number of Latin squares. Ann. Comb. 9(3), 335–344 (2005). http://dx.doi.org/10.1007/s00026-005-0261-7
Zaikin, O., Zhuravlev, A., Kochemazov, S., Vatutin, E.: On the construction of triples of diagonal Latin squares of order 10. Electron. Notes Discret. Math. 54, 307–312 (2016). http://dx.doi.org/10.1016/j.endm.2016.09.053
Lam, C., Thiel, L., Swierz, S.: The nonexistence of finite projective planes of order 10. Canad. J. Math. 41, 1117–1123 (1989). http://dx.doi.org/10.4153/cjm-1989-049-4
Zaikin, O., Vatutin, E., Zhuravlev, A., Manzyuk, M.: Applying high-performance computing to searching for triples of partially orthogonal Latin squares of order 10. In: 10th Annual International Scientific Conference on Parallel Computing Technologies Arkhangelsk, Russia, 29–31 March 2016, vol. 1576, pp. 155–166. CEUR-WS (2016)
Zaikin, O., Kochemazov, S., Semenov, A.: SAT-based search for systems of diagonal Latin squares in volunteer computing project sat@home. In: Biljanovic, P., Butkovic, Z., Skala, K., Grbac, T.G., Cicin-Sain, M., Sruk, V., Ribaric, S., Gros, S., Vrdoljak, B., Mauher, M., Tijan, E., Lukman, D. (eds.) 39th International Convention on Information and Communication Technology, Electronics and Microelectronics, MIPRO 2016, Opatija, Croatia, 30 May–3 June 2016, pp. 277–281. IEEE (2016). http://dx.doi.org/10.1109/MIPRO.2016.7522152
McGuire, G., Tugemann, B., Civario, G.: There is no 16-clue Sudoku: solving the Sudoku minimum number of clues problem via hitting set enumeration. Exp. Math. 23(2), 190–217 (2014). http://dx.doi.org/10.1080/10586458.2013.870056
Lin, H.H., Wu, I.C.: Solving the minimum Sudoku problem. In: The 2010 International Conference on Technologies and Applications of Artificial Intelligence, TAAI 2010, pp. 456–461 (2010). http://dx.doi.org/10.1109/taai.2010.77
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this paper
Cite this paper
Vatutin, E.I., Kochemazov, S.E., Zaikin, O.S. (2017). Applying Volunteer and Parallel Computing for Enumerating Diagonal Latin Squares of Order 9. In: Sokolinsky, L., Zymbler, M. (eds) Parallel Computational Technologies. PCT 2017. Communications in Computer and Information Science, vol 753. Springer, Cham. https://doi.org/10.1007/978-3-319-67035-5_9
Download citation
DOI: https://doi.org/10.1007/978-3-319-67035-5_9
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-67034-8
Online ISBN: 978-3-319-67035-5
eBook Packages: Computer ScienceComputer Science (R0)