Как я могу сгенерировать случайное блуждание по U(n)U(n)U(n)?

Я задал этот вопрос здесь, на math.SE: https://math.stackexchange.com/q/2250448/78169 .

Я спрашиваю на форуме физики, чтобы получить другую точку зрения, а также, поскольку я подозреваю, что многие физики сталкивались с этой темой в прошлом для целей моделирования.

Я заинтересован в создании случайного блуждания по U ( н ) использование компьютера: любые ссылки на эту тему или связанные/необходимые темы будут полезны. Конкретные предложения, которые обсуждают проблему технически, также приветствуются. Благодарю вас!

Я не ищу тривиальных случайных блужданий. Например, произвольное чередование U а также U технически было бы дискретным случайным блужданием. Я хотел бы иметь возможность генерировать случайное блуждание, которое может получить доступ к плотному подмножеству элементов группы; и/или мне нужно аналитическое описание непрерывного случайного блуждания (например, процесса диффузии/броуновского движения) и/или способ моделирования/аппроксимации такого непрерывного процесса.

Я также задал этот связанный вопрос на math.SE: https://math.stackexchange.com/q/2250455/78169

Есть ли родство или связь между компактными группами, такими как U ( н ) и многообразия, как С н 1 (единичная сфера)? Если так, то, что это?

Меня интересует моделирование случайного блуждания по унитарным группам с помощью компьютера, и мне интересно, имеет ли оно какое-либо сходство со случайным блужданием по распознаваемому многообразию, такому как единичная сфера, в некотором количестве измерений. В более общем плане мне интересно, изоморфна ли группа или каким-то образом подобна/аналогична/связана с таким многообразием или геометрическим объектом.

Это может быть совершенно наивно, но не могли бы вы просто использовать генератор для случайного блуждания по некомпактному многообразию, разделить многообразие на копии, представляющие ваше компактное многообразие, сдвинуть все копии до тех пор, пока не перекроют центральную и просуммировать распределение вероятностей ? Например, если бы ваше (непрерывное) распределение выглядело так: 000011112223343322211110000, вы могли бы сопоставить копии, например: 000|011|112|223|343|322|211|110|000, и суммировать их? |11, 12, 11|
Наиболее очевидная стратегия для меня — использовать алгебру Ли U(n). Для любой nxn эрмитовой матрицы X и унитарного U , U знак равно е я Икс U снова унитарная матрица, и если Икс мало (думаю, измеряется операторной нормой), то U топологически близок к U . Тогда генерация случайного блуждания представляет собой задачу генерирования случайных последовательностей малых эрмитовых матриц, а также вычисления е я Икс .
@LukePritchett, вы также можете просто спроектировать случайное блуждание в пространстве эрмитовых матриц (должно быть легко) и возвести его в степень во всех точках - «близость» точек на двух путях должна быть сохранена.
@GrahamReid, я должен признать, что у меня проблемы с вашим предложением. На каком некомпактном многообразии было бы легче смоделировать случайное блуждание и как его разделить на копии компактного многообразия типа U(n)?

Ответы (2)

Ответ на эту проблему дает Франческо Меццадри для всех классических компактных групп. (Я упомянул об этом в своем ответе на аналогичный вопрос о Mathoverflow)

За U ( Н ) а также О ( Н ) , ответ очень прост на основе QR-разложения с небольшой дополнительной осторожностью из-за неуникальности QR-разложения.

Алгоритм для U ( Н ) дается в статье достаточно просто

  1. Начните с матрицы GL(N) со случайными независимыми гауссовыми одинаково распределенными элементами (т. е. исключите случаи, когда определитель равен нулю).

  2. Выполните QR-разложение.

  3. Для всех Дж , умножить Дж -я строка Q по знаку диагонального элемента р Дж Дж

  4. Матрицы Вопрос становятся распределенными унитарными матрицами меры Хаара.

О, я не видел вашего ответа! Всегда одна и та же история: начинай редактировать, иди начинай что-то другое… Осмелюсь сказать, что метод, на который я ссылался, намного эффективнее, хотя они основаны на одной и той же базовой теореме!
@Luc J. Bourhis У меня нет копии вашего первого упоминания; согласно его реферату, он основан на конкатенации преобразований Хаусхолдера. Но это стандартный метод реализации алгоритма QR. Поэтому я думаю, что эти два метода эквивалентны.
Ваш метод рисует Н 2 случайные коэффициенты, тогда как метод Стюарта рисует Н для 1-го столбца, то Н 1 для 2-го и т. д., поскольку преобразования Хаусхолдера нужно применять только к «тому, что осталось».

Эффективный способ генерации случайной матрицы в О ( н ) , распределенное по мере Хаара, адаптировано из теоремы 3.3 в [1] (*). См. раздел 9.1 в [2] для эффективной реализации, работающей для обоих U ( н ) а также О ( н ) . Это только один шаг реализации случайного блуждания. Тогда метод будет чем-то вроде:

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

Последовательность Q тогда будет вашим случайным блужданием. Конечно, вам, вероятно, потребуется ограничить размер шага, вводимого Q', т. е. оставить Q' в окрестности единичной матрицы. Кажется, я помню, что алгоритм LAPACK в [2] можно модифицировать для этого, но мне нужно освежить память. Я обновлю свой ответ, если мне удастся.

[1] Г. В. Стюарт. Эффективная генерация случайных ортогональных матриц с применением к оценщикам состояния. Журнал SIAM по численному анализу, 17 (3): 403–409, 1980.

[2] Рабочая заметка LAPACK 9. Пакет для создания тестовых матриц. http://www.netlib.org/lapack/lawnspdf/lawn09.pdf

(*) Это та же идея, что и в ответе Дэвида Бар Моше, но это более эффективная реализация, которая будет иметь большое значение для случайного обхода приложения, поскольку горячей точкой будет генерация случайной матрицы.