¿Cómo puedo generar un paseo aleatorio en U(n)U(n)U(n)?

Hice esta pregunta aquí en math.SE: https://math.stackexchange.com/q/2250448/78169

Estoy preguntando en el foro de física para obtener una perspectiva diferente, y también sospecho que es probable que muchos físicos hayan encontrado este tema en el pasado con fines de modelado.

Estoy interesado en generar una caminata aleatoria en tu ( norte ) usando una computadora: cualquier referencia sobre este tema o temas relacionados / requeridos sería útil. También son bienvenidas las sugerencias específicas que discutan el problema técnicamente. ¡Gracias!

No estoy buscando caminatas aleatorias triviales. Por ejemplo, alternando aleatoriamente entre tu y tu sería técnicamente un paseo aleatorio discreto. Me gustaría poder generar una caminata aleatoria que pueda acceder a un subconjunto denso de los elementos del grupo; y/o me gustaría una descripción analítica de una caminata aleatoria continua (como un proceso de difusión/movimiento browniano), y/o una forma de simular/aproximar tal proceso continuo.

También hice esta pregunta relacionada con las matemáticas. SE: https://math.stackexchange.com/q/2250455/78169

¿Existe una relación o conexión entre grupos compactos como tu ( norte ) y múltiples como S norte 1 (esfera unitaria)? Si es así, ¿qué es?

Estoy interesado en simular una caminata aleatoria en grupos unitarios usando una computadora y me pregunto si tiene alguna similitud con una caminata aleatoria en una variedad reconocible como la esfera unitaria en algunas dimensiones. De manera más general, me pregunto si el grupo es isomorfo o de alguna manera similar/análogo/relacionado con tal objeto múltiple o geométrico.

Esto podría ser completamente ingenuo, pero ¿no podría simplemente usar un generador para una caminata aleatoria en una variedad no compacta, subdividir la variedad en copias que representan su variedad compacta, cambiar todas las copias hasta que luego se superpongan a la central y sume la distribución de probabilidad? ? Por ejemplo, si su distribución (continua) pareciera: 000011112223343322211110000, podría asignar copias como: 000|011|112|223|343|322|211|110|000, y resumirlas. |11, 12, 11|
La estrategia más obvia para mí es usar el álgebra de Lie de U(n). Para cualquier matriz hermítica X nxn y una matriz unitaria tu , tu = mi i X tu es de nuevo una matriz unitaria, y si X es pequeño (medido por la norma del operador, creo), entonces tu es topológicamente cercano a tu . Generar una caminata aleatoria es entonces un problema de generar secuencias aleatorias de pequeñas matrices hermitianas, y también de calcular mi i X .
@LukePritchett también podría simplemente diseñar una caminata aleatoria en el espacio de las matrices hermitianas (debería ser fácil) y exponenciarla en todos los puntos: se debe preservar la "cercanía" de los puntos en las dos rutas.
@GrahamReid, debo admitir que tengo problemas para seguir tu sugerencia. ¿En qué variedad no compacta sería más fácil simular una caminata aleatoria y cómo se subdividiría en copias de una variedad compacta como U(n)?

Respuestas (2)

La respuesta a este problema la da Francesco Mezzadri para todos los grupos compactos clásicos. (Lo mencioné en mi respuesta a una pregunta similar en Mathoverflow)

Para tu ( norte ) y O ( norte ) , la respuesta es muy simple basada en la descomposición QR con un poco más de cuidado debido a la no unicidad de la descomposición QR.

El algoritmo para tu ( norte ) se da en el artículo es bastante simple

  1. Comience a partir de una matriz GL(N) con entradas aleatorias gaussianas independientes distribuidas de manera idéntica (es decir, descalifique los casos en los que el determinante sea cero).

  2. Realice una descomposición QR.

  3. Para todos j , multiplica la j -ésima fila de Q por el signo del elemento diagonal R j j

  4. las matrices q convertirse en matrices unitarias distribuidas de medida de Haar.

¡Ah, no había visto tu respuesta! Siempre la misma historia: empezar a editar, empezar otra cosa… Me atrevería a decir que el método al que me referí es mucho más eficiente, ¡aunque se basan en el mismo teorema básico!
@Luc J. Bourhis No tengo una copia de su primera referencia; según su resumen, se basa en una concatenación de transformaciones de jefe de hogar. Pero este es el método estándar para implementar el algoritmo QR. Así que creo que los dos métodos son equivalentes.
Tu método dibuja norte 2 coeficientes aleatorios mientras que el método de Stewart dibuja norte para la primera columna, entonces norte 1 para el segundo, etc., ya que las transformaciones de Jefe de hogar solo deben aplicarse a "lo que queda".

La forma eficiente de generar una matriz aleatoria en O ( norte ) , distribuida según la medida de Haar, es una adaptación del teorema 3.3 en [1] (*). Consulte la sección 9.1 en [2] para una implementación eficiente que funcione para ambos tu ( norte ) y O ( norte ) . Este es solo un paso de una implementación de recorrido aleatorio. El método sería entonces algo así como:

generate random matrix Q in U(n)
for k=1:n
    generate random matrix Q' in U(n)
    Q := QQ'

La secuencia de Q sería entonces tu paseo aleatorio. Por supuesto, probablemente necesite restringir el tamaño del paso introducido por Q', es decir, manteniendo Q' en una vecindad de la matriz identidad. Creo recordar que el algoritmo LAPACK en [2] se puede modificar para hacer eso, pero necesito refrescar mi memoria. Actualizaré mi respuesta si me las arreglo.

[1] GW Stewart. La generación eficiente de matrices ortogonales aleatorias con una aplicación a los estimadores de condiciones. SIAM Journal on Numerical Analysis, 17(3):403–409, 1980.

[2] Nota de trabajo 9 de LAPACK. Una suite de generación de matrices de prueba. http://www.netlib.org/lapack/lawnspdf/lawn09.pdf

(*) Esta es la misma idea que la de la respuesta de David Bar Moshe, pero esta es una implementación más eficiente, lo que importaría mucho para que la aplicación caminara aleatoriamente, ya que el punto caliente será la generación de matriz aleatoria.