Table des matières
1. Introduction à l'algorithme du plan le plus proche
2. Un algorithme d'arrondi simple pour résoudre le problème CVP
3. Étapes de l'algorithme du plan le plus proche
4. Compréhension graphique de l'algorithme du plan le plus proche
1. Introduction à l'algorithme du plan le plus proche
En 1986, L.Babai a proposé l'algorithme du plan le plus proche pour résoudre le problème CVP, en utilisant n pour représenter le rang du réseau, l'approximation de sortie de l'algorithme est la suivante :
CVP : Problème vectoriel le plus proche, nom complet Problème vectoriel le plus proche
Les six variantes du problème CVP sont les suivantes :
A cette époque , les trois dernières questions étaient les mêmes que les trois premières.
Si le problème de calcul est résolu , puisque les problèmes de calcul, d'optimisation et d'écart sont tout aussi difficiles, alors les problèmes d'optimisation et d'écart restants peuvent être résolus. Récemment, l'algorithme planaire a pu résoudre le problème du calcul du CVP, et pour le moment
, afin de simplifier la réflexion sur l'analyse, le suivi n'est que discuté
, et la valeur approximative souhaitée peut également être obtenue en modifiant les paramètres liés. à l'algorithme.
2. Un algorithme d'arrondi simple pour résoudre le problème CVP
L'algorithme d'arrondi simple consiste à arrondir directement tous les coefficients d'un vecteur donné (il peut être arrondi vers le haut ou vers le bas), et les points de grille obtenus par l'algorithme approximatif ont beaucoup à voir avec la sélection de la base de grille, comme le montre la figure ci-dessous :
3. Étapes de l'algorithme du plan le plus proche
L'algorithme se compose principalement de deux étapes. La première étape consiste à générer la base réduite LLL pour le réseau d'entrée ; à ce stade, pour ce vecteur de base réduit, une combinaison linéaire entière est formée pour garantir qu'elle est suffisamment proche du vecteur t donné. Cette étape est très similaire à l’opération de réduction de boucle interne de l’algorithme LLL.
Les étapes de l'algorithme sont les suivantes :
De toute évidence, il a été prouvé que l'algorithme LLL et l'algorithme de l'étape de réduction appartiennent à l'algorithme en temps polynomial, on peut donc obtenir que la relation entre l'algorithme du plan le plus proche et l'échelle d'entrée n est également une relation en temps polynomial. La discussion et l’analyse suivantes incluront les réseaux de rang complet et les réseaux de rang non complet.
Étant donné une base orthonormée unitaire, comme suit :
Pour les réseaux non de rang complet, il est nécessaire d'ajouter mn lignes de vecteurs matriciels nuls, donc la matrice B correspondante et la combinaison formée par t sont les suivantes :
L'algorithme du plan le plus proche consiste à rechercher la combinaison entière du vecteur colonne de la matrice B pour garantir que lors de la soustraction du vecteur t, la plage de la différence de soustraction de chaque dimension est la suivante :
L'algorithme part de la nième colonne et calcule de manière continue et récursive. S'il s'agit d'un réseau non de rang complet, alors les mn dimensions restantes sont des espaces perpendiculaires au réseau d'origine.
4. Compréhension graphique de l'algorithme du plan le plus proche
Étant donné un exemple en 3 dimensions, réduisez-le en 2 dimensions via l'algorithme du plan le plus proche, comme le montre la figure suivante :
L'idée centrale de l'algorithme peut être divisée en quatre étapes :
- t est projeté sur
le plan correspondant au quadrillage pour former un point s ;
- Trouver l'entier c correspondant pour que l'hyperplan
soit le plus proche possible du point s ;
- Ordre
, pour trouver itérativement
la relation entre, en supposant que la réponse obtenue à ce moment est
;
- La réponse finale renvoyée est
;
Le but de la première étape du processus de projection est de convertir la distance la plus courte du point de grille à t en la distance la plus courte à s. Cette étape est très nécessaire lorsque la grille n'est pas complètement rangée. L'étape suivante consiste à sélectionner à chaque fois l'hyperplan le plus proche, puis à déplacer dimension par dimension.