Brouillage et corrélation dans les séquences à faible écart (Halton / Sobol)

14

Je travaille actuellement sur un projet où je génère des valeurs aléatoires en utilisant des ensembles de points à faible écart / quasi-aléatoire , tels que les ensembles de points Halton et Sobol. Ce sont essentiellement des vecteurs dimensionnels qui imitent une variable uniforme dimensionnelle (0,1), mais ont une meilleure répartition. En théorie, ils sont censés aider à réduire la variance de mes estimations dans une autre partie du projet.ddd

Malheureusement, j'ai rencontré des problèmes avec eux et une grande partie de la littérature à leur sujet est dense. J'espérais donc obtenir un aperçu de quelqu'un qui a de l'expérience avec eux, ou du moins trouver un moyen d'évaluer empiriquement ce qui se passe:

Si vous avez travaillé avec eux:

  • Qu'est-ce que le brouillage exactement? Et quel effet cela a-t-il sur le flux de points générés? En particulier, y a-t-il un effet lorsque la dimension des points générés augmente?

  • Pourquoi est-ce que si je génère deux flux de points Sobol avec le brouillage MatousekAffineOwen, j'obtiens deux flux de points différents. Pourquoi n'est-ce pas le cas lorsque j'utilise le brouillage en radix inverse avec des points Halton? Existe-t-il d'autres méthodes de brouillage pour ces ensembles de points - et si oui, y a-t-il une implémentation MATLAB?

Si vous n'avez pas travaillé avec eux:

  • Supposons que j'ai séquences de nombres supposés aléatoires, quel type de statistiques dois-je utiliser pour montrer qu'elles ne sont pas corrélées entre elles? Et quel nombre aurais-je besoin pour prouver que mon résultat est statistiquement significatif? Aussi, comment pourrais-je faire la même chose si j'avais séquences de vecteurs aléatoires dimensionnels ?S 1 , S 2 , , S n n n S 1 , S 2 , , S n d [ 0 , 1 ]nS1,S2,,SnnnS1,S2,,Snd[0,1]

Questions de suivi sur la réponse de Cardinal

  1. Théoriquement, pouvons-nous associer une méthode de brouillage à une séquence à faible discordance? MATLAB me permet uniquement d'appliquer le brouillage à radix inverse sur les séquences de Halton, et je me demande si c'est simplement un problème d'implémentation ou un problème de compatibilité.

  2. Je cherche un moyen qui me permettra de générer deux (t, m, s) réseaux sans corrélation entre eux. Est-ce que MatouseAffineOwen me permettra de faire cela? Que diriez-vous si j'utilisais un algorithme de brouillage déterministe et décidais simplement de choisir chaque «kième» valeur où k était un nombre premier?

Berk U.
la source
que voulez-vous dire par deux réseaux non corrélés? En particulier, qu'est-ce que cela signifie lorsque vous dites "nous [ing] un algorithme de brouillage déterministe"? De nombreux algorithmes de brouillage peuvent être appliqués à des réseaux arbitraires ; Honnêtement, je ne sais pas si tous les régimes le font. J'imagine que la réponse pourrait être "non". (Autrement dit, on pourrait construire un brouillage suffisamment spécialisé pour qu'il maintienne la propriété de fermeture pour une séquence particulière , mais pas en général. Je ne sais pas cela à la légère.)( t , m , s )(t,m,s)(t,m,s)
Cardinal
@cardinal Désolé, ce n'était pas clair, alors laissez-moi essayer de le reformuler. Disons que j'ai deux réseaux P et Q que j'utilise pour générer deux séquences de 100 points, { p i } 100 1 et . Si j'utilise un algorithme de brouillage aléatoire, alors et doivent être non corrélés, non? Clairement, ce n'est pas vrai si j'avais utilisé un algorithme de brouillage déterministe. Mais que se passe-t-il s'il génère 200 points et ne conserve que les entrées paires de et les entrées impaires(t,m,s)PQ{pi}1100 { p i } 100 1 { q i } 100 1 { p i }{qi}1100{pi}1100{qi}1100{pi}1200{qi}1200 . Seraient-ils corrélés? Et seraient-ils toujours bien "étalés"?
Berk U.
oui, si vous brouillez au hasard deux réseaux distincts indépendamment l'un de l'autre, les ensembles résultants seront indépendants. Quant à un algorithme de brouillage déterministe, sans aucune notion de hasard, il ne peut vraiment pas y avoir de notion correcte de corrélation. Je devrais penser à prendre des entrées paires et impaires. L'approche standard serait d'obtenir quelques points pour le premier, puis de générer et de jeter un tas de points supplémentaires, puis de collecter votre deuxième ensemble de points. Cela est lié à l'utilisation d'ensembles de points QMC «gravés». (t,m,s)
Cardinal

Réponses:

10

Le brouillage est généralement une opération appliquée à un réseau numérique qui utilise une base . Les filets Sobol 'utilisent par exemple , tandis que les filets Faure utilisent un nombre premier pour .(t,m,s)bb=2b

Le but du brouillage est d'obtenir (espérons-le) une distribution encore plus uniforme, surtout si vous ne pouvez utiliser qu'un petit nombre de points. Un bon exemple pour voir pourquoi cela fonctionne est de regarder la séquence de Halton en et de choisir deux nombres premiers "plus larges", comme 29 et 31. Le carré est rempli très lentement en utilisant la séquence de Halton standard. Mais, avec le brouillage, il est rempli plus uniformément beaucoup plus rapidement. Voici un tracé pour les deux cents premiers points en utilisant une approche de brouillage déterministe.d=2

entrez la description de l'image ici

Les formes les plus élémentaires de brouillage permutent essentiellement entre elles les expansions du chiffre base des points d' origine . Pour plus de détails, voici un exposé clair .bn

La bonne chose à propos du brouillage est que si vous commencez avec un filet et que vous le brouillez, vous obtenez un filet . Donc, il y a une propriété de fermeture impliquée. Puisque vous voulez utiliser les avantages théoriques d'un filet en premier lieu, c'est très souhaitable.(t,m,s)(t,m,s)(t,m,s)

Concernant les types de brouillage, le brouillage à radix inverse est un brouillage déterministe . L'algorithme de brouillage Matousek est un brouillage aléatoire , fait, encore une fois, de manière à maintenir la propriété de fermeture. Si vous définissez la valeur de départ aléatoire avant d'appeler la fonction de brouillage, vous devriez toujours récupérer le même filet.

Vous pourriez également être intéressé par le projet MinT .

cardinal
la source
Merci beaucoup pour ça. J'avais quelques questions complémentaires si cela ne vous dérange pas. Étant donné que la zone de commentaires ne me permet pas de les répertorier clairement, je les ai inclus dans le message.
Berk U.