Soft Computing

, Volume 21, Issue 23, pp 7159–7171 | Cite as

Ant colony optimization for triple product property triples to fast matrix multiplication

Methodologies and Application


The group-theoretic approach to fast matrix multiplication has been introduced by Cohn and Umans (proceedings of 44th annual IEEE symposium on foundations of computer science, IEEE Computer Society, 2003). In this approach, there is a challenging problem. It is to find three subsets of a given group satisfying the so-called triple product property such that the product of their sizes is as large as possible. For this challenging problem, some brute-force algorithm has been proposed, which is exact but time-consuming. The ant colony optimization is a randomized heuristic algorithm and finds extensive applications in many fields. We use it to solve the problem of searching for three subsets of a given group such that they satisfy the triple product property and the product of their sizes reaches the maximum. Experimental results show that the ant colony optimization is efficient for this problem. Using this approach, we obtain three subsets for each nonabelian group of order not larger than 44 which satisfy the triple product property and the product of whose sizes reaches the best value found so far.


Ant colony optimization Matrix multiplication Triple product property Search algorithm Group 


Compliance with Ethical Standards


This study was funded by the National Natural Science Foundation of China (Nos. 61472143, 61562071), the Scientific Research Special Plan of Guangzhou Science and Technology Programme (No. 201607010045), and the Natural Science Foundation of Jiangxi Province (No. 20151BAB207020).

Conflict of interest

The authors declare that they have no conflict of interest

Human and Participants

This article does not contain any studies with human participants or animals performed by any of the authors.


  1. Ambainis A, Filmus Y, Le Gall F (2015) Fast matrix multiplication: limitations of the coppersmith-winograd method. In: Proceedings of the forty-seventh annual acm symposium on theory of computing, pp 585–593Google Scholar
  2. Bini D, Capovani M, Romani F, Lotti G (1979) \(\text{ O }(n^{2.7799})\) complexity for \(n\times n\) approximate matrix multiplication. Inf Process Lett 8(5):234–235CrossRefMATHGoogle Scholar
  3. Bshouty NH (1995) On the additive complexity of \(2\times 2\) matrix multiplication. Inf Process Lett 56(6):329–335CrossRefMATHGoogle Scholar
  4. Cohn H, Umans C (2003) A group-theoretic approach to fast matrix multiplication. In: Proceedings of 44th annual IEEE symposium on foundations of computer science, IEEE Computer Society, pp 438–449Google Scholar
  5. Coppersmith D, Winograd S (1982) On the asymptotic complexity of matrix multiplication. SIAM J Comput 11(3):472–492CrossRefMATHMathSciNetGoogle Scholar
  6. Coppersmith D, Winograd S (1990) Matrix multiplication via arithmetic progressions. J Symb Comput 9(3):251–280CrossRefMATHMathSciNetGoogle Scholar
  7. Dorigo M, Maniezzo V, Colorni A (1996) Ant system: optimization by a colony of cooperating agents. IEEE Trans Syst Man Cybern Part B Cybern 26(1):29–41CrossRefGoogle Scholar
  8. Hart S, Hedtke I, Müller-Hannemann M, Murthy S (2015) A fast search algorithm for \(<m, m, m>\) triple product property triples and an application for 5 \(\times \) 5 matrix multiplication. Groups Complexity Cryptol 7(1):31–46CrossRefMATHMathSciNetGoogle Scholar
  9. Hedtke I, Murthy S (2012) Search and test algorithms for triple product property triples. Groups Complex Cryptol 4(1):111–133CrossRefMATHMathSciNetGoogle Scholar
  10. Hopcroft JE, Kerr LR (1969) Some techniques for proving certain simple programs optimal. In: IEEE conference record of 10th annual symposium on switching and automata theory, pp 36–45Google Scholar
  11. Jansen T, Wegener I (2001) Evolutionary algorithms: how to cope with plateaus of constant fitness and when to reject strings of the same fitness. IEEE Trans Evol Comput 5(6):589–599CrossRefGoogle Scholar
  12. Le Gall F (2014) Powers of tensors and fast matrix multiplication. Eprint Arxiv pp 296–303Google Scholar
  13. Neumann F, Sudholt D, Witt C (2009) Analysis of different MMAS ACO algorithms on unimodal functions and plateaus. Swarm Intell 3(1):35–68CrossRefGoogle Scholar
  14. Neumann PM (2011) A note on the triple product property for subsets of finite groups. LMS J Comput Math 14(14):232–237CrossRefMATHMathSciNetGoogle Scholar
  15. Pan VY (1978) Strassen’s algorithm is not optimal, trilinear technique of aggregating, uniting and canceling for constructing fast algorithms for matrix operations. In: Proceedings of the 19th annual symposium on foundations of computer science, pp 166–176Google Scholar
  16. Pan VY (1980) New fast algorithms for matrix operations. SIAM J Comput 9(2):321–342CrossRefMATHMathSciNetGoogle Scholar
  17. Rai P (2014) Edge detection of medical images using modified ant colony optimization algorithm based on weighted heuristics. Int J Image Gr Signal Process 6(3):21–26CrossRefGoogle Scholar
  18. Salama K, Abdelbar AM (2014) A novel ant colony algorithm for building neural network topologies. In: Proceedings of the 9th international conference on ant colony optimization and swarm intelligence, ANTS 2014, Brussels, Belgium, September 10–12, pp 1–12Google Scholar
  19. Schönhage A (1981) Partial and total matrix multiplication. SIAM J Comput 10(3):434–455CrossRefMATHMathSciNetGoogle Scholar
  20. Stothers A (2010) On the complexity of matrix multiplication. Ph.D. thesis, University of EdinburghGoogle Scholar
  21. Strassen V (1969) Gaussian elimination is not optimal. Numer Math 13(4):354–356CrossRefMATHMathSciNetGoogle Scholar
  22. Strassen V (1987) Relative bilinear complexity and matrix multiplication. J Für Die Reine Und Angewandte Math 375–376:406–443MATHMathSciNetGoogle Scholar
  23. Stützle T, Hoos HH (2000) Max–Min ant system. Future Gener Comput Syst 16(8):889–914CrossRefMATHGoogle Scholar
  24. Williams VV (2012) Multiplying matrices faster than coppersmith-winograd. In: Proceedings of the forty-fourth annual acm symposium on theory of computing, pp 887–898Google Scholar
  25. Winograd S (1971) On multiplication of \(2\times 2\) matrices. Linear Algebra Appl 4(4):381–388CrossRefMATHMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2016

Authors and Affiliations

  1. 1.School of Computer Science and EngineeringSouth China University of TechnologyGuangzhouChina
  2. 2.School of Mathematics and Computer ScienceShangrao Normal UniversityShangraoChina
  3. 3.School of Data and Computer ScienceSun Yat-sen UniversityGuangzhouChina

Personalised recommendations