Articulo de referencia

complejidad de la comunicación entre múltiples partes

En informática teórica , la complejidad de la comunicación multipartita es el estudio de la complejidad de la comunicación en un entorno donde hay más de dos participantes. En e...

En informática teórica , la complejidad de la comunicación multipartita es el estudio de la complejidad de la comunicación en un entorno donde hay más de dos participantes.

En el juego de comunicación tradicional de dos partes , introducido por Yao (1979) , [ 1 ] dos jugadores, P 1 y P 2 intentan calcular una función booleana.

F(incógnita1,incógnita2):{0,1}norte{0,1}, incógnita1,incógnita2{0,1}norte, 2norte=norte{\displaystyle f(x_{1},x_{2}):\{0,1\}^{n}\to \{0,1\},\ x_{1},x_{2}\in \{0,1\}^{n'},\ 2n'=n}

El jugador P 1 conoce el valor de x 2 , P 2 conoce el valor de x 1 , pero P i no conoce el valor de x i , para i  =  1,  2.

En otras palabras, los jugadores conocen las variables del otro, pero no las suyas propias. El número mínimo de bits que deben comunicar los jugadores para calcular f es la complejidad de comunicación de f , denotada por κ ( f ). 

El juego de comunicación multipartita, definido en 1983, [ 2 ] es una poderosa generalización del caso de dos partes: aquí los jugadores conocen todas las entradas de los demás, excepto la suya propia. Debido a esta propiedad, a veces este modelo se denomina modelo de "números en la frente", ya que si los jugadores estuvieran sentados alrededor de una mesa redonda, cada uno con su propia entrada en la frente, entonces cada jugador vería todas las entradas de los demás, excepto la suya propia.

La definición formal es la siguiente:k{\displaystyle k}jugadores:PAG1,PAG2,...,PAGk{\displaystyle P_{1},P_{2},...,P_{k}}Pretendemos calcular una función booleana.

F(incógnita1,incógnita2,,incógnitanorte):{0,1}norte{0,1}{\displaystyle f(x_{1},x_{2},\ldots ,x_{n}):\{0,1\}^{n}\to \{0,1\}}

En el setS={incógnita1,incógnita2,...,incógnitanorte}{\displaystyle S=\{x_{1},x_{2},...,x_{n}\}}de variables hay una partición fijaA{\displaystyle A}dek{\displaystyle k}clasesA1,A2,...,Ak{\displaystyle A_{1},A_{2},...,A_{k}}y jugadorPAGi{\displaystyle P_{i}}conoce todas las variables, excepto aquellas enAi{\displaystyle A_{i}}, parai=1,2,...,k{\displaystyle i=1,2,...,k}Los jugadores disponen de capacidad de cálculo ilimitada y se comunican mediante una pizarra visible para todos.

El objetivo es calcularF(incógnita1,incógnita2,...,incógnitanorte{\displaystyle f(x_{1},x_{2},...,x_{n}}), de tal manera que al final del cálculo, cada jugador conozca este valor. El costo del cálculo es el número de bits escritos en la pizarra para la entrada dada. incógnita=(incógnita1,incógnita2,...,incógnitanorte){\displaystyle x=(x_{1},x_{2},...,x_{n})}y particiónA=(A1,A2,...,Anorte){\displaystyle A=(A_{1},A_{2},...,A_{n})}El costo de un protocolo multipartito es el número máximo de bits comunicados para cualquierincógnita{\displaystyle x}del conjunto {0,1} n y la partición dadaA{\displaystyle A}. Elk{\displaystyle k}-complejidad de la comunicación entre partes,doA(k)(F){\displaystyle C_{A}^{(k)}(f)}de una funciónF{\displaystyle f}, con respecto a la particiónA{\displaystyle A}, es el mínimo de costos de esosk{\displaystyle k}protocolos de -parte que calculanF{\displaystyle f}. Elk{\displaystyle k}-complejidad de comunicación simétrica entre partes deF{\displaystyle f}se define como

do(k)(F)=máximoAdoA(k)(F){\displaystyle C^{(k)}(f)=\max _{A}C_{A}^{(k)}(f)}

donde el máximo se toma sobre todas las k- particiones del conjuntoincógnita=(incógnita1,incógnita2,...,incógnitanorte){\displaystyle x=(x_{1},x_{2},...,x_{n})}.

Límites superior e inferior

Para un límite superior general tanto para dos como para más jugadores, supongamos que A 1 es una de las clases más pequeñas de la partición A 1 , A 2 ,..., A k . Entonces P 1 puede calcular cualquier función booleana de S con | A 1 |  +  1 bits de comunicación: P 2 escribe los | A 1 | bits de A 1 en la pizarra, P 1 los lee y calcula y anuncia el valor.F(incógnita){\displaystyle f(x)}Por lo tanto, se puede escribir lo siguiente:

do(k)(F)nortek+1.{\displaystyle C^{(k)}(f)\leq {\bigg \lfloor }{n \over k}{\bigg \rfloor }+1.}

La función de producto interno generalizado (GIP) [ 3 ] se define de la siguiente manera: Seay1,y2,...,yk{\displaystyle y_{1},y_{2},...,y_{k}}sernorte{\displaystyle n}vectores de bits y dejeY{\displaystyle Y}ser elnorte{\displaystyle n}vecesk{\displaystyle k}matriz, conk{\displaystyle k}columnas como ely1,y2,...,yk{\displaystyle y_{1},y_{2},...,y_{k}}vectores. EntoncesGRAMOIPAG(y1,y2,...,yk){\displaystyle GIP(y_{1},y_{2},...,y_{k})}es el número de filas de 1 en la matrizY{\displaystyle Y}, tomado módulo  2. En otras palabras, si los vectoresy1,y2,...,yk{\displaystyle y_{1},y_{2},...,y_{k}}corresponden a los vectores característicos dek{\displaystyle k}subconjuntos de unnorte{\displaystyle n}conjunto base de elementos, entonces GIP corresponde a la paridad de la intersección de estosk{\displaystyle k}subconjuntos.

Se demostró [ 3 ] que

do(k)(GRAMOIPAG)donorte4k,{\displaystyle C^{(k)}(GIP)\geq c{n \over 4^{k}},}

con una constante c > 0.   

Un límite superior en la complejidad de la comunicación multipartita de GIP muestra [ 4 ] que

do(k)(GRAMOIPAG)donorte2k,{\displaystyle C^{(k)}(GIP)\leq c{n \over 2^{k}},}

con una constante c  >  0.

Para una función booleana general f , se puede acotar la complejidad de comunicación multipartita de f utilizando su norma L 1 [ 5 ] de la siguiente manera: [ 6 ]

do(k)(F)=O(k2registro(norteL1(F))norteL12(F)2k){\displaystyle C^{(k)}(f)=O{\Bigg (}k^{2}\log(nL_{1}(f)){\Bigg \lceil }{nL_{1}^{2}(f) \over 2^{k}}{\Bigg \rceil }{\Bigg )}}

Complejidad de la comunicación multipartita y generadores pseudoaleatorios

La construcción de un generador de números pseudoaleatorios se basó en la cota inferior BNS para la función GIP. [ 3 ]

  1. Yao, Andrew Chi-Chih (1979), "Algunas cuestiones de complejidad relacionadas con la computación distribuida", Actas del 11.º Simposio ACM sobre Teoría de la Computación (STOC '79) , págs. 209–213 , doi : 10.1145/800135.804414 , S2CID 999287  .
  2. Chandra, Ashok K.; Furst, Merrick L.; Lipton, Richard J. (1983), "Protocolos multipartitos", Actas del 15.º Simposio ACM sobre Teoría de la Computación (STOC '83) , págs. 94–99 , doi : 10.1145/800061.808737 , ISBN  978-0897910996, S2CID 18180950 .
  3. 1 2 3 Babai, László ; Nisán, Noam ; Szegedy, Márió (1992), "Protocolos multipartitos, generadores pseudoaleatorios para espacio de registro y compensaciones de espacio-tiempo", Journal of Computer and System Sciences , 45 (2): 204– 232, doi : 10.1016/0022-0000(92)90047-M , MR 1186884 .
  4. Grolmusz, Vince (1994), "El límite inferior de BNS para protocolos multipartitos es casi óptimo", Information and Computation , 112 (1): 51–54 , doi : 10.1006/inco.1994.1051 , MR 1277711 .
  5. Bruck, Jehoshua; Smolensky, Roman (1992), "Funciones umbral polinomiales, funciones AC 0 y normas espectrales" (PDF) , SIAM Journal on Computing , 21 (1): 33–42 , doi : 10.1137/0221003 , MR 1148813 .
  6. Grolmusz, V. (1999), "Análisis armónico, aproximación real y complejidad de comunicación de funciones booleanas", Algorithmica , 23 (4): 341–353 , CiteSeerX 10.1.1.53.6729 , doi : 10.1007/PL00009265 , MR 1673395 , S2CID 26779824   .