inférieure pour estimer pour non-croissant


11

Je voudrais savoir (en relation avec cette autre question ) si des limites inférieures étaient connues pour le problème de test suivant: on a accès à une requête à une séquence de nombres non négatifs et , avec la promesse que ou . ε ( 0 , 1 ) n k = 1 a k = 1 n k = 1 a k1 - εana1ε(0,1)k=1nak=1k=1nak1ε

Combien de requêtes (recherches) sont suffisantes et nécessaires pour qu'un algorithme randomisé (adaptatif) fasse la distinction entre les deux cas, avec une probabilité d'au moins ?2/3

J'ai trouvé un article précédent qui donne une borne supérieure logarithmique (en ) pour le problème connexe d'approximation de la somme, et une borne inférieure correspondant approximativement à ce problème pour les algorithmes déterministes; mais je n'ai pas pu trouver de résultat pour le problème spécifique que je considère (en particulier, les algorithmes randomisés).n


Edit: Après la réponse ci-dessous, je suppose que j'aurais dû être plus clair: dans ce qui précède (et en particulier dans les asymptotiques pour la borne inférieure), est la quantité "principale" vue comme allant à l'infini, tandis que est un (arbitrairement petite) constante.εnε


Je suppose que vous voulez dire . k=1nak1ε
RB

En effet - corrigé.
Clement C.

Eh bien, sans l'ordre, une dépendance à serait nécessaire, je pense (avec ou sans échantillonnage). Une "mauvaise" instance (paire de séquences) serait par exemple une séquence avec tous les égaux à , à l'exception d'une seule (arbitraire, aléatoire) telle que est égal à (dans la première séquence) et à (dans la seconde). Sans requêtes , les deux séquences ne peuvent pas être distinguées ...a k 1 - εnak jajε0Ω(n)1εn1jajε0Ω(n)
Clement C.

Je suppose que le modèle de requête vous permet de choisir le pour lequel vous interrogez , est-ce vrai? a kkak
kodlu

Oui (vous pouvez choisir le point que vous souhaitez "divulguer").
Clement C.

Réponses:


5

Voici les limites inférieures que je peux montrer. Je suppose que pour un fixe , la borne inférieure droite est , mais naturellement je peux me tromper.Ω ( log n )ϵΩ(logn)

Je vais utiliser une séquence décroissante (juste pour plus de commodité). Le mécanisme de base consiste à diviser la séquence en blocs. Dans le ème bloc, il y aura éléments (c'est-à-dire, ).i n i i n i = nLiniini=n

Dans ce qui suit, nous voulons que l'algorithme réussisse avec la probabilité , pour certains paramètres .δ > 01δδ>0

Première borne inférieure: .Ω(1ϵlog1δ)

Le ème bloc a n i = 2 i - 1 éléments, donc L = lg n . Nous fixons la valeur de tous les éléments du i ème bloc à ( 1 + X i ) / ( 2 n i L ) , où X i est une variable qui est soit 0 soit 1 . Clairement, la somme totale de cette séquence est α = L i = 1 1 + Xini=2i1L=lgni(1+Xi)/(2niL)Xi01 Imaginez que vous choisissiez chaqueXiavec une probabilitéβ égaleà1et0sinon. Pour estimerα, nous avons besoin d'une estimation fiable deβ. En particulier, nous voulons pouvoir distinguer la baseβ=1-4ϵet, disons,β=1.

α=i=1L1+Xi2niL=12+12L(i=1LXi).
Xiβ10αββ=14ϵβ=1

Imaginons maintenant que l'on échantillonne de ces variables aléatoires et que Z 1 , , Z m soient les variables échantillonnées. Paramètres Y = m i = 1 ( 1 - X i ) (notez que nous prenons la somme des variables du complément ), nous avons μ = E [ Y ] = ( 1 - β ) m , et l'inégalité de Chernoff nous dit que si β = 1 - 4mZ1,,ZmY=i=1m(1Xi)μ=E[Y]=(1β)m , alors μ = 4 ε m , et la probabilité de défaillance est P [ Y 2 ε m ] = P [ Y ( 1 - 1 / 2 ) μ ]exp ( - μ ( 1 / 2 ) 2 / 2 ) = exp ( - ϵ m / 2 ) . Pour rendre cette quantité inférieure àβ=14ϵμ=4ϵm

P[Y2ϵm]=P[Y(11/2)μ]exp(μ(1/2)2/2)=exp(ϵm/2).
, nous avons besoin de m 2δ .m2ϵln1δ

L'observation clé est que l'inégalité de Chernoff est étroite (il faut faire attention, car elle n'est pas correcte pour tous les paramètres, mais elle est correcte dans ce cas), donc vous ne pouvez pas faire mieux que cela (jusqu'aux constantes).

Deuxième borne inférieure: .Ω(logn/loglogn)

Définissez la taille du ème bloc sur n i = L i , où L = Θ ( log n / log log n ) est le nombre de blocs. Un élément du i ème bloc a la valeur α i = ( 1 / L ) / n i . La somme totale des valeurs de la séquence est donc 1 .ini=LiL=Θ(logn/loglogn)iαi=(1/L)/ni1

Maintenant, nous pourrions décider de choisir un bloc arbitraire, disons le ème, et définir toutes les valeurs de son bloc pour être α j - 1 = L α j (au lieu de α j ). Cela augmente la contribution du j ème bloc de 1 / L à 1 , et augmente la masse totale de la séquence à (presque) 2 .jαj1=Lαjαjj1/L12

Désormais, de manière informelle, tout algorithme randomisé doit vérifier la valeur dans chacun des blocs. En tant que tel, il doit lire au moins valeurs de la séquence.L

Pour l'argument ci - dessus plus formel, avec une probabilité , donner la séquence originale de masse 1 comme entrée (on se réfère à ce que l' entrée d' origine). Sinon, sélectionnez au hasard le bloc qui a les valeurs augmentées (entrée modifiée). De toute évidence, si l'algorithme aléatoire lit inférieur, par exemple, L / 8 entrées, elle a une probabilité (ou moins) une / huit pour détecter une entrée modifiée. En tant que tel, la probabilité que cet algorithme échoue, s'il lit moins de L / 8 entrées, est d'au moins ( 1 - p ) ( 7 /p=1/21L/81/8L/8

(1p)(7/8)>7/16>1/3.

PS Je pense qu'en faisant plus attention aux paramètres, la première borne inférieure peut être améliorée à .Ω(1/ϵ2)


Merci pour ça! J'ai une petite question concernant le premier, lb (plus particulièrement l'amélioration quadratique possible). Puisque nous avons ici le problème de la promesse unilatérale, ce qui implique que dès que l'algorithme "voit" une valeur qui donne la moindre preuve que β < 1 , il peut conclure sans avoir à obtenir une estimation plus précise de β : ne cela veut dire que le 1 / ε est optimal pour cette construction, essentiellement on pouvait s'y attendre , soit tous les X i l » être 1 ou au moins une ε fraction ne pas être? Ω(1/ϵ)β<1β1/ϵXiϵ
Clement C.

Ouais. Si vous souhaitez uniquement distinguer entre 1 et 1-epsilon, vous ne pouvez bien sûr pas améliorer la borne inférieure ... Je pensais essayer de distinguer d'autres gammes ... s
Sariel Har-Peled

4

Borne inférieure

Au moins requêtes sont nécessaires pour distinguer les deux cas.Ω(1/ϵ)

a1,,anϵ,2ϵ,3ϵ,4ϵ,na1++an=1n1/2ϵ

a1,,anϵa1=a1a2=a2ai=aiϵa1++an=1ϵ

a1,,ana1,,aniΩ(n)n1/2ϵΩ(1/ϵ)

Limite supérieure

O(lg(n/ϵ)[lgn+1/ϵ2])

[0,1]

[0,1]=[0,0.25ϵ/n](0.25ϵ/n,0.5ϵ/n](0.5ϵ/n,ϵ/n](ϵ/n,2ϵ/n](2ϵ/n,4ϵ/n](,1].

aiaiai[,u]i,jai,,aj[,u]O(lg(n/ϵ))

Maintenant, nous allons estimer la somme des valeurs dans chaque plage. La première gamme sera traitée séparément de toutes les autres:

  • [0,0.25ϵ/n)0m×0.25ϵ/nmmn0.25ϵ

  • δO(1/δ2)2×δ=0.25ϵ

0.25ϵ0.25ϵ0.5ϵ11ϵ


Merci - cela semble intéressant (pour autant que je sache, ce n'est pas la même approche que celle utilisée dans le document / discussion lié ci-dessus), et j'examinerai de plus près ce que vous avez écrit. Cependant, je recherche une borne inférieure plutôt qu'une borne supérieure - c'est-à-dire combien de requêtes sont nécessaires .
Clement C.

(Comme le temps est écoulé, j'attribue néanmoins la "prime" à la réponse - bien que je recherche toujours une référence pour une borne inférieure, s'il y en a quelque part là-haut.)
Clement C.

2
@ClementC., J'ai ajouté une limite inférieure, selon votre demande.
DW

nε
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.