Mon interprétation de la question:
Je ne crois pas que cette question doive être considérée de manière simpliste comme un problème de complexité géométrique algorithmique. Cela devrait être mieux compris comme disant: nous percevons une capacité à trouver la réponse en temps constant, quand nous le pouvons. Ce qui explique cette perception, et jusqu’à cette explication et aux limites humaines, peut aussi bien le faire un ordinateur.
O(1)O(log(n))
Cela peut être renforcé par les lois de Weber-Fechner , qui stipulent que notre perception doit être mesurée sur une échelle logarithmique de la mesure physique réelle. En d'autres termes, nous percevons des variations relatives plutôt que des variations absolues. C'est par exemple pourquoi l'intensité sonore est mesurée en décibels.
O(log(n))Oψ(log(log(n)))Oψ
Oψ(log(log(n))) ce qui, à toutes fins pratiques, est probablement indiscernablement perceptible d'une constante, et il faut nécessairement y ajouter un temps constant pour démarrer le processus de reconnaissance et reconnaître le résultat.
Prise en compte des limitations physiologiques
La conclusion ci-dessus est confirmée par les étapes d’acquisition d’images.
Le PO a pris soin de séparer la construction d’une structure de données appropriée, "telle qu’un arbre à quatre arbres", qui est amortie sur plusieurs requêtes.
Cela ne fonctionne pas pour la plupart des gens qui ne mémorisent pas l'image. Je pense que l'image est numérisée pour chaque requête, mais cela n'implique pas de numériser tous les points: pas la première fois, ni pour les requêtes ultérieures.
TscanTscan
mOψ(log(log(m)))
227log2(27)
Sans connaître les unités réelles à utiliser, cela montre simplement que la variation pour le traitement est au pire dans le même ordre que les autres opérations à temps constant. Par conséquent, il est tout à fait naturel que le temps perçu pour trouver le point le plus proche soit constant. . . si nous déterminons le point le plus proche ou seulement un ensemble des points les plus proches.
A propos des contre-exemples et une solution possible
Il est bien sûr facile de construire des contre-exemples rendant très difficile la détermination visuelle du point le plus proche parmi une petite collection de points proches. C'est pourquoi l'OP demande en réalité un algorithme qui élimine rapidement la plupart des points, à l'exception des plus proches. Cette question de la difficulté possible de choisir entre plusieurs points proches est abordée dans de nombreuses réponses, l'exemple paradigmatique des points les plus proches se situant presque autour du point de référence. En règle générale, les lois de Weber-Fechner empêchent de pouvoir distinguer de petites variations de distance sur des distances suffisamment longues. Cet effet peut en réalité être augmenté par la présence d’autres points qui, bien que éliminés, risquent de fausser la perception des distances. Donc, essayer d'identifier le point le plus proche sera une tâche plus difficile, et peut nécessiter des étapes d’examen spécifiques, telles que l’utilisation d’instruments, qui détruiront complètement la sensation de temps constant. Mais cela semble clairement en dehors du champ des expériences envisagées par le PO, donc peu pertinent.
La question à laquelle répondre , qui est en réalité la question posée par le PO, est de savoir s'il est possible d'éliminer la plupart des points, à l'exception peut-être des derniers points qui semblent avoir des distances très proches du point de référence.
O(log(n))
Rejeter le coût amorti ne permet pas une solution informatique, car tous les points doivent être examinés. Cela souligne une différence majeure dans la puissance de calcul du cerveau et de la perception humaine: il peut utiliser le calcul analogique avec des propriétés assez différentes du calcul numérique . C'est typiquement le cas lorsque des milliards de points ne sont pas distinguables à l'œil nu, ce qui n'a pas la résolution de voir autre chose qu'un grand nuage avec différentes nuances de noir. Mais l'œil peut alors se concentrer sur une petite partie pertinente et voir un nombre limité de points contenant les pertinents. Il ne doit pas nécessairement connaître tous les points individuellement. Pour qu'un ordinateur fasse de même, vous devez lui attribuer un capteur similaire, plutôt que les coordonnées numériques précises de chaque point. C'est un problème très différent.
La "simple inspection visuelle" est à certains égards beaucoup plus puissante que le calcul numérique. Et cela est dû également à la physique des capteurs, et pas seulement à une puissance de calcul du cerveau probablement plus grande.