Ошибка в том, что Вы в этих рассуждениях не учитываете экспоненциальный рост вариантов с ростом порядка квадрата, в результате чего случайный поиск как основная эвристика описанного алгоритма окажется полностью безрезультативным. Для квадрата 6х6, и возможно 7х7, случайный тык ещё имеет какой-то смысл, дальше, имхо, нужно накачивать алгоритмы более тонкими эвристиками.
Нет, это не ошибка, по крайней мере, при построении обычных МК из (различных) простых чисел. Я нашла по этому алгоритму МК до порядка 15, а вы подумали, что только для порядка 6
Мой коллега из Италии Stefano Tognon подключился в тему "Магические квадраты" намного позже того момента, как я нашла свой первый авторский квадрат 6-го порядка из простых чисел.
Оказалось, что у Stefano аналогичный алгоритм.
И вот итог: он строил по своим программам МК до порядка 64, кажется, сейчас точно не помню. Я с использованием его программ дошла тоже до какого-то большого порядка (можно всё это посмотреть в моих статьях).
Скажу вам больше: этот алгоритм работает тем лучше, чем больше порядок квадрата!
Удивитесь?
А нет ничего удивительного; просто с увеличением порядка в данном случае экспоненциальный взрыв не враг, а друг
Когда мы начали строить наименьшие МК из чисел Смита, удивились, что для маленьких порядков (N<11) программы Stefano не работают. А вот для больших порядков пожалуйста!
Вполне результативным оказался этот алгоритм
Дело в том, что не надо делать полный перебор, надо его только начать. Решение находится довольно быстро для больших порядков, если, конечно, оно существует.
Я сейчас поищу статью S. Tognon, в которой он изложил свой алгоритм "случайного тыка", как вы его пренебрежительно называете. Статья написана на английском языке, он написал её для участия в международной конференции "Комбинаторные конструкции и их применение" (проходила в Украине). Статья была опубликована в сборнике, выпущенном оргкомитетом конференции. Кстати, я на ту конференцию представила свою статью "Магические кубы третьего порядка". Эта статья тоже опубликована.
-- Пн июл 01, 2013 22:14:23 --Посмотрите статью
A164843 в OEIS.
Код:
177, 120, 233, 432, 733, 1154, 1731, 2470, 3417, 4584, 6013, 7712, 9731, 12088, 14807, 17940, 21501, 25530, 30021, 35086, 40675, 46840, 53631, 61092, 69251, 78100, 87697, 98084, 109309, 121380, 134377, 148258, 163043
Здесь указаны магические константы до порядка 35 включительно (кажется, в моей статье их больше).
Все МК для порядков N>5 построены мной. До порядка N=14 я пользовалась своей программой, а дальше - программой Stefano. Алгоритмы у нас, как я уже сказала, похожие.
Замечу, что всё это наименьшие магические квадраты из простых чисел.
Конечно, я не обещаю, что для пандиагональных квадратов этот алгоритм будет работать так же хорошо. Но для обычных МК он работает просто замечательно!
-- Пн июл 01, 2013 22:21:02 --Попробуйте все внимательнее прочитать эту фразу из сообщения
Jarek:
Цитата:
Moreover, for larger N this bound must be achieved since the number of permutations of the N*N primes is so large that it is virtually certain that many of them lead to pandiagonal magic sqaures.
-- Пн июл 01, 2013 22:38:02 --Статью Stefano Tognon нашла и выложила на Яндекс-Диск (формат doc)
http://yadi.sk/d/ez_i_jVN6OGxQЭто как раз тот вариант статьи, который был представлен на конференцию.
Я не вникала в эту статью (по незнанию языка) и вообще в описание алгоритма. Знаю только одно: Stefano тоже на первом этапе использует случайную генерацию.
Вполне возможно, что у него алгоритм реализован намного эффективнее, нежели у меня.
Смотрите сами, оцените сами.