Magic Square

Magic square pada intinya adalah konfigurasi deretan angka-angka unik yang tersusun dalam sebuah persegi, di mana penjumlahan dari angka-angka tersebut akan sama jika dihitung secara mendatar, menurun, dan diagonal. Magic square disebut sebagai recreational math karena sifatnya yang tidak terlalu serius namun cukup menantang karena unik dan perlu usaha ekstra untuk membuat sebuah magic square.

Magic square jadi lebih menarik karena Dan Brown memakainya dalam novel “The Lost Symbol” buatannya. Tepatnya ada 2 magic square yang muncul, yakni magic square 4×4 yang tertera dalam ukiran berjudul “Melencolia I” buatan Albrecht Dürer dan yang kedua adalah “The Order Eight Franklin Square” atau magic square 8×8 yang terkenal milik Benjamin Franklin (walau konon ini bukanlah murni magic square karena penjumlahan diagonal tidak sesuai).

Magic square ternyata tidak sekedar rangkaian angka-angka semata. Sejarah magic square pun telah ada sejak ratusan tahun yang lalu (baca Wikipedia dan jangan lupa donasi ke Wikipedia untuk menunjang biaya operasional mereka:) ) yaitu di Cina (Lo Shu Square), Persia, Arabia, India, dan Eropa. Jika Anda membaca artikel ini, maka magic square bukanlah sekedar persoalan matematis, tetapi juga memiliki nilai historis. Anda juga bisa mengeksplorasi pola-pola unik yang terdapat pada magic square (baca magic-squares.net).

Nah, yang sekarang kupikirkan adalah, bagaimana caranya mendapatkan seluruh kombinasi magic square yang ada. Tentu tidak bisa dikerjakan secara manual. Dan ternyata, perhitungan dengan komputasi pun akan membutuhkan sumber daya yang amat besar. Mengapa?

Untuk memastikan secara matematis bahwa seluruh kombinasi pasti diperoleh, maka caranya adalah dengan brute-force yaitu mengetes seluruh kemungkinan angka yang mungkin. Jika kita tilik hitung-hitungannya, maka untuk mengetes magic square ukuran 3×3 akan menghasilkan kombinasi angka sebanyak 9! (9 faktorial) yaitu 362.880 kemungkinan. Untuk magic square ukuran 4×4 menghasilkan 16! yaitu 20.922.789.888.000 (hampir 21 triliun). Tujuanku sebenarnya adalah order 8 magic square atau 8×8, tetapi angka 64! sangatlah besar.

126.886.932.185.884.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000 atau 1,26 x 10^89. Aku belum pernah membayangkan record data sebanyak ini bisa masuk ke dalam variabel di pemrograman ataupun ke dalam database file.

Anyway, dengan kesulitanku mencapai order 8, aku telah berhasil mengidentifikasi seluruh magic square order 3, yaitu sebagai berikut.

2 7 6 9 5 1 4 3 8

2 9 4 7 5 3 6 1 8

4 3 8 9 5 1 2 7 6

4 9 2 3 5 7 8 1 6

6 1 8 7 5 3 2 9 4

6 7 2 1 5 9 8 3 4

8 1 6 3 5 7 4 9 2

8 3 4 1 5 9 6 7 2

Artinya di antara 362.880 kemungkinan, hanya ada 8 magic square.

Urutan pertama baris di atas 2 7 6 9 5 1 4 3 8 bisa kita bentuk seperti ini

2 7 6

9 5 1

4 3 8

Demikian juga berlaku untuk baris selanjutnya.

2 9 4

7 5 3

6 1 8

4 3 8

9 5 1

2 7 6

4 9 2

3 5 7

8 1 6

6 1 8

7 5 3

2 9 4

6 7 2

1 5 9

8 3 4

8 1 6

3 5 7

4 9 2

8 3 4

1 5 9

6 7 2

Page 1 of 2 | Next page