This publication describes mathematically an algorithm that
solves odd magical squares of a higher order n×n. Likewise,
offers a computational interface that generates the
resulting matrix online in the function of a parameter
selected by the user.
La presente publicación es para describir matemáticamente un
algoritmo que resuelve los cuadrados mágicos impares de orden mayor. Así mismo, ofrecer una
interfaz computacional que genera en línea la resultante en función
del parámetro seleccionado por el usuario.
El algoritmo y su aplicación computacional
MagicoDocIRS, son un método genérico que permite resolver cuadrados
mágicos de cualquier orden impar. En efecto, el usuario sólo ingresa un
entero $n$ impar, mayor o igual que tres y el sistema procesa
desplegando la matriz con la solución.
El algoritmo desarrollado por el autor
José Enrique González Cornejo y aplicado en un programa
computacional sobre plataforma Internet (Ver aplicación
MagicoDocIRS), admite cualquier número natural impar. Sin
embargo, dado que un cuadrado de orden $141 \times 141$
significa configurar y publicar en una vista Web de una matriz
de $19.881$ celdas, se ha limitado la aplicación, - mediante
un listbox para seleccionar el orden-, hasta esa cifra
máximo.
Se recomienda al lector comprobar, visualizar e investigar
las relaciones numéricas que conforman cada cuadrado mágico generado por el algoritmo. En efecto, las simetrías que se producen en la resolución de estos cuadrados son numerosas.
Nótese que al operar bajo la suma invariante de sus arreglos (filas, columnas, diagonales) y ser una aplicación del objeto sobre sí mismo, lo constituye en un grupo de permutaciones. Es decir, es una simetría de aplicación biyectiva de un conjunto finito de números enteros positivos.
Los cuadrados mágicos han sido considerados como una matemática recreativa o didáctica.
Sin embargo, estas matrices cuadradas cuyo orden son números enteros positivos ($n \in \mathbb N \text{ / } n \ge 3$) y que cumplen con la condición $C(X)$: la suma de todos los números de cada fila, de cada columna y de cada diagonal es constante, no sólo tienen aplicación en Teoría de Números, Combinatoria, Método Estadístico Numérico, etc.. Sino que los elementos matemáticos de sus propiedades de simetría encuentran correspondencia en campos como la Teoría de Números, la Teoría de Grupos y Algebras de Lie (Ver Suma Sansana y Telescópica, Grupo de Lie , Algebra de Lie ).
En otros términos, el método induce a la comprensión de los principios del método que son una lección para otros dilemas y ciencias, porque combinan lo abstracto con lo concreto.
Particularmente la mecanización y la extrapolación que se puede transferir hacia otras herramientas de otras
disciplinas. El modelo matemático de simulación heurístico que se presenta, determina el comportamiento del sistema a lo largo de la observación de una serie de sucesos, cuya ocurrencia significa que se puede recopilar información importante relativa al comportamiento del sistema.
La transferencia de conocimiento en problemas matemáticos involucra un proceso iterativo de comprensión, aplicación y refinamiento a lo largo de una variedad de situaciones. La práctica constante y la exposición a diferentes problemas fortalecen la capacidad de aplicar reglas y patrones matemáticos en contextos diversos.
Demostración Matemáticamente No Formal
A pesar que, la solución aquí presentada no es una demostración matemática clásica y formal, sí el algoritmo entrega una determinación detallada de la solución del problema de los cuadrados mágicos, (impares en este caso).
Es decir, es posible una solución en $\large {n}$, gracias a la capacidad de la aplicación computacional, que permite identificar decenas de patrones matemáticos que simplifican la solución de un problema complejo encontrando relaciones simétricas y comportamientos que son difíciles de deducir manualmente.
La aplicación computacional permite construir cuadrados de inmensas magnitudes aplicando parámetros grandes y secuenciales.
Luego, es claro que la exploración manual de parámetros en este tipo de problemas numéricos (u otros), puede ser laboriosa y propensa a errores.
La automatización y las aplicaciones computacionales, como software de simulación o herramientas de visualización de datos, pueden realizar rápidamente un análisis exhaustivo de diversas combinaciones de parámetros (La Inteligencia Artificial utiliza esos principios).
Por ejemplo, cuando se trabaja con enormes cantidades de datos la identificación de patrones simétricos o complejos son difíciles de descubrir de manera manual, debido a la cantidad de información involucrada. Las herramientas computacionales pueden identificar y visualizar estos patrones de manera eficiente.
En efecto, la dinámica de sistemas, que describen la evolución de variables a lo largo de uno o varios parámetros que se van ajustando pueden revelar comportamientos emergentes o patrones no intuitivos.
Una aplicación computacional puede explorar automáticamente una amplia gama de valores para diversos parámetros y marcar tendencias o patrones que serían difíciles de descubrir manualmente.
En resumen, la capacidad de utilizar herramientas computacionales para explorar y analizar automáticamente un amplio conjunto de parámetros puede ser crucial para descubrir patrones matemáticos en problemas complejos y para comprender el comportamiento global de la solución. (Ver Conjetura de Goldbach)
Un cuadrado mágico impar es una matriz cuadrada $M_{n\times n}
(\text{ con } n=2k+1, k \in \mathbb N)$, donde se dispone de una
serie de números enteros de forma tal que la suma de los números por
cada columna, de cada fila y de cada una de sus diagonales
principales tenga el mismo resultado.
Figura 1
Es decir, dado un número impar de la forma $n=2k+1$, con $k \in
\mathbb N$, se deben disponer los números del conjunto
$A=\unicode{123}1,2,3,4, ...,n^2\unicode{125}$, para rellenar las
celdas de la matriz cuadrada $M$ de orden $n \times n$, con la
condición
$C(x)$, la cual requiere que la sumatoria de filas, columnas y
las dos diagonales principales de $M$ sumen la misma
invariante $S$. (La suma de números Naturales en un Natural, de
modo que $S \in \mathbb N$)
Por tanto, el problema está en distribuir los números consecutivos del
$1 \text{ al } n^2$, en las celdas de la matriz $M$ de orden $n \times
n$, de tal manera que la suma $S$ sea la misma (i.e. $S$ es invariante),
en todos los sentidos señalados en la Figura 1.
Algoritmo: Transformación T(x)
El algoritmo
MagicoDocIRS es una Transformación $T$ que toma los $n^2$
elementos de $A$ y los ordena en una matriz cuadrada $M$ que cumple
con la condición
$C(x)$. (Donde $n$ es un número impar de la forma $n=2k+1$, con
$k \in \mathbb N$)
$T(x) =\unicode{123} x \text{ / } \href{javascript:Muestra_Mensaje(sPie[150])}{C(x)} \unicode{125}$
Donde $x=A_{1\times n^2}$ es una sucesión secuencial de números naturales, cuya longitud de términos es $n^2$, siendo $n \ge 3$, i.e. su inicio es $1$ y su último término $n^2$.
Figura 2 ~ $T:A \longrightarrow M$
Nótese que la distribución de $T: A \longrightarrow M$ es una
correspondencia biunívoca, o uno-a-uno y sobre. Es decir, La
transformación $T$ tiene una inversa $T^{-1}$. En otras palabras, la
relación es biyectiva estableciendo para cada elemento $A$ un único
elemento correspondiente en la matriz $M_{2\times 2}$.
Transformación de $T:A \longrightarrow M$, vice-versa
La matriz $M_{2\times 2}$ bajo las condiciones
$C(x)$ a resolver, está compuesta por $n$ arreglos horizontales
(filas), $n$ arreglos verticales (columnas) y 2 arreglos
diagonales. Es decir, $2(n+1)$ arreglos, donde con cada uno de ellos
se constituye una ecuación cuya suma es $S$. Reiterando que $n$ es
una entero impar mayor o igual que 3 ($n \ge 3$).
Por tanto, desde el punto de vista algebraico se debe resolver un
sistema de $2(n+1)$ ecuaciones lineales.
Se observa que cada arreglo o vector es un conjunto de $n$ elementos
de la forma
$m(i)=\unicode{123}a_{i1},a_{i2},a_{i3},...,a_{in}\unicode{125}$ o
$m(j)=\unicode{123}a_{1j},a_{2j},a_{3j},...,a_{nj}\unicode{125}$,
donde cada $a_{ij} \in \mathbb N \text {/} a_{ij} \le n^2 \text{ con
} i,j=1,2,...,n$ (y donde $n$ es un número impar de la forma
$n=2k+1$, con $k \in \mathbb N$)
Cada matriz $M_{2\times 2}$ que cumple las condiciones
$C(x)$, tiene una determinante diferente de cero (i.e. no
singular) y por tanto tiene una matriz inversa $M^{-1}$, tal que
$M·M^{-1}=M^{-1}·M = I$, donde $I$ es la matriz Identidad del mismo
orden que $M$
Afortunadamente, a lo largo de la historia, se han descubierto
diferentes métodos de resolución sintética, - en este caso el
Rombo Siamés-, que ayudan a simplificar y resolver el cuadrado
mágico por construcción, sin tener que despejar tantas incógnitas.
(Ver analogía con el
Triangulo de Pascal).
Es decir, evitando aplicar un
algoritmo computacional de resolución de carácter "carretero" o de
ensayos de aproximación aleatoria o de múltiples operaciones
sistemáticas para realizar el cálculo y determinar una solución.
Base Algoritmo
Proceso del Algoritmo
La base del algoritmo que sustenta la presente solución es método heurístico llamado Rombo
Siamés.
Nótese que existen otros métodos y algoritmos para la construcción de cuadrados mágicos. En este caso se optó por este procedimiento para estructurar el cuadrado mágico $M_{n\times n}$, dado que la técnica implementada es un enfoque sistemático, simple y regular que facilita la contrucción de la aplicación.
La transformación se inicia a partir del conjunto $A_{1\times n^2}$, donde $n$ es un número impar de la
forma $n=2k+1$, con $k \in \mathbb N$, serie de números que se traspasa y distribuye desde una matriz cuadrada ampliada $M^*$ de orden $(2n-1) \times (2n-1)$.
Es decir, en $M^*$ se
localizan los números del conjunto $A=\unicode{123}1,2,3,4, ...,n^2\unicode{125}$ secuencialmente en
forma oblicua en modulo $n$. (Ver Figuras 5 y 6), para posteriormente permutar las celdas vertical y horizontalmente conformando así el cuadrado mágico $M$ de orden $n \times n$, el cual está inscrito en $M^*$.
En el algoritmo (Ver Javascript), a las
celdas vacías se les asigna el valor cero.
La matriz ampliada $M^*_{9\times 9}$ para resolver el cuadrado
mágico de $5 \times 5$, que se ilustra en la figura animada, se utiliza para
ingresar los números,- $A=\unicode{123}1,2,3,4, ...,25\unicode{125}$ -, en
forma consecutiva y oblicua, i.e. se comienza desde el centro de la primera
fila de $M^*$ rellenando en diagonal desde arriba hacia abajo, partiendo
desde el $1$ con los números consecutivos configurando un rombo al llegar al
número $n^2$.
La matriz de bordes rojos inscrita en
$M^*$ es la matriz $M$, que ordenaremos aplicando el método
heurístico llamado Rombo Siamés, a fin de obtener la solución del
cuadrado mágico impar de $n\times n$.
El orden $n_{A}= 2n-1$ de la matriz
ampliada, en este caso es $9$, dado que el cuadrado mágico impar a
resolver es de orden $n=5$.
La matriz buscada $M$ de orden $n \times n$, está inscrita en la
matriz ampliada $M^*$.
Figura 5
En los cuadrados mágicos de tamaño impar, todas las relaciones son números enteros positivos.
El número localizado exactamente en el centro, es fundamental para
resolver el problema de la distribución y determinar las numerosas simetrías del cuadrado en torno al centro.
Es decir, el presente algoritmo se construye a partir de la base del
método de construcción (Rombo Siamés) de cuadrados mágicos.
En efecto, se desarrolla el algoritmo determinando el término
general en función de $n$ del valor de esos puntos claves de $M$:
La suma invariante $S$ de la filas columnas y diagonales de $M$.
El centro $c$ de la matriz cuadrada $M$.
Los vértices del cuadrado $M$.
La aplicación de permutaciones (o
swapping) de números desde $M^*$ hacia el interior de la matriz $M$
etc..
Puntos claves de $M$
El valor del número central de la ambas matrices es:
Este valor $c$, es directamente deducible de la serie
$\unicode{123}1,2,3,4, ...,n^2\unicode{125}$, tomando el primer
término sumado al último, dividido por 2. (Ver Sumatoria de Gauss)
Por tanto, implica que la suma invariante a lograr en todas las
direcciones (cada fila, cada columna y cada diagonal) es:
El vértice inferior izquierdo ($vii$) de la matriz $M$ es:
$$\bbox[white,16px,border:1px solid black]{ vii = vsd+(n-1)}
\qquad\quad[6]$$
El vértice inferior derecho ($vid$) de la matriz $M$ es:
$$\bbox[white,16px,border:1px solid black]{ vid = vsi+n·(n-1)}
\qquad\quad[7]$$
Coordenadas: $M^*\longrightarrow M$
De acuerdo a la expresión rotulada con $[4]$, el valor del vértice superior izquierdo, denotado sea como $vsi$ o también como $p$, los utilizaremos como punto de referencia para expresar
las coordenadas y su correspondencia de los vértices en ambas matrices $M^*_{(2n-1)(2n-1)}$ y $M_{nn}$:
Vértice superior izquierdo (vsi): $M^*(p,p)\longrightarrow M(1,1)$.
Vértice superior derecho(vsd): $M^*(p,p+n-1)\longrightarrow M(1,n)$.
En este caso con $n=5$ se tiene que $p=3$, dado que $p=1 + \frac{(n - 1)}{2}$, luego:
$vsi=M^*(3,3)\longrightarrow M(1,1)=3$,
$vsd=M^*(3,7)\longrightarrow M(1,5)=11$.
$vii=M^*(7,3)\longrightarrow M(5,1)=15$,
$vid=M^*(7,7)\longrightarrow M(5,5)=23$
Precisiones vía Ejemplos
La siguiente ilustración muestra un paso intermedio para la
resolución de una matriz $M$ de orden $7 \times 7$, inscrita en en
la matriz ampliada $M^*$ de orden $13 \times 13$, cuyo valor central
$c=25$, localizado en $M(4,4)$ y el vértice superior izquierdo es
$p=4$
Figura 6
Obsérvese que la serie $\unicode{123}1,2,3,4, ...,49\unicode{125}$, se
configura en forma oblicua en modulo $7$ en la matriz ampliada $M^*$, como
lo ilustran las flechas rojas de la Figura 6. Una vez configurado el rombo con los números
dentro de la matriz ampliada $M^*$, se aplica el algoritmo de traspaso, el cual
utiliza como referencia el valor central $c$ y el
vértice superior izquierdo $vsi=p$, como así mismo las propiedades
simétricas de la matriz.
Es decir, ahí se aplica una rutina que permuta los números
diferentes de cero $M^*$, - externos a $M$, hacia el interior,
teniendo como referencia el vértice superior izquierdo $p$ y
el valor central $c$. El algoritmo cuenta con dos funciones: una que
opera verticalmente en los "swaping" y la otra horizontalmente. (Ver
figura 6 y Figura 8).
Figura 7
En esta construcción,
MagicoDocIRS siempre contempla que la diagonal de pendiente positiva
de la matriz $M$, es una serie consecutiva.
Es decir, los números del vértice superior derecho hasta
el vértice inferior izquierdo, son $n$ números consecutivos.
En el
ejemplo de la Figura 6, la diagonal de pendiente positiva es la serie
$\unicode{123}22,23,24,25,26,27,28\unicode{125}$, cuya suma es el
invariante $S=175$. (Donde $S=7·25$ ,
Ver expresión [2])
En este algoritmo, el número que ocupa el vértice
superior derecho $vsd$ de la matriz $M$, es equivalente
a:
$$\bbox[white,16px,border:1px solid black]{vsd = p + (p-1)·(n-1)}\\\text{Donde }p=vsi$$
Ahora, observemos la sucesión de valores que va adquiriendo el $vsd$, en función de $n$ se ilustra
a continuación:
Estos vértices derechos de los cuadrados $M$ son el valor inicial de
la serie secuencial que se ingresa en la segunda diagonal del cuadrado y su suma
es la invariante $S$:
Se observa que la serie de $n$ términos de la segunda diagonal (pendiente positiva) es una progresión aritmética de diferencia $1$ , donde $a_{1n}=vsd \land S=n·c$.
En el ejemplo de orden $7x7$, se tiene que $vsd=22$ y su
segunda diagonal es $\unicode{123}22,23,24,25,26,17,28\unicode{125}$, cuya suma es $S=175$. Así mismo, la diagonal principal es una progresión aritmética de $n=7$ términos, cuya diferencia $d=n=7$, que se inicia en $vsi=4$ y termina en $vid=46$, $\unicode{123}4,11,18,25,32,39,46\unicode{125}$
Dejamos al lector la tarea de continuar encontrando las decenas de
relaciones y series que se generan en función de $n$, dentro el cuadrado mágico. (Ejecutar la aplicación
MagicoDocIRS para visualizar cuadrados de tamaños diferentes).
Ejemplo (Resolver la Matriz de orden $7 x 7$)
Se puede observar cómo se distribuyen los valores simétricamente
alrededor del eje horizontal. Los valores de las casillas de ambos
lados, se posicionan al interior de $M$ aplicando la
propiedad de simetría con respecto a los ejes centrales..
Figura 8
En efecto, el ejemplo de la Figura 8, muestra las permutaciones en la
columna central, desde los valores externos de $M^*_{13 \times 13}$
hacia las celdas de $M_{7 \times 7}$ con valores ceros. Los pares, -de
este ejemplo-, que van ingresando desde $M^*$ exterior, y
posicionándose en el interior de la columna central de $M$, son [1
permuta con 49] y [9 permuta con 41], la primera coordenada del par
ordenado es la externa superior a $M$ y la segunda coordenada es la
externa inferior.
Nótese que los valores superiores se desplazan hacia abajo del eje
central horizontal y los valores inferiores hacia arriba del eje
central de M.
Permutación de Coordenadas de $M^*\longrightarrow M$
Téngase en cuenta que las coordenadas de $M^*$ y M se referencian
matricialmente en forma independiente.
Resultante Algoritmo: Matriz de orden $7 x 7$
Figura 9
Función
Javascript: Permuta Valores Verticales
A continuación se ilustra una de las rutinas que se denominó como "Permuta_Valores_Verticales(columna)" (codificada en javascript) ), la cual va tomando los valores externos del rombo en $M^*$ y los va permutando verticalmente hacia las celdas vacías extremas de la matriz inscrita dentro de los bordes de $M$.
En forma semejante se debe codificar una función "Permuta_Valores_Horizontal(fila)" que permuta los valores en sentido horizontal a las celdas vacías extremas. Este proceso se realiza mediante la referenciación de la coordenadas de $M^*$, a fin de conformar la matriz resultante $M$.
function
Permuta_Valores_Verticales(columna){
/****************
/*Autor: José
Enrique González Cornejo.
Desarrollo en DOM javascript.
Aplicación del algoritmo
MagicoDocIRS
Rutina que permuta valores externos de $M^*$
verticalmente hacia la matriz $M$
Ejecutar MagicoDocIRS
Variables Globales:
var e = document.getElementById("cbo_impares");
var value = e.value;
var n=Number(value)
var ampliado=2n-1
var p=1+(n-1)/2 ///vertice superior derecho
*/
var par=new Array()
var kpar=0
for (var i=1;i<=p-1;i++)
{
var iden1="td_" + i + "_" + columna
var iden2="td_" + (ampliado-i+1) + "_" + columna
pk=0
for (var i=p;i<=p + (n-1);i++)
{
var idenp="td_" + i + "_" + columna
temp=document.getElementById(idenp).innerHTML
if (temp==0)
{
var posicion1=idenp
var posicion2="td_" + (ampliado-(i-1)) + "_" + columna
arriba=document.getElementById(posicion1).innerHTML
abajo=document.getElementById(posicion2).innerHTML
if (abajo==0 && arriba==0)
{
if(pk<kpar)
{
var auxiliar1=par[kpar-pk]
cadena1=auxiliar1.split(",")
document.getElementById(posicion1).innerHTML=cadena1[1]
document.getElementById(posicion2).innerHTML=cadena1[0]
pk=pk+1
}
}
} } }
Otra solución $7
x 7$: Cuadrado Mágico de la Ermita "Virgen del Calvario"
Cuadrado Mágico 7x7 en Zurgena, Almería. Ermita Virgen del Calvario
Se trata de una solución muy particular y específica, sin algoritmo genérico conocido, demuestra que existen otros procedimientos con otras distribuciones que cumplen con las
condiciones de un cuadrado mágico impar. Por ejemplo, en el caso
de $7 x 7$, está el cuadrado mágico de la Ermita "Virgen del
Calvario" (ver figura 10), la cual presenta otra
distribución de los números {$1,2,3,...,49$} diferentes a la
matriz de la figura 9 generada por la transformación $T$. Estas
soluciones sólo coinciden en el número central $c=25$
En efecto, cuadrado mágico de la Ermita “Virgen
del Calvario” en Almería, que es la siguiente matriz solución:
Figura 10
Ejemplo
Paso a Paso con $n=3$ con Algorimo DocIRS
1.- Se configura Matriz
Ampliada $M^*$ de $5 x 5$, localizando los números del $1$
al $9$ en forma oblicua en modulo $3$.
2.- Se distingue la matriz
$M$ de orden 3 x 3, - marcada de amarillo-, inscrita en
M*. Cuyas referencias para el algoritmo son el valor
del vértice superior izquierdo $p=2$ (Ver [4]) y
el valor central c=5 (Ver [1]).
3.- Se aplica
permutación externa vertical con 1 y 9
Nota: El número de pares a permutar va aumentando
según el orden de la matriz.
4.- Se aplica Permutación
externa horizontal hacia en interior de las celdas
vacías de $M$, tanto del número $3$ como del número $7$
5.- Terminada las
Permutaciones de $M^*$ hacia $M$ y vaciado el rombo
6.- Se despeja la la Matriz
$M$ Resultante (cuya sumas $S=15$ (Ver [2]), en filas,
columnas, diagonales)
Síntesis
Los cuadrados mágicos, no tienen aplicación técnica conocida,
pero cualquier matemático siempre quiere resolver y curiosear. El
modelo aquí presentado no utiliza ningún recurso aleatorio.
La solución algebraica también puede simplificarse con algunas de
las propiedades que se pueden extraer a primera vista del Rombo
Siamés.
En efecto, este ordenamiento ofrece una serie de relaciones
numéricas que se deducen en forma directa, las cuales reducen en
forma significativa el sistema de ecuaciones lineales sobre $\mathbb
Z$ que es necesario estructurar cuando se plantea el problema bajo
este enfoque.
Por ejemplo:
Figura 3
i) La diagonal principal de la matriz $M$ que parte
del vértice superior izquierdo hacia el vértice inferior
derecho (i.e la diagonal de pendiente negativa), es un
vector o arreglo de $n$ términos que responden a una progresión
aritmética, cuya diferencia es $n$ (i.e. la diferencia
constante es la misma que el orden del cuadrado) y que suman $S$
que es la traza de magnitud invariante de $M$. El valor $p$ de
este vértice
vsi es $p = 1 + \frac{(n - 1)}{2}$. Reiterando que $n$ es una entero impar mayor o igual que 3.(Ver expresión [4]).
El arreglo de la forma $\unicode{123}p, p+n, p+2n,....,p + n(n - 1)\unicode{125}$
constituye la diagonal principal de $M$, cuya traza $tr(M)=S$.
ii) La diagonal de la matriz $M$ que parte del vértice
superior derecho hacia el vértice inferior izquierdo (i.e la
diagonal de pendiente negativa), es un arreglo de números
consecutivos que suman $S$. El valor de este vértice superior
derecho es $vsd = p + (p-1)·(n-1)$ (Ver expresión
[5])
iii) La intersección de las diagonales es el número central de
la matriz. Es decir, queda localizado en el centro del cuadrado
de orden impar. Este número central $c$ es clave para la
solución del problema.(Ver expresión [1]))
Con la propiedades concluidas del Rombo Siamés se reduce el sistema
de ecuaciones considerablemente a la siguiente operación matricial:
Donde los valores de la matriz marcados con un circulo rojo y el
valor invariante $S$ del vector resultante, están previamente
determinados. Además, el Rombo Siamés señala claramente las
permutaciones a realizar desde una matriz ampliada, donde se
inscribe $M$.
Se observa que la serie de $n$ términos de la diagonal principal $\unicode{123}a_{11},a_{22}, a_{33}...,a_{nn}\unicode{125}$ , es una progresión aritmética de diferencia $n$, donde $a_{11}=vii \land S=\sum_{i=1}^n a_{ii}=n·c$.
Algoritmo Híbrido~ Determinístico y Aleatorio
Otro enfoque para resolver el problema de los cuadrados mágicos impares, es utilizar, -dentro del presente algoritmo-, los términos generales en $n$ ya determinados previamente por observación, que son: los vértices; el centro; las progresiones aritméticas de las dos diagonales; la suma invariante $S$ y otras relaciones en función de $n$ que se pueden resolver en la matriz $M$.
Una vez fijados esos valores, aplicar un método de distribución aleatoria tipo Montecarlo sobre las celdas vacías, hasta que los ensayos aleatorios cumplan con la condición $C(x)$
Ciertamente, este método aleatorio tomaría más tiempo en la aplicación computacional. Especialmente con valores de $n$ de magnitud mayor, dado que la cantidad de celdas vacías a estimar va creciendo según su tamaño $n \times n$ de la matriz $M$.
A quienes les interesa este enfoque de algoritmo como ejercicio, se les recomienda continuar encontrando los múltiples patrones de valores en función de $n$, a fin de minimizar el número de ensayos aleatorios sobre las celdas vacías. Las verificaciones las puede realizar con la aplicación
MagicoDocIRS resuelta con en el presente artículo. (Excepto dispongan de un computador cuántico)
A continuación un simulador que despliega una ventana con una matriz cuadrada con valores derminísticos calculados en los párrafos anteriores en función del número impar $n$, ya ocupados de la serie $\unicode{123}1,2,3,...,n^2\unicode{125},(\text{ donde } n=2k+1, k \in \mathbb N)$:
Seleccione Orden:
La selección de número impar del listbox en el previo simmulador está limitado a un máximo de $n=21$ por razones de espacio en la ventana donde se despliegan los resultados.
Orígenes
Históricos
Los cuadrados mágicos se estudian desde hace 3 milenios antes de
Cristo en China. Posteriormente en otras regiones de Asia,
India, Egipto y Grecia. En Europa fue publicado en Francia en
1691 por Simón de la Loubere, llamado a veces Método Siamés, dado
que él lo aprendió en esas tierras. (Ver
Cuadrados Mágicos Wikipedia)
Existen decenas de evidencias que estas estructuras numéricas de orden
menor ya se conocían a lo largo de la historia y muchos fueron los
que intentaron resolver este rompecabezas matemático.
Fue en el
Renacimiento cuando se resolvió, - en forma heurística-, el
problema de orden mayor, por diversos matemáticos (Stifel, Fermat,
Pascal, Leibnitz, Frénicle, Bachet, La Hire, Saurin, Euler,...), pero
siempre inspirados y copiando las construcciones antiguas del
cuadrado mágico proveniente del oriente.
Para finalizar, ilustramos a continuación un cuadro resuelto de orden 17
x 17, realizado por la aplicación
MagicoDocIRS e Invitamos a los lectores a continuar
encontrando la múltiples relaciones en función de $n$, que se presentan
en estas estructuras numéricas mágicas, mediante el programa
MagicoDocIRS.
Ejemplo
Resuelto (Matriz de orden 17 x 17)
Datos Básicos del Cuadro
Orden de la Matriz $M$
$17 x 17$
Secuencia
1,2,...,289
Vértice Superior Izquierdo $p = 1
+ \frac{(n - 1)}{2}$
9
Vértice Superior Derecho
$vsd=1 + \frac{(n-1)}{2} + \frac{(n-1)^2}{2}$