• No se han encontrado resultados

Aproximación de problemas combinatorios con optimización semidefinida y redondeo aleatorio

N/A
N/A
Protected

Academic year: 2020

Share "Aproximación de problemas combinatorios con optimización semidefinida y redondeo aleatorio"

Copied!
35
0
0

Texto completo

(1)

Aproximación De Problemas Combinatorios Con Optimización

Semidefinida Y Redondeo Aleatorio

1.

Resumen

Max cut es el problema de hallar el corte máximo sobre los vértices de un grafo en el cual se le ha asignado un valor no negativo y racional a cada arista. Este problema es NP-Hard y por tanto no existe un algoritmo que lo resuelva en tiempo polinomial a menos que P = NP. Goemans y Williamson diseñaron (ver [7]) un α-algoritmo de aproximación aleatorio para max cut con α = 0,87856... al cual en este trabajo llamaremos G-W, este aprovecha la equivalencia de max cut con el problema de programación entera

max xi,xj∈{1,−1}

1 2

X

i<j

wij(1−xixj), 1≤i, j≤n (Q)

y luego pasa a la relajación

max vi,vj∈Sm

1 2

X

i<j

wij(1−vi.vj), 1≤i, j≤n (P)

sobre la cual se realizan los siguientes pasos:

1. Resolver (P) como un problema de programación semidefinida obteniendo un conjunto de n vectores {v1, ...vn} sobre la esfera (m−1)-dimensional para m ≥ 2, estos vectores son los vertices de una realización del grafo GsobreSm−1

2. generar un vectorr aleatorio uniformemente distribuido sobre la esfera 3. S ={i|vi.r≥0}. DondeS representa el corte máximo

En el presente trabajo Aplicamos el algoritmo G-W a otro problema NP-Hard conocido como Partition. Esto fue posible porque la función objetivo de partition se puede expresar en términos de la función objetivo de Max-cut.

2.

Introducción

Desde el punto de vista computacional un problema se considera resuelto si existe un algo-ritmo que lo resuelve en tiempo polinomial. Existen muchos problemas para los cuales esto se ha conseguido como por ejemplo 2-Sat, el problema hallar el mínimo árbol generador sobre un grafo y el problema de hallar el camino mínimo sobre las aristas de un grafo, por eso estos problemas pertenecen a la clase de complejidad P.

(2)

Pero también existen problemas para los cuales no se conoce un algoritmo que los resuelva en tiempo polinomial, ejemplos de esta clase de problemas los mostramos en la lista de la sección 6.

Hay problemas NP que tienen aplicaciones muy importantes entre ellos podemos mencionar el problema Set cover utilizado por la empresa IBM en 1998 para construir algoritmos eficientes para encontrar viruses de computador.

Por otro lado para que un problema sea aplicable usualmente no se requiere que este se resuelva exactamente, es común que cierto porcentaje de la solución óptima del problema ya tenga utilidad y es por esto que tiene sentido buscar algoritmos que aproximen problemas de la clase NP-Hard. Aún existen problemas que se pueden resolver en tiempo polinomial pero para su aplicación práctica es preferible usar un algoritmo de aproximación, como por ejemplo con 2-Sat.

Uno de los trabajos más importantes en teoría de la optimización es el articulo de [7] de Goemans y Williamson, en este artículo ellos construyen lo que se denomina un ρ-algoritmo de aproximación aleatorio que en tiempo polinomial da una solución con una aproximación de más

87,8 % de la solución óptima, que para lo logrado hasta el momento fue un resultado más que sorprendente.

Este algoritmo lo llamamos algoritmo G-W y lo presentamos en la sección 9 y es el resultado que motivo el presente trabajo. Esencialmente buscamos aplicar este algoritmo a otros problemas de la clase NP, ya sea adecuando el algoritmo para poder resolver aproximadamente un nuevo problema o bien transformando el problema para que el algoritmo sea aplicable. En esta segunda forma contamos con el hecho afortunado de que el problema de decsición asociado a Max cut el cual llamamos Number-cut es NP - completo (ver definición 7.2) lo que significa que cualquier problema de la clase NP se puede reducir a el en tiempo polinomial.

Nuestro objetivo con el presente trabajo es comprender la naturaleza de los problemas de la clase NP para poder diseñar algoritmos que aproximen estos problemas eficientemente.

3.

Preliminares

El objetivo de esta sección es establecer las convenciones, el significado de los símbolos que usaremos en el presente trabajo y revisar algunos conceptos básicos que luego nos serán de uti-lidad. Para comenzar Rm×nrepresenta el conjunto de las matrices de orden m×ncon entradas reales.

De acuerdo con esta notación el conjunto de las matrices cuadradas de ordenn lo represen-tamos porRn×ny el subconjunto de Rn×n formado por las matrices invertibles lo simbolizamos porGLn(R). En particular la matriz identidad multiplicativa de GLn(R) esIn. Para la traza de A usamosT r(A) y para el determinantedet(A).

Dada una matrizA∈Rn×nsabemos que tienenvalores propios en el campo de los complejos cada valor propio lo representamos con λi parai= 1, ..., n y el espacio propio asociado al valor propio λporEλ(A) y como es usualma(λ)representa la multiplicidad algebraica de λasí como mg(λ) representa su multiplicidad gemétrica. Conδi(A) denotamos el determinate de la matriz Mi(A) que es la matriz obtenida al eliminar de A las ultimas i filas y las ultimas i columnas.

(3)

Rn es el espacio vectorial formado por los vectores den componentes reales, consideraremos los elementos de Rn como vectores columna.

Para nuestros propósitos el subespacio más importante de Rn×n es el formado por las ma-trices simétricas, este espacio lo denotamos por SRn×n. Las matrices A de Rn×n que tienen la propiedad de que para todo x∈Rn xTAx0, se llaman positivas semidefinidas y si xTAx >0 para todo x∈Rn entonces diremos queA es definida positiva. Cuando A sea positiva semidefi-nida escribiremos A0en tanto que siA es definida positiva escribimosA0. El conjunto de las matrices semidefinidas positivas lo representamos por SRn×n+ y el de las definidas positivas

por SRn×n++

Las matrices semidefinidas positivas y definidas positivas tienen propiedades muy interesantes las cuales incluyen cierto tipo de descomposiciones que nos serán muy útiles en el diseño de algoritmos.

3.1. Normas matriciales

Recordemos que una norma sobre un espacio vectorial real V es una función k .k: V → R tal que se cumplen las siguientes afirmaciones:

(i) para todou∈V,kuk≥0 ykuk= 0 si y solo si y solo siu= 0

(ii) kαuk=|α|kukpara todo α∈R

(iii) ku+wk≤kuk+kwkpara todo u, v∈V

Los espacios vectoriales que consideramos en el presente trabajo son subespacios de Rm×n y especialmente de Rn×n, sobre estos espacios tenemos las siguientes normas matriciales:

(i) Las normas lp o normas de Hölder. Para p ≥ 1 y x = (x1, x2, ..., xn) ∈ Rn tenemos que kxk= (Pn

i=1|xi|p)

1

p

(ii) Para p= 1tenemos la normal1 definida por kxk=Pni=1|xi| (iii) Parap= 2Tenemos la norma euclidianakxk= (Pn

i=1|xi|2)

1 2

(iii) Tenemos la norma infinitakxk= m´ax{|xi||i= 1, ..., n}.

Para nosotros será suficiente la norma euclidiana la cual también se conoce como norma de Frobenius y simbolizaremos como k .kF. Para el producto escalar entre vectores usamos la notación usual h.i, en particular trabajaremos con un producto escalar entre matrices llamado producto de Frobenius el cual se define de la siguiente manera:

A•B =T r(ATB) A, B∈Rm×n

3.2. Propiedades Básicas de Matrices

Proposicion 3.1. Si P ∈Rm×n yQ

(4)

Demostración. Tenemos que siP = [pij]yQ= [qij]entonces

T r(P Q) =

n

X

i=1

m

X

k=1

pikqki =

m

X

k=1

n

X

i=1

qkipik =T r(QP).

Proposicion 3.2. SiU, V ∈SRn×nyP es no singular entoncesU•V = (P U PT)•(P−TV P−1)

en particular si Q es ortogonal entonces U •V = (QTU Q)•(QTV Q)

Demostración.

(P U PT)•(P−TV P−1) =T r((P U PT)(P−TV P−1)) =T r(P U V P−1) =T r(U V) =U•V

si Qes ortogonal entoncesQ−1=QT y tenemos el resultado.

Proposicion 3.3. Si A∈SRn×n entonces sus valores propios son reales y sus espacios propios

mutuamente ortogonales.

Demostración. Consideremos la matriz A como un elemento de Cn×n y a Cn con el producto interno hermitiano el cual se define por:

hX, Yi=

n

X

i=1

xiyi

Sea λun valor propio de A asociado al vector propio X6= 0 entonces: λhX, Xi=hX, λXi=hX, AXi

=hATX, Xi=hλX, Xi=λhX, Xi como X6= 0 tenemosλ =λde donde λ∈R.

Por otro lado sean λyβ valores propios distintos de Aasociados respectivamente a los vectores X yZ. Como A es simétrica tenemos que:

βhX, Zi=hX, βZi=hX, AZi

=hATX, Zi=hAX, Zi=hλX, Zi=λhX, Zi=λhX, Zi

por tanto (β −λ)hX, Zi= 0 y como β6=λhX, Zi= 0entonces X yZ son ortogonales luego Eλ es ortogonal aEβ

Theorem 3.4. A ∈ SRn×n si y solo si A es ortogonalmente diagonalizable, es decir existen

matrices reales Ddiagonal y Q ortogonal tal que A=QTDQ

Demostración. Sea A∈SRn×n por la proposición 3.3 y por el teorema fundamental del álgebra existe un valor propioλde A. Veamos que para todo valor propio λde A se tiene que

ma(λ) =mg(λ).

Sea {X1, X2, ..., Xd} una base ortonormal paraEλ(A) que podemos completar a una base

orto-normal de Rn

(5)

Consideremos la trasformación linealf :Rn−→Rn, tal quef(X) =AXparaX ∈Rn, la matriz que representa af en la base canónica deRn esA, en tanto que la matriz que representa af en la base B es

M = 

            

λ 0 · · · 0

0 λ · · · 0 M12

..

. ... . .. ...

0 0 . . . λ

0 0 . . . 0

0 0 . . . 0 M22

..

. ... . .. ...

0 0 . . . 0

            

Sea Y la correspondiente matriz de cambio de base entonces Y es invertible y tal que M = YTAY y por tanto M tiene los mismos valores propios de A con las mismas multipli-cidades algebraicas y geométricas.

ComoM es simétrica entoncesM12= 0, por tanto

det(A−xI) =det(M −xI) = (λ−x)ddet(M22−xI).

No es posible que λsea raíz del polinomio det(M22−xI) pues de ser así la matriz M22 tendrá

un vector propio u6= 0asociado aλy si u= (y1, ..., yn−d) entonces Z = (0, ...,0, y1, ..., yn−d) es

un vector propio de M también asociado aλ.

Perodim(Eλ(M))=dim(Eλ(A)) =dPor tanto las dprimeras columnas deM forman una base paraEλ(M)pues claramente estas columnas son vectores propios de M asociados aλ, luego Z ∈Eλ(M)lo cual es una contradicción y por tanto det(M22−xI)no tiene aλcomo raíz y por

tantoma(λ) =mg(λ) =dy así Aes diagonalizable.

Si λ1, λ2, ..., λk son los valores propios distintos de A, por álgebra lineal sabemos que Rn = ⊕k

i=1Eλi, por la proposición 3.3 tenemos que Eλi es ortogonal a Eλj para i6=j por tanto basta

aplicar el proceso de ortonormalización de Gramt Smith en cada Eλi para obtener una base

ortonormalB de Rn formada por vectores propios de A.

La matriz que representa a A en la base B es la matriz diagonal Dformada por los valores propios de A donde cada valor propio aparece tantas veces como su multiplicidad geométrica.

Si Q es la matriz cuyas columnas son los vectores de la base B entonces Q−1 = QT y A = QTDQ. Para la otra dirección es claro que si existen matrices Q ortogonal y D tales que A=QTDQluego A∈SRn×n

Proposicion 3.5. SRn×n+ es cerrado y convexo

Demostración. Primero veamos queSRn×n+ es cerrado. Para ello seaP un punto límite deSR

n×n

+

entonces existe una sucesión (An) ⊂ SRn×n+ tal que (An) → P, para todo n ∈N tenemos que P = (P −An) +An, entonces parax∈Rnfijo:

(6)

como (An)→P con la norma de Frobenius entonces

kP−Ank= (

i=n

X

i=1

(pij−anij)2)12 →0

de donde (pij −anij)→0. Como

kxT(P −An)xk2= (pij −anij)xixj entonces

(xT(P−An)x)→0

Además como (An) en SR+n×n entonces (xTAnx) es una sucesión de reales positivos por tanto su límite es no negativo y así tenemos que xTP x 0. Como esto se cumple para todo vector x∈Rn podemos concluir que P S

Rn×n+ y por tantoSR

n×n

+ es cerrado.

Ahora probemos queSRn×n+ es convexo. Sean A, B ∈SRn×n+ yλ∈ [0,1]tenemos que para

x∈Rn

xT(λA+ (1−λB)x=λxTAx+ (1−λ)xTBx≥0

de donde podemos concluir que

λA+ (1−λB)∈SRn×n+

para todo λ∈[0,1], por tantoSRn×n+ es convexo.

Definition 3.6. una matriz A∈Rn×n tiene una descomposición de cholesky si existe L trian-gular superior tal que A=LLT

Theorem 3.7. Sea A una matriz simétrica real de orden n las siguientes afirmaciones son equivalentes:

(i) A0

(ii) A tiene factorización de cholesky (iii) λi>0 parai= 1, ..., n

(iv) δi >0 para i= 1, ..., n

(v) Existe una matriz B real de rango ntal que A=BTB

Demostración. Primero veamos la equivalencia entre(i)y(iv). Supongamos queA0entonces f(x) =xTAxes una forma bilineal simétrica y definida positiva sobre cualquier báse de Rn

B ={b1, b2, ..., bn}

entonces f define un producto interno sobre Rn y por tanto existe una base ortonormal Bo de Rn respecto af. La matriz que representa a f en Bo es In por tanto tenemos que CTAC =I donde C es la matriz de cambio de base de Bo aB entonces:

A= (C−1)TC−1 y por tanto

(7)

de donde δn > 0. Observemos ahora que Mi(A) es la matriz de una forma bilineal sobre Vi = gen{b1, b2, ..., bi} para i = 1, ..., n por tanto tenemos que δi = det(Mi(A)) > 0. Ahora supongamos queδi>0parai= 1, ..., n.

Construyamos a partir de la baseB una base D={d1, d2, ..., dn} tal que

(i) f(di, dj) = 0 sii6=j y

(ii) f(di, di) =αii>0parai, j= 1,2, ..., n en la baseD

Queremos que si(x1, x2, ..., xn)son las coordenadas del vectorxentoncesf(x, x) =α11(x1)2+

α22(x2)2+...+αnn(x1)2≥0lo que mostraría que la función cuadrática es definida positiva.

Para construir la base

D={d1, d2, ..., dn}

vemos que es suficiente encontrar di = α11b1 +...+αiibi tales que f(di, bj) = 0 para j < i y f(di, bi) = 1 para todo iasí tenemos que si

j < i⇒f(di, dj) =f(di, j

X

i=1

αjkbk) = j

X

i=1

f(di, bj) = 0

también

f(di, dj) =f(dj, bi) = 0 si j > ipor simetría y f(di, di) =f(di,

Pi

1αjkbk) =αiif(di, bi) =αii. Para los vectoresdi tenemos que:

d1 =α11b1, d2 =α21b1+α22b2, ..., di=αi1b1+αi2b2+...+αiibi

luego para d1 tenemos queα11= f(b11,b1) para que se cumplan las condiciones (a) y (b) para di debemos tener que:

f(

i

X

k=1

αik(bk, b1)) = 0, f(

i

X

k=1

αik(bk, b2)) = 0, ...,(

i

X

k=1

αikf(bk, bi)) = 1

equivalentemente:(Pi

k=1αikf(bk, b1)) = 0,(

Pi

k=1αikf(bk, b2)) = 0, ...,(

Pi

k=1αikf(bk, bi)) = 1.

Observemos que este es un sistema no homogéneo en las αij cuya matriz de coeficientes es Mi(A) con determinante δi >0, por tanto existe solución para las αij lo que garantiza la exis-tencia de los vectores di que cumplan (i) y (ii).

Por la regla de Cramer tenemos que:αii= δi

δi−1 >0. Es fácil ver que (i)y (iii) también son

equivalentes. Primero supongamos que A0 y seanλun valor propio de A yX6= 0 un vector propio asociado a λentonces λ= xkxkTAx >0.

Ahora supongamos que los valores propios deA son todos positivos entoncesA0y por el teorema 1.4A=QTDQdonde Qes ortogonal yDes diagonal con los valores propios deAsobre

(8)

la diagonal principal. Como los valores propios deAson positivos entonces Dtiene raíz cuadra-da por tanto A = QTDQ= QT(√D)2Q = ((√D)Q)T(√D)Q= BTB donde B = (√D)QT es invertible.

Entonces para x ∈ Rn tenemos que xTAx = xTBTBx = (Bx)TBX = (k Bx k)2 0 y si

xTAx= 0 entonces k Bxk2= 0 de dondek Bxk= 0 lo que implicax = 0 puesB es invertible

luego Aes definida positiva.

Este mismo razonamiento nos muestra la equivalencia entre (i) y (v). Ahora veamos que (i) implica (ii). Para ello observemos que siU es triangular superior entoncesA=UTU y entonces al igualar la primera componente deUTU con la primera componente deAobtenemosu11=a11

como A es definida positiva a11 > 0 luego u11 =

p

(a11) en general al igualar el producto

de la primera fila de UT por la j-ésima columna de U con la componente 1j de A obtenemos u11u1j =a1j de dondeu1j = au111j y de esta manera calculamos todos los elementos de la primera fila de U.

Ahora al hacer el producto de la segunda fila deUT por la segunda columna deU tenemos: u212+u222=a22 de donde

a22=

p

(a22−u212)

de forma similar si multiplicamos la segunda fila de UT por la columna j de U e igualando el resultado con la componente a2j tenemos:

u12u1j+u22u2j =a2j de donde

u2j =

(a2j −u2ju1j) u22

y de manera general tenemost=aii−(Pki−=11 uki)parai= 1, ..., n,uii= √

t,uij =

aij−(Pik−1=1ukiukj)

uii .

En el otro sentido es claro que si A tiene una descomposición de Cholesky entonces es definida positiva.

Theorem 3.8. Sea A∈SRn×n las siguientes afirmaciones son equivalentes:

(i) A es semidefinida positiva

(ii) Los valores propios de A son no negativos

(iii) Existe una matriz B real de orden n tal que A=BTB

Demostración. Supongamos (i) y seaλun valor propio de A yX ≤0un vector propio asociado a λtenemos que0≤XTAX =XTλX =λXTX =kX k2 de donde λ0.

Ahora supongamos (ii) por el teorema 1.3A=PTDP conP−1 =PT yD=Diag(λ1, λ2, ..., , λn) donde λ1, λ2, ..., , λn son los valores propios de A.

Como√λiexiste parai= 1, ..., n, tenemos queD= (√D)2donde√D=Diag(√λ1,

√ λ2, ...,

√ λn)

Así tenemos que

A=PTDP =PT(

D)2P =PT(

√ D)(

D)P = (

√ DP)T

DP =BTB con B =√DP.

(9)

Ahora supongamos queA=BBT donde B es real, luego paraX∈Rn,XTAX=XTBTBX =

(BX)TBX =kBX k20

Proposicion 3.9. Si U 0 entonces ukk ≥0 Para k = 1, ..., n y si ukk = 0 algún 1≤ k≤ n

entonces $ukj =ujk = 0 para j= 1, ..., n. Similarmente siU 0 entonces ukk>0

Demostración. ya que ukk = eTkU ek y U 0 entonces ukk ≥ 0, para el caso en que U 0 tenemos que ukk>0.

Ahora supongamos que U 0 y ukk = 0. Veamos el caso especial en queU es simétrica por el hecho 6 tenemos queU =BTBde donde0 =ukk=bTkbky asíbk= 0luegoukj =ujk =bTkbj = 0 para todo j.

Ahora consideremos el caso general en que U es cualquier matriz semidefinida positiva tal que ukk = 0. Sea A = U +UT A 0, simétrica y akk = 2ukk = 0, por el resultado anterior akj = ajk = 0 de donde ukj +ujk = 0 o bien ukj = −ujk para todo j, así tenemos que si B = UTU entonces bkk =

X

ukjujk = −

X

u2kj = Xu2jk, como B 0 debemos tener que ukj =ujk = 0.

Proposicion 3.10. Sean U ∈ SRn+ y P ∈ Mn×m(R) entonces P U PT 0. Si P ∈ GLn(R)

tendremos U 0 si y solo siP U PT 0

Demostración. Para todo x ∈ Rn, tenemos que xT(P U PT)x = (PTx)TU(PTx) 0 ya que U 0.Supongamos que P ∈ GLn(R), si U 0 entonces U 0 y aplicando el resultado prece-dente tenemosP U PT 0.

Ahora sea x ∈ Rn tal que xT(P U PT)x = 0 como U 0 entonces PTx = 0 y ya que P ∈ GLn(R) también PT ∈ GLn(R) y asi P U PT 0. Ahora supongamos que P U PT 0, tenemos que U =P−1(P U PT)(P−1)T y por el resultado anterior tenemos U 0

Proposicion 3.11. Si U =

U11 U12

U21T U22

0 entonces U110

Demostración. Supongamos que U11 ∈ MkR y sea x ∈Rk entonces para Z = (xT,0)Tenemos que0≤ZU ZT =ZU11ZT de donde concluimos que U110.

Veamos que este resultado se cumple para cuando las matrices son positivas definidas, en efecto si U 0entonces por definiciónU 0y por el resultado precedente U110 veamos que

U 0 seaX ∈Rk si xTU

11x= 0para Z = (xT,0)claramente tendremos ZU ZT = 0 de donde

Z = 0 y entonces x= 0.

Combinando los hecho 8 y 9 tenemos que existe una matriz de permutación que siempre es invertible tal que

P U PT =

U22 U12T

U21T U11

de donde concluimos queU22 es semidefinida positiva o definida positiva según el caso.

Proposicion 3.12. Sea U ∈ SRn×n tal que U =

A B

BT C

con A, C simétricas y A 0

entonces U 0(U 0) si y solo si C−BTA−1B 0(0). La matriz C−BTA−1B se llama complemento de shur de A

(10)

Demostración. Para probar este hecho usaremos la siguiente factorización de la matrizU.

U =

A B

BT C

=

I 0

BTA−1 I

A 0

0 C−BTA−1B

I A−1B

0 I

. Observemos que

PT =

I 0

BTA−1 I

es invertible. Por el hecho 9

A 0

0 C−BTA−1B

= (P−1)TU P−1

es semidefinida (definida) positiva según U lo sea. También por el hecho 9 tenemos C−BTA−1B 0(0)

según lo que sea U. Para probar el reciproco supongamos queC−BTA−1B 0(0), como

U =PT

A 0

0 C−BTA−1B

P

siendo P invertible y A 0 entonces

I 0

BTA−1 I

0( 0) y nuevamente por el hecho 9 tenemos que U 0(0)

Proposicion 3.13. Si U ∈SRn×n entonces xTU x=U xxT

Demostración. U xxT =T r(U(xxT)) =T r(xTU x) =xTU x Proposicion 3.14. SRn×n+ = (SR

n×n

+ )∗ ={V |U •V ≥0, U ∈SR

n×n

+ }

Demostración. Veamos que

SRn×n+ ⊆(SRn×n+ )∗

Sean U, V ∈SRn×n+ , tenemos que

V •U =T r(V U) =T r(V U12U 1

2) =T r(U 1 2V U

1 2)≥0

ya que

U12V U 1 2 ≥0

asi tenemos queV ∈(SRn×n+ )∗. Ahora probemos que

(SRn×n+ )

(SRn×n+ )

para ello supongamos que existeU /∈SRn×n+ entonces existex∈Rn tal quexTU x <0 de donde

U•(xxT) =xTU x <0

y por tanto

U /∈(SRn×n+ )

(11)

Proposicion 3.15. Si U 0 entonces U•V para toda V 6= 00 y además{V |U•V ≤β}

es acotado para cada real positivo β.

Demostración. Seaλel menor valor propio de U tenemos queU•V = (U−λI)•V +λI•V ≥ λI•V =λI•D(V) =λkλ(V)k1≥λkV kF paraV 0 comoV 6= entonceskV kF>0y así U •V >0 y también tenemos λkV kF≤β de donde k V kF≤ βλ lo cual demuestra la segunda afirmación del enunciado.

Proposicion 3.16. Si U, V 0 entonces U •V = 0 si y solo si U V = 0

Demostración. U =PTD(U)PyU =QTD(V)Qentonces0 =U•V = (PTD(U)P)(QTD(V)Q) =

T r[(PTD(U)P)(QTD(V)Q)] = T r[(QP)TD(U)D(V)(QP)] = T r(U V) =k U V kF de donde U V = 0. Ahora supongamos que U V = 0 entonces U •V =T r(U V) =T r(0) = 0

Proposicion 3.17. Si U, V ∈SRn×n entonces U V =V U si y solo siU V es simétrica si y solo

si U y V son simultáneamente diagonalizables.

Demostración. Supongamos que U V = V U entonces (U V)T =VTUT =V U = U V o sea U V es simétrica. Si U V ∈SRn×n entonces U V = (U V)T =VTUT =V U Ahora veamos que U yV conmutan si y solo si diagonalizan simultáneamente.

Supongamos que U V = V U, por el teorema 1.4 U = QTD(U)Q donde Q es una matriz ortogonal cuyas columnas son los vectores propios deU y forman una base deRn.

Sea λ un valor propio de U y X un vector propio asociado a λ, observemos que U V X =

V U X =λV X lo que significa queV X ∈Eλ(U). Así tenemos que los espacios Eλ(U) son inva-riantes por la acción deV. ComoRn=L

Eλ(U)entonces la matrizH que representa aV en la base de Rn formada por los vectores propios de U esta formada por los bloques H1, H2, ..., Hn donde Hi es la matriz que representa la restricción de V enEi(λ).

Como la base B de Rn formada por las columnas de Q es ortogonal entonces la matriz C de cambio de base de B a la base canónica de Rn está formada por las columnas de B es decir C =Q. ComoH =CTV C entoncesH es simétrica y por tanto diagonalizable sobreB que es lo que queríamos probar.

3.3. Teoría de grafos

Los grafos son una herramienta muy útil para modelar diferentes tipos de problemas y par-ticularmente resultan ser un formato natural para los problemas combinatorios.

Recordemos que un grafo es un par ordenadoG = (V, E) donde V es un conjunto finito y E ⊂ V ×V − {(i, i)|i = 1, ..., n}, en el presente trabajo siempre tendremos que V = {1, ..., n} Cuando queremos hacer énfasis en queV es el conjunto de vertices del grafoGescribimos V(G)

en lugar de V pero si no hay lugar a confusión simplemente representamos el conjunto de verti-ces por V y la misma situación la tenemos para el conjunto E. El orden de G el el número de elementos de V en tanto que el tamaño de G el el número de elementos deE. Sie= (u, v)∈E decimos que u y v son incidentes con e o que e es incidente con u y v en tanto que u y v soa adyacentes

(12)

Decimos que el grafo G es vacío si V es el conjunto vacío, discreto si V es no vacío y E es vacío, es completo si E=V ×V − {i, i)|i= 1, ..., n}en este caso se dice queGes unn−clique. Dado un grafoGdecimos que el grafoHes subgrafo deGy escribimosH≤GseV(H)⊂V(G)y E(H)⊂E(G). SiF ⊂V(G)entonces el grafo inducido porF es(V(F), E(F))dondeV(F) =F yE(F) ={(u, v) ∈E|u, v ∈F}. Decimos que S ⊂V, S no vacío es un conjunto independiente si el grafo inducido porS es discreto. Decimos queS cubre aGsi todo vértice deGes adyacente con algún vértice enS.

El complemento de un grafoGesG= (V, E)donde E es el complemento deE. Una función f :V(G)→ {1, ..., k} tal que f(i)6=f(j) si i6=j se llama un k-coloreamiento de G

4.

Optimización Semidefinida

Un problema de optimización semidefinida consiste en maximizar o minimizar una función lineal en las variables de una matriz simétrica sujeta a un conjunto finito de restricciones lineales de igualdad y a la restricción de que la matriz de variables sea semidefinida positiva. La forma usual de representar un problema de optimización semidefinida es:

min X∈SRn×n

C•X (P)

s.a Ai•X=bi, i= 1, . . . , m X0

Donde Ai ∈SRn×n, b∈Rm,C ∈SRn×n son los parametros del problema y X ∈SRn×n es la variable. Cuando escribimos un problema de optimización semidefinida de esta manera decimos que está en la forma primal estándar. Su forma dual estándar es:

max

(y,S)∈Rm×SRn×n

bTy (D)

s.a m

X

i=1

yiAi+S =C

S0

Inicialmente no hay garantía de que los problemas (P) y (D) alcancen su valor óptimo en un punto de su dominio de hecho no podemos asegurar que estos problemas sean acotados, sin embargo en el presente trabajo en cada una de las situaciones en que plantearemos problemas de optimización semidefinida tendremos condiciones suficientes para que hayan soluciones en los correspondientes dominios.

Proposicion 4.1. Los problemas (P) y (D) son duales lagrangianos uno del otro. Demostración. El dual lagrangiano de(P)es

m´ax

y∈Rmh(y)

Donde

h(y) = m´ın

X∈SRn×nC•X−

m

X

i=1

(13)

de donde

h(y) =

m

X

i=1

yibi+ m´ın X∈SRn×n

(C− m

X

i=1

yiAi)•X sujeto a: X0

=

m

X

i=1

yibi+ m´ın

X∈SRn×n

S•X sujeto a: X0

En este punto podemos considerar la familia de matrices X = I claramente I 0 para todo >0 y tenemos que

m´ın

X∈SRn×n

S•X = l´ım

→0S•X= 0

Ahora, si paray ∈Rm,

C− m

X

i=1

yiAi

no es semidefinida positiva, entonces por el hecho 2.14 existe U ∈SRn×n+

tal que

C− m

X

i=1

yiAi•U <0

de donde

min

X∈SRn×n(C−

m

X

i=1

yiAi)•X

X0

=−∞entoncesh(y) =−∞de donde podemos afirmar quehno toma su valor máximo eny, en conclusión tenemos que htoma su valor máximo en

F ={y∈Rm|(C m

X

i=1

yiAi)0}

además paray∈F tenemos que para X =diag() donde >0.

(C− m

X

i=1

yiAi)•X=T r(C− m

X

i=1

yiAi)→0

cuando→0 de esta manera tenemos que h(y) =bTy y por tanto tenemos que

h(y) = m´ax

(y,S)∈Rm×SRn×nb

Ty sujeto a: m

X

i=1

yiAi+S=C, S0 (D)

Ahora veamos que (P) es el dual de(D). Tenemos que el dual lagrangiano de(P)

m´ın

(14)

Donde

h(X) = m´ax

y∈Rm,S0b

Ty m

X

i=1

yi(Ai+S−C)•X=C•X− m´ın

X∈SRn×nm´ınh(X)

Donde

h(X) = m´ın

y∈Rm(

m

X

i=1

yiAi•X−bTy)−m´ın

S0S•X=C•X

=

m

X

i=1

yiAi•X−bTy−m´ın

S0S•X=C•X

= m´ın

y∈Rm

m

X

i=1

(Ai•X−bi)yi−m´ın

S0S•X

Si para algúni= 1, ..., m,Ai•X−bi 6= 0, cómoy∈Rm entonces h(X) =∞ entoncesh(X) alcanza su valor mínimo sobre los X ∈SRn×n tal que Ai•X−bi = 0 para i= 1, ..., m por el hecho 2.13h(X) =∞ a menos queX 0 por tanto concluimos que

min

X∈SRn×nh(X) =

min

X∈SRn×nC•X (P)

Ai•X=bi,ß = 1, . . . , m X0

Theorem 4.2. Dualidad Débil Si X es una solución factible de (P) y (y, S) es una solución factible de D entonces C•X−bTy=X•S ≥0

Demostración. Tenemos que:

C•X−bTy= (

m

X

i=1

yiAi+S)•X−bTy

=

m

X

i=1

(Ai•X)yi+S•X−bTy=

m

X

i=1

biyi+S•X−bTy=bTy+S•X−bTy =S•X .

Ahora tengamos en cuenta que

S•X=T r(SX) =T r(SX12X 1

2) =T r(X 1 2SX

1 2)

(15)

En este punto aprovechamos que X 0 y por tanto tiene una raíz cuadrada, así como las propiedades de la traza. Por otro lado la matriz X12SX

1

2 0 ya que para todo vector u ∈Rn

tenemos que UTX12SX 1

2U = (U X 1 2)TSX

1

2U ≥0 ya queS 0.

ComoSX 0 entonces todos sus valores propios son positivos y cómo S•X =T r(SX) es la suma de los valores propios de SX podemos concluir que S•X≥0

Queremos saber cómo se relacionan los problemas(P)y(D)ya hemos visto que cada uno de ellos es el dual lagrangiano del otro y ahora el teorema de dualidad débil nos dice que las soluciones factibles de D están acotadas superiormente por las soluciones factibles de(P). Es importante ver como estan relacionados estos dos problemas esta realción está expresadajgwudwdt67 en el teorema de dualidad fuerte pero antes de enunciar este teorema veamos algunas definiciones: Definition 4.3. Considere los siguientes conjuntos:

(i) F(P) ={X ∈SRn×n|Ai•X =bi, i= 1, ..., m, X 0}

(ii) F0(P) ={X ∈F(P)|X 0}

(iii) F(D) ={(y, S)∈Rm×SRn×n|Pmi=1yiAi+S=C, S0}

(iii) F0(D) ={(y, S)F(D)|S 0}

Theorem 4.4. Dualidad Fuerte SiF(P)yF0(D)son no vacíos. entonces (P)tiene un conjunto compacto no vacío de soluciones y los valores óptimos de (P) y (D) coinciden.

Demostración. Ver [3]

5.

Complejidad computacional.

Un algoritmo es un conjunto de reglas para realizar una Tarea. A principios del siglo XX hubo varios intentos para formalizar la noción de algoritmo. La alternativa principal y generalmente aceptada es el concepto de máquina de Turing (propuesta en 1926 por el matemático inglés Alan Turing) que describimos a continuación.

Definición 5.1. Una máquina de Turing determinista consiste de una cinta infinita dividida en casillas y una cabeza que hace operaciones de lectura y escritura. Fijamos un alfabeto Γ finito de los símbolos que la máquina sabe leer y escribir y también un conjunto finito F de estados internos de la máquina. En cada unidad de tiempo la máquina lee el símbolos∈Γ escrito en la cinta y hace las siguientes operaciones:

1. Escribe un símbolo distinto en el cuadrado que está leyendo. 2. Cambia su estado interno.

3. Mueve la cabeza lectora una casilla a la izquierda o a la derecha en la cinta o se queda estacionaria.

(16)

Las reglas de transición que describen completamente el funcionamiento de la máquina son una función δ que, para cada estadof y cada símbolos∈Γ nos dice

δ(f, s) = (f0, s0, k)

Lo cual quiere decir: Si la máquina lee el símbolo sen el estado interno f entonces escribirá el símbolo s0, pasará al estado interno f0 y moverá la cabeza lectora a la izquierda, a la derecha o se queda quieta según k∈ {I, D, Q}. Una máquina de Turing se dice no determinista si δ no es una función, es decir si para input (f, s) permitimos que la máquina pase a uno de un conjunto

de varios estados posibles

δ(f, s) ={(f10, s01, k1), . . . ,(fm0 , s 0

m, km)}

Así, con un mismo input una máquina de Turing no determinista tiene varias evoluciones futuras.

Asumimos además que todas nuestras máquinas de Turing, deterministas o no, tienen dos estados especiales A, R ∈ F que se llaman estado de aceptación y de rechazo en los que la máquina de Turing se detiene.

Definición 5.2. Dado un alfabeto finito Γ el conjunto de todas las cadenas sobre Γ se denota por Γ∗

Observación 5.1. Lo importante de una máquina de Turing es que para especificarla com-pletamente necesitamos sólo una cantidad finita de información: el alfabeto Γ, el conjunto de estados internosF y la funciónδ (o correspondenciaδ para el caso no determinista) cuyo domi-nio es el conjunto finito Γ×F luego también puede especificarse usando una cantidad finita de información.

Definición 5.3. El input de una máquina de TuringMes lo que está escrito en la cinta cuando la máquina empieza su ejecución. Decimos que una máquina de Turing (determinista o no) acepta el input w si existe alguna ejecución de M con input w que lleva a la máquina al estado de aceptaciónA. De manera semejante decimos queM rechaza el inputwsi existe alguna ejecución de wcon input wque lleva a la máquina al estado de rechazo R.

Definición 5.4. El Lenguaje aceptado por una máquina de Turing M esta formado por el conjunto de cadenas de Γ∗ cuyo computo termina en el estado A de M. El lenguaje aceptado por una maquina de TuringM lo denotaremos por L(M). Tenemos que:

L(M) ={w∈Γ∗|el computo de M sobrew termina en el estadoA deM}

Definición 5.5. Dada una máquina de Turing M y w ∈ Γ∗, T(w) representa el numero de aplicaciones de la función δ para que la cadena w sea aceptada o rechazada.

Definición 5.6. Una máquina de Turing M es de tiempo polinomial si existe un polinomio p :N −→ N tal que T(w) ≤p(|w|), donde |w| representa el número de simbolos deΓ que hay en la cadenaw.

Definición 5.7. Un problema de decisión es una función de un conjunto I de instancias a un conjunto de dos valores V ={0,1}.

Ejemplos:

1. Sea I es el conjunto de grafos finitos yf :I →V es la función que asigna 1al grafog sig es3-coloreable y 0de lo contrario.

(17)

2. Sea I el conjunto de fórmulas del calculo proposicional en letras {pi :i∈N} yh :I →V es la función que asigna1 a la fórmulaφssi existe una valuación (asignación de valores de verdad a las letras proposicionales) que hace que φsea verdadera.

Definición 5.8. Un problema de decisión h:I →V está enP si existe una máquina de Turing determinista que acepta las instancias positivas de I (aquellas en las queh vale1) y rechaza las instancias negativas de I (en as que h vale 0) en un numero de pasos polinomial en la longitud del input (el número de casillas no vacías). Un problema de decisión está en NP si existe una máquina de Turing no determinista que acepta las instancias positivas de I (aquellas en las queh vale1) y rechaza las instancias negativas deI (en as queh vale0) en un numero de pasos polinomial en la longitud (el número de casillas no vacías) del input.

Observación 5.2. Es posible verificar que un problema de decisión está en NP si y solo si para toda instancia positiva y candidato a solución es posible verificar en tiempo polinomial determinista que el candidato efectivamente satisface la propiedad.

Ejemplo:2-sat está en NP porque dada una fórmula y una asignación de valores de verdad para las letras proposicionales es posible verificar, en tiempo polinomial determinista siesaasignación satisface o no la fórmula.

Como toda máquina de Turing determinista es un tipo especial de máquina de Turing no determinista es claro queP ⊆N P. La pregunta de siP =N P es uno de los problemas abiertos más interesantes de las matemáticas.

6.

Algunos problemas de la clase NP

Dado un problema de decisiónhpodemos usar la observación 5.2 para determinar sih∈N P. A continuación presentamos una lista de problemas de la clase NP.

2-sat: Una instancia de este problema consiste en un conjunto de clausulas {C1, ..., Cm} y un

conjunto de variables booleanas{x1, ..., xn}donde Ck =xi∨xj para1≤k≤my1≤i≤j≤n hay que determinar si existe una asignación de valores de verdad de las variables x1, ..., xn que hagan verdadera cada clausula C1, ..., Cm.

n-sat: Una instancia de este problema consiste en un conjunto de clausulas {C1, ..., Cm} y un conjunto de variables booleanas {x1, ..., xr} donde cada Ck es una disyunción de máximo n de las variablesx1, ..., xr.

Se tarta de determinar si existe una asignación de valores de verdad de las variables x1, ..., xr que hagan verdadera cada clausula C1, ..., Cm.

Clique: Una instancia de este problema consiste en un grafoGy un entero positivo k. Se trata de encontrar un conjunto dek vértices mutuamente adyacentes.

Set packing: Una instancia de set packing consisite en una familia Sj de conjuntos y un entero positivok .

Se trata de determinar si Sj contiene kconjuntos mutuamente disyuntos.

Vertex cover: Una instancia de problema consiste en un grafoG= (V, A) y un entero positivor. Se trata de encontrar N ⊂V tal que|N| ≤r y cada arco de G es adyacente con un vértice en N.

(18)

Set Covering: Una instancia de Set covering consiste en una familia de conjuntos finitos {Sj} y un entero positivo r.

Se trata de determinar si existe una familia {Th} ⊂ {Sj}tal que |{Th}| ≤r y∪Th⊂ ∪Sj. Undirected Hamilton Circuit: Una instancia de este problema consiste en un grafo G.

Se tarta de determinar siGcontiene un ciclo que contiene cada vértice del grafo Gexactamente una vez.

Chromatic Number: Una instancia de este problema consiste en un grafoGy un entero positivo k.

Se trata de determinar si G esk-coloreable es decir si existe una función φ:V → Zk tal que si u yv son adyacentes entoncesφ(u)6=φ(v)

Exact Cover: Una instancia de Exact cover consiste en una familia de subconjuntos {Sj} de un conjunto {x1, ..., xt}.

Se trata de hallar una subfamilia disyunta dos a dos {Th} ⊂ {Sj}tal que ∪Th =∪Sj Knapsack: Una instancia de Knapsack consiste en un vector(a1, a2, ..., ar, b)∈Zr+1.

Se trata de determinar si la ecuación Pr

i=1xi=b tiene una solución en{0,1}r Partition: Una instancia de Partition consiste en un vector (c1, c2, ..., cs)∈Zs. Se trata de determinar si existe I ⊂ {1,2, ..., s} tal que P

h∈Ich=

P

h /∈Ich

Number-Cut: una instancia de Number- cut consiste en un grafo G una función w : E(G) → Q+∪ {0} y un entero positivo k.

Se tarta de determinar si existe un subconjunto S ⊂ V tal que P

w(u, v) ≥k donde u ∈ S y v /∈S

Observación 6.1. Para probar que un problema de desición esta en NP se puede construir una maquina de Turing no determinista de tiempo polinomial que decida cada instancia del problema o podemos usar la observación 5.2 que es equivalente. En el siguiente teorema usamos esta segunda opción para probar que 3-sat esta en NP.

Proposicion 6.1. 3-Sat∈N P

Demostración. Sea (C, X) una instancia de 3-sat con X = {x1, x2, ..., xn} y C = {c1, ..., cm}

donde cada ci es una disyunción de máximo tres literales y sea t una asignación de valores de verdad de las variablesx1, x2, ..., xn. Tenemos queci =yi1∨yi2∨yi3 donde yik ∈ {xik, xik}para

k = 1,2,3, como |t| = n podemos verificar en un máximo de n pasos si el literal yik es falso o verdadero bajo la asignación t, por tanto podemos determinar en un máximo de 3n pasos el valor de verdad de la clausula ci para i= 1, ..., my así saber en un máximo de 3nm pasos si la instancia (C, X) de 3-sat se satisface bajo la asignaciónt.

De esta manera probamos que 3-Sat ∈N P. De forma analoga podemos probar que los demas problemas de la lista son de la clase NP.

Observación 6.2. En su famoso artículo Reducibility Among Combinatorial Problems, Richard Karp muestra que aún que la clase NP abarca un gran número de problemas combinatorios de diversosos dominios como son por ejemplo la teoría de conjuntos, la teoria de números y la teoría de grafos, entre muchos de estos problemas se aprecia una especie de semejanza en el sentido de que un problema se puede transformar en otro de manera que el primer problema es solo una versíon del segundo. Entre otras cosas esta noción de reducción o transformación es muy útil para encontrar tratamientos generales a los problemas tipicos de la clase NP.

(19)

7.

Reducciones entre problemas combinatorios

7.1. Reducciones

Definición 7.1. Reducción Polinomial

Sea Σun alfabeto finito y L ⊂Σ∗ y M ⊂Σ∗ decimos que L es reducible aM y escribimos L ∝M si existe una función f : Σ∗ → Σ∗ computable en tiempo polinomial por una máquina de Turing determinista tal que para cada x∈Σ∗ tenemos que x∈L si y solo sif(x)∈M. Si L ∝ M y M ∝ L entonces decimos que los lenguajes L y M son equivalentes y escribimos L∼M.

Observación 7.1. El concepto de reducibilidad polinomial es una herramienta muy útil para determinar la clase de complejidad de un problema dado, en efecto, supongamos que queremos conocer la clase de complejidad de un problema A y de alguna manera logramos probar que A ∝ B entonces el problema A pertenece a la clase de complejidad del problema B luego si conocemos la clase de complejidad deB también conocemos la clase de A.

Ya mencionamos que aun no se sabe si P = N P lo que significa que no se sabe cuantas clases de complejidad existen y por tanto resulta muy útil para la investigación el criterio de reducibilidad que permite encontar problemas de una misma clase de complejidad.

Un hecho que resulta inmediato útil es que siL∝M yM ∝N entonces L∝N Definición 7.2. Problemas NP-Completos

Decimos que L ∈ N P es NP-completo si M ∝ L para cada M ∈ N P. A primera vista resultan extraños los problemas NP-Completos, sin embargo Stephen Cook demostro en 1971 la existencia de problemas NP-Completos lo que constituye un avance importante para las ciencias de la computación.

La siguiente sección se basa en los trabajos de Stephen Artur Cook y Richard Manning Karp, el primero demostro la existencia de problemas NP-completos en un artículo titulado The complexity of theorem proving procedures una demostaración del este teorema conocido como teorema de Cook la encontramos en [3], donde especificamente se demuestra que 3-sat es NP-completo.

Un aspecto llamativo del teorema de Cook es que abre la puerta para encontrar por medio de reducciones polinomicas otros problemas NP-Completos esto es precisamente lo que hace Ri-chard Karp en su artículo Reducibility Among Combinatirial Problems donde presenta una lista de problemas NP-completos junto con las correspondientes formulas de reducción. Las reduc-ciones transforman a 3-Sat (Que es NP-Completo por el teorema de Cook) en otros problemas combinatorios que en consecuencia resultan NP-Completos, algunas de estas formulas son na-turales pero otras son realmente ingeniosas. Nuestro trabajo en esta sección fue demostar las reducciones propuestas por Karp.

Las reducciones presentadas por Karp en su artículo también pueden ser útiles en el sentido de permitirnos usar un algoritmo de aproximación de un problema A para aproximar otro problema B cuando el problema B se pueda reducir al problema A. Esto es lo que intentamos en la sección 4 cuando intentamos usar un algoritmo diseñado para Max cut por Goemas y Williamson para resolver otros problemas combinatorios.

(20)

Sea (C, X) una instancia de 3-Sat donde C = {c1, . . . , cm} es el conjunto de clausulas

y X = {x1, x2, . . . , xk} es el conjunto de variables. Sin perdida de generalidad suponemos k ≥ 4. A partir de (C, X) construimos la instancia (G, k+ 1) de Chromatic Number don-de V = {x1, . . . , xk} ∪ {x¯1, . . . ,xk¯ } ∪ {v1, . . . , vk} ∪ {c1, . . . , cm} y A = {(xi,xi¯ )| 1 ≤ i ≤

k} ∪ {(vi, vj)| 1 ≤ i, j ≤ k, i 6= j} ∪ {(xi, vj)| 1 ≤ i, j ≤ k, i 6= j} ∪ {(vi,x¯j)| 1 ≤ i, j ≤ k, i6=j} ∪ {(xi, cj)|xi∈/ cj} ∪ {(¯xi, cj)|x¯i ∈cj}.

Veamos que(C, X) se satisface si y solo si(G, k+ 1) se satisface.

Si (C, X) se satisface entonces existe una asignación t de X que hace que cada clausula en C sea verdadera. Definamos f : V → Zk+1 de la siguiente manera: para cada 1 ≤ i ≤ k si

ui ∈ {x1, . . . , xk} ∪ {x¯1, . . . ,x¯k} y ui es verdadera bajo la asiganción t entonces f(ui) = i, en caso que ui sea falsa entoncesf(ui) =k+ 1yf(vi) =iparai= 1,2, . . . , k.

Por otro lado, para cada ci ∈ C elegimos uj ∈ Ci tal que uj es verdadera bajo t y hacemos f(ci) = f(uj). Es claro que f es una función, probemos que es un coloreamiento de G. Sean u, v∈V tales queu yv son adyacentes. Consideremos cada una de las siguientes posibilidades: (i) u = xi y v = ¯xi. Como xi y xi¯ tienen valores de verdad contrarios entonces f(u) = i y f(v) =k+ 1en caso de seru verdadera yv falsa, o bien,f(u) =k+ 1yf(v) =ien caso contrario, ya que 1≤i≤k en cualquiera de los dos casos tenemosf(u)6=f(v).

(ii) u=vi yv=vj con1≤i, j≤k,i=6 j, por la definición def tenemosf(u) =i6=j =f(v). (iii) u = vi y v = xj con i 6= j. En este caso hay dos posibilidades: si xj resulta verdadera, entonces f(xj) = j 6= i = f(vi), si xj es falsa, f(xj) = k+ 1 6= i = f(vi) de donde f(u)6=f(v).

(iv) u=vi yv= ¯xj. Con un razonamiento similar al del caso anterior concluimos quef(u)6=

f(v)

(v) u=xi yv=cj. Ya que cj es verdadera existe uj ∈cj tal que uj es verdadera y por tanto f(cj) =f(uj) =j ≤k. Sixi es falsa entoncesf(xi) =k+ 16=j=f(cj). Sixies verdadera yxi ∈cj entoncesuyvno son adyacentes y no hay nada que probar. La otra posibilidad es quexisea verdadera yxi ∈/cj, entoncesxi6=uj y asíf(v) =f(cj) =f(uj) =j6=i=f(u). (vi) u = ¯xi y v = cj. Por un razonamiento similar al del caso anterior concluimos que f(u) 6= f(v). Asi concluimos que f : V → Zk+1 es un (k+ 1)-coloreamiento de G, por

tanto(G, k+ 1) se satisface.

Ahora supongamos que (G, k+ 1) se satisface entonces existe una función f :V → Zk+1

tal que siu yv son adyacentes entoncesf(u)6=f(v). A partir de esto mostremos que cada clausula cj ∈C contiene por lo menos una variablexi de X.

Razonemos por el absurdo y supongamos que existecj = ¯x1j∨x¯2j∨x¯3j, dondex1j, x2j, x3j ∈ X.

Por la construcción del grafoG cj es adyacente a toda variablexi∈X, por tantof(cj)6=i parai= 1, . . . , k. Comocj es adyacente ax¯1j yf(¯x1j) =k+ 1 entoncesf(cj)6=k+ 1y así f(cj) ∈/ Zk+1 lo cual contradice el hecho de que f es función, luego cada clausula cj ∈ C contiene alguna variablexi ∈Xpor tanto asignando valor verdadero a cada variable de X entoces(C, X)se satisface.

(21)

Ahora veamos que esta reducción se realiza en tiempo polinomial. Para construir V rea-lizamor 3k+m pasos, que es un polinomio, y A lo construimos en menos de 4k2+ 2km pasos, que es un polinomio, luego la construcción se realizó en tiempo polinomial.

Proposicion 7.2. Chromatic Number ∝ Exact Cover.

Dada una instancia (G, k) de Chromatic Number donde G = (V, A) construimos una instancia de exact cover donde

U =V ∪A∪ {(u, e, f)|u∈ey1≤f ≤k} Para cada (u, f)∈V × {1,2, . . . , k} definimos

S(u,f)={u} ∪ {(u, e, f)|u∈e} .

Para cada tripleta (e, f1, f2)∈A× {1,2, . . . , k} × {1,2, . . . , k}con f1 6=f2 definimos

S(e,f1,f2)={e} ∪ {(u, e, f)|f 6=f1} ∪ {(v, e, g)|g6=f2}

donde e = (u, v). Es fácil probar que el conjunto U junto con la familia de conjuntos {S(u,f)} ∪ {S(e,f1,f2)}.

Constituyen una instancia de exact cover. Por ejemplo es claro que para cada (u, f) ∈ V × {1, ..., k}y para cada(e, f1, f2)∈V × {1, ..., k} × {1, ..., k},S(u,f) ⊂ U yS(e,f1,f2)⊂ U

respectivamente. Es decir{S(u,f)} ∪ {S(e,f1,f2)} es una familia de subconjuntos deU. Por otro lado dado x∈ U entoncesx∈V o x∈A ox∈ {(u, e, f)|u∈e,1≤f ≤k}.

Six∈V entonces x∈S(x,f), si x∈A entoncesx∈S(x,f1,f2), si x= (u, e, f)entonces x∈S(u,f) así podemos concluir que la familia{S(u,f)} ∪ {S(e,f1,f2)} cubre a U.

Ahora veamos que la instancia(G, k)se satisface si y solo si la instancia(U,{S(u,f)}∪{S(e,f1,f2)})

se satisface.

Primero supongamos que(G, k)se satisface, entonces existe una funciónφ:V →Zk tal que siu yv son adyacentes entoncesφ(u) 6=φ(v). Para cada u∈V seaφu =φ(u). Definimos la familia de conjuntos

F ={S(u,φu)|u∈V} ∪ {S(e,φuv)|e= (u, v)} .

Es inmediato que F es una subfamilia de {S(u,f)} ∪ {S(e,f

1,f2)}. Veamos que F es disyunta dos

a dos. SeanA, B∈ F,A6=B. Analicemos cada caso posible:

(i) A=S(u,φu) yB =S(v,φv). Razonemos por el absurdo y supongamos que A∩B 6=∅

luego existe x∈A∩B y así x= (u, e, φu) yx= (v, e0, φv) lo cual implica queu=v lo que implicaA=B lo que es una contradicción, por tanto A∩B =∅.

(ii) SiA=S(u,φu)yB =S(v,φv,φw)razonemos por el absurdo y supongamos queA∩B6=∅

entonces existex∈A∩B comox∈Aentonces x=uo x= (u, e0, φu) y comox∈B entoncesx=eox= (v, e, φv)conf 6=fv o bien conf 6=fw. Six=uentoncesx /∈B lo cual es una contradiccón. Si x= (u, e0, φu)∈A yx= (v, e, f)∈B entoncesu=v ye0 =eyφu =f de donde (u, e, φu)∈B lo cual es una contradicción.

(22)

(iii) Si A = S(e,φu,φv) y B = S(e1,φu1,φv1) nuevamente supongamos A ∩B 6= ∅ y sea

x∈A∩B como x∈A entonces x=eox= (u, e, f)con f 6=φu o bienx= (v, e, f) con f 6= φv pero como también x ∈ B debemos tener x = e1 o x = (u1, e1, f) con

f 6=φu1 o x= (v1, e1, f) con f 6=φv1

Si suponemos quex=eentonces solo es posible quex=e1 de dondee=e1 entonces

(u, v) = (u1, v1) lo que implicaA=B lo cual es una contradicción.

Six= (u, e, f)∈A yx= (u1, e1, f)∈B entoncese=e1. De forma similar se llega a

una contradiccón con cada una de las restantes posibilidades. Por tanto tenemos que F es disyunta dos a dos.

Ahora veamos queF cubre a U. Seax∈ U entoncesx∈V ∪A∪ {(u, e, f)|u∈e,1≤ f ≤k}

Six∈V entoncesx∈S(x,φx) ∈ F. Six∈Aentoncesx= (u, v)luegox∈S(x,φuv) ∈ F. Si x= (u, e, f) con e= (u, v) y 1 ≤f ≤k. Aqui hay dos posiblidades si f = φu entonces x ∈S(u,φu) ∈ F pero si f 6=φu entonces x∈ S(e,φu,φv) ∈ F de esta manera (U,{S(u,f)}(e,f1,f2)) se satisface.

Esto significa que existe una subfamiliaF de{S(u,f)}(e,f1,f2))que cubre a U y es dis-yunta dos a dos. ComoV ⊂V entonces para cadau∈V existeE ∈ F tal queu∈E ya queu /∈S(e,f1,f2) para cadae∈A y cadaf1, f2 ∈ {1, ...k}entonces debemos tener

que E =S(u,f) para algún 1 ≤f ≤k. Como F es disyunta dos a dos realmente este

f es único y lo denotamos con fu. En resumen tenemos que para cada u ∈V existe un único 1≤fu ≤ktal que S(u,f) ∈ F

Por otro lado A ⊂ U entonces para cada e ∈ A existe por lo menos un F ∈ F tal que e ∈ F. Como e /∈ S(u,f), para cada u ∈ V y para todo 1 ≤ f ≤ q entonces F =S(e,f1,f2). Nuevamente comoF es una familia disyunta dos a dos realmente existe un único elemento de {S(e,f1,f2)}que contiene a ey lo denotamos conSe,f1e,f2e.

Real-mente podemos probar que F = {S(u,fu)|u ∈ V} ∪ {S(e,f1e,f2e)|e∈ A} y para ello es suficiente probar que F ={S(u,fu)|u∈V} ∪ {S(e,f1e,f2e)|e∈A} cubre a U.

Sea x ∈ U, si x ∈ V entonces x = S(x,fx). Si x ∈ A entonces x ∈ S(x,f1x,f2x), si

x = (u, e, f) donde u ∈ e y 1 ≤ f ≤ k entonces x ∈ S(u,f) luego {S(u,fu)|u ∈ V} ∪ {S(e,f1e,f2e)|e∈A} cubre a U y asi F ={S(u,fu)|u∈V} ∪ {S(e,f1e,f2e)|e∈A}.

Para mostrar que la instancia(G, k)se satisface definamosφ:V →Zkdondeφu =fu. Por la unicidad de fu φ es función y si u y v son adyacentes no es posible que φ(u) =φ(v) ya que entoncesfu =fv. Por unicidad el único elemento de F que puede contener elementos de S(e,φvv) es S(e,f1e,f2e) por tantoS(e,φuv) ⊂S(e,f1e,f2e)

Como estos conjuntos son finitos y ademas tienen el mismo número de elementos en-tonces S(e,φuv)=S(e,f

1e,f2e) y así φu =f1e,φv =f2ede donde f1e=f2e como esto es

una contradicción por reducción al absurdo (G, k) se satisface.

Veamos que esta reducción se realiza en tiempo polinomial. Para construirU se reali-zan|V|+|E|+f|V||E|pasos, para construir cadaS(u,f)se realizanf|V||E|pasos igual

(23)

que para construirS(e,f1,f2)y asi esta reducción se lleva a cabo en tiempo polinomial.

con f 6=fu entonces x6=x y si x= (v, e, f) entonces x6=x. Luego por reducción al absurdo podemos concluir que A∩B 6=∅, Así tenemos que F(u,v) es una familia de

conjuntos disyunta dos a dos.

Ahora veamos que U =∪F(u,v), sea x ∈ U, six = u, para cualquier u ∈V tenemos u ∈ S(u,fu) entonces x ∈ ∪F(u,v), si x =e entonces x ∈S(e,fu,fv) donde e= (u, v) y

por tantox∈ ∪F(u,v).

Six= (u, e, f)para algún1≤f ≤k, sif 6=fuentoncesx∈S(e,fu,fv)dondee= (u, v)

y así x∈ ∪F(u,v) sif =fu entonces x∈S(u,fu) y entoncesx∈ ∪F(u,v).

Ahora veamos que esta construcción se realiza en tiempo polinomial. Para construir U se realizan |V|+|E|+f|V||E| pasos, para construir S(u,fu) se realizan máximo

f|V||E|pasos, igual que para construir S(e,fu,fv) luego la reducción se lleva a cabo en

tiempo polinomial.

Proposicion 7.3. Exact cover ∝Knapsack.

Sea(F, S)una instancia de exact cover dondeF ={F1, ..., Fk}es una familia finita de conjuntos finitos y S =F1∪F2∪...∪Fk.

Recordemos que exact cover consiste en determinar si existe una subfamilia disyunta de F que cubra a S, a partir de(F, S) construyamos la siguiente instancia de knapsack:

(a1, ..., ak, b) donde ai =|Fi|yb=|S|parai= 1, ..., k.

Recordemos que Knapsack consiste en determinar si existe o no una sucesión(x1, ..., xk)⊂ {0,1}k tal que Pk

j=1ajxj =b.

Demostremos que (F, S)se satisface si y solo si (a1, ..., ak, b)se satisface.

Supongamos que (F, S) se satisface, entonces existe {Fi1, ..., Fir} ⊂ F tal que Fir ∩Fip = φ si

r 6=py S=Fi1 ∪Fi2 ∪...∪Fir.

Luego b=|S|=Pr

j=1|Fij|= Pr

i=1aij entonces si hacemos xt= 1 parat∈ {i1, ..., ir} yxt = 0

si t /∈ {i1, ..., ir} para cada1≤t≤k entoncesb=Pri=1aixi y así knapsack se satisface.

Ahora supongamos que la instancia (a1, ..., ak, b) se satisface, entonces existe {i1, ..., it} tal que

xi = 1 si i∈ {i1, ..., it} y xi = 0 si i /∈ {i1, ..., it}. Ahora tenemos que |S|= b =

Pk

i=1aixi =

Pt

j=1aijxij = Pt

j=1aij = Pt

j=1|Fij|.

De aqui tenemos que{Fij|j= 1, ..., t} es disjunto dos a dos y S=Fi1 ∪...∪Fit por tanto exact

cover se satisface.

Es fácil verificar que que esta reducción se realiza en tiempo polinomial. Proposicion 7.4. Knapsack ∝P artition.

Dada la instancia(a1, a2, ..., ar, b)de Knapsack construimos instancia(c1, c2, ..., cr, cr+1, cr+2)de

partition donde ci =ai parai= 1, ..., r,cr+1=b+ 1ycr+2 = 1−b+Pri=1ci.

Primero Supongamos que la instancia (a1, a2, ..., ar, b) de Knapsack se satisface entonces existe

x = (x1, ..., xr) ∈ {0,1}r tal que Pri=1aixi = b. Sin perdida de generalidad asumamos que las variables x1, ..., xk toman valor 1 para0 ≤k≤r y que las variables xk+1, ..., xr toman valor 0, luego Pk

i=1ai=by entonces

Pr

i=1ai−b=

Pr

i=k+1ai.

Para ver como(c1, c2, ..., cr, cr+1, cr+2) se satisface tomemosS ={a1, ..., ak,Pri=1ai−b+ 1} en-toncesS={ak+1, ..., ar, b+1}y así tenemos quePS=Pki=1ai−b+1+Pri=1ai = 1+Pri=1aiy

P

S =Pr

(24)

lo que significa que(c1, c2, ..., cr, cr+1, cr+2) se satisface.

Ahora supongamos que(c1, c2, ..., cr, cr+1, cr+2)se satisface es decir existeS⊂ {c1, c2, ..., cr, cr+1, cr+2}

tal que P

S=P

S.

Observemos que no es posible quecr+1, cr+2 ∈Sya que entonces tendríamosPS ≥cr+1+cr+2 =

b+1+Pr

i=1ai−b+1 = 1+Pri=1ai >PS. Por tanto podemos asumir sin perdida de generalidad que cr+2 ∈S y cr+1 ∈S de esta maneraS ={ak, ..., akt, cr+2}. Donde ak1, ..., akt ∈{a1, ..., ar},

cr+2 = 1−b+Pri=1ai y S = T ∪ {b+ 1} donde T = {ak1, ..., akt}

c. Como P

S = P

S en-tonces Pt

i=1akj + Pr

i=1ai −b+ 1 = 1 +b+PT entonces Pti=1akj + Pr

i=1ai −PT = 2b luego 2Pt

i=1akj = 2b de donde Pt

i=1akj =b entonces elegimos x = (x1, ..., xr) donde xkj = 1

paraj = 1, ..., t yxi = 0 para las demás variables entonces x satisface la instancia(a1, ..., ar, b) de Knapsack. Observemos que para construir (c1, c2, ..., cr, cr+1, cr+2) a partir de (a1, ..., ar, b) realizamos 3r+ 3pasos que es tiempo polinomial.

Proposicion 7.5. Partition ∝Number Cut.

Sea (c1, . . . , cs) una instancia de Partition. A partir de esta instancia definimos la instancia

(G, w, W) de Number Cut dondeV ={1,2, . . . , s},A={(i, j)|i, j∈V, i6=j},w(i, j) =cicj y W = 14(Ps

i=1ci)2. Es claro que esta instancia se realiza en tiempo polinomial.

Supongamos que (c1, c2, . . . , cs) se satisface, entonces existe T ⊆ {c1, c2, . . . , cs} tal que PT =

P ¯

T. TomemosS ⊆V tal queS ={i∈V|ci ∈T} entonces S¯={i∈V|ci ∈T¯}. Observemos que w(S,S¯) = P

i∈S, j∈S¯w(i, j) =

P

i∈S, j∈S¯cicj =

P

i∈Sci

P

j∈S¯cj = (

P

T)(P ¯

T) = (P

T)2

ya queP

T =P ¯

T.

Por otro lado Ps

i=1ci =

P

T +P ¯

T = 2P

T de donde P

T = 12Ps

i=1ci. Luego w(S,S¯) =

(P

T)2= 1 4(

Ps

i=1ci)2=W. Luego (G, w, W) se satisface.

Ahora supongamos que la instancia (G, w, W) de Max Cut se satisface con W = 14(Ps

i=1ci)2

donde V ={1,2, . . . , s} yA={(i, j)|i, j∈S, i6=j}.

Entonces existe S ⊆V tal quew(S,S¯) ≥ 1 4(

Ps

i=1ci)2. Como w(S,S¯) = (Pi∈Sci)(Pi∈S¯ci) en-tonces (P

i∈Sci)(

P

i∈S¯ci)≥ 14(Pis=1ci)2, entonces4(Pi∈Sci)(

P

i∈S¯ci)≥(Pi∈Sci+

P

i∈S¯ci)2.

SiA=P

i∈SciyB =

P

i∈S¯cientonces4AB≥(A+B)2 =A2+2AB+B2entonces(A−B)2 ≤0 de donde A=B, es decir,P

i∈Sci =Pi∈S¯ci, entonces (c1, . . . , cs)se satisface.

Como ya mencionamos Stephen Cook probo en 1971 que el problema de decisión 3-sat es NP-Completo. Presentamos a continuación este teorema sin demostración.

Theorem 7.6. 3-sat es NP-completo.

Demostración. Ver [2]

De las proposiciones 7.1, 7.2, 7.3, 7.4, 7.5 de la definición 7.1 de la observación 7.1 y del teorema 7.6 tenemos el siguiente teorema:

Theorem 7.7. Los problemas de decisión Chromatic Number, Exact Cover, Knapsack, Partition y Number-Cut son NP-Completos.

(25)

8.

Algunos Problemas De Optimización Discreta

Un problema de optimización discreta consiste en hallar el vaor máximo o mínimo de una función f sobre un dominio finito. Por ejemplo el problema de hallar el menor enteroktal que un grafoG dado seak-coloreable es un problema de optimización discreta. Para cada uno de los problemas NP de la sección anterior damos a continuación su respectiva versión de optimización.

1. Max-2sat: Dadas las clausulasC ={C1, ..., Cm} sobre de variables booleanas{x1, ..., xn} donde

Ck=xi∨xj para1≤k≤m y1≤i≤j≤ny una función de pesos w:C→Q+.

Se trata de hallar la asignación de valores de verdad de las variables {x1, ..., xn} que maximiza

la suma de los pesos de las clausulas verdaderas

2. Max-nsat: Es el mismo problema que Max-2sat salvo que cada clausula puede contener hasta n literales

3. Max-Clique:Dado un grafoGse trata de encontrar el mayor entero positivoktal queGcontiene un k-Clique

4. Max-set packing: Dada una familia Sj se tarta de hallar el mayor entero positivo k tal que Sj tiene kconjuntos mutuamente disyuntos

5. min-Vertex cover: Dado un grafoG= (V, A) se tarta de hallar el menor entero positivor tal que existeN ⊂V con |N|=r y cada arco deGes adyacente con un vertice enN

6. min-set covering: Dada una familia de conjuntos finitos {Sj} se trata de hallar el menor entero positivor tal que existe una familia{Th} ⊂ {Sj} tal que|{Th}|=r y ∪Th ⊂ ∪Sj

7. min-undirected Hamilton Circuit: dado un grafoGse tarta de hallar el ciclo de longitud mínima que contiene cada vértice del Gexactamente una vez

8. min-chromatic number: Dado un grafoGse trata de hallar el menor entero positivoktal que G seak-coloreable

9. min-exact cover: Dada una familia de subconjuntos {Sj}de un conjunto {x1, ..., xt} se trata de

hallar una subfamilia disyunta dos a dos con menor orden {Th} ⊂ {Sj} tal que ∪Th =∪Sj 10. Max-knapsack: Dado un vector (a1, a2, ..., ar)∈Zn se trata de hallar los valores de las variables

xi en {0,1}que maximizan la expresiónP

xi

11. min-partition: Dado un vector (c1, c2, ..., cs) ∈ Zs se trata de determinar el I ⊂ {1,2, ..., s} tal

queP

h∈Ich−Ph /∈Ich sea mínima

12. Max-cut: G = (V, A) y una función de pesos w : A → Q+ se trata de hallar un subconjunto

S ⊂V tal queP

{u,v}∈A,u∈S,v /∈Sw(u, v) sea máximo.

Observación 8.1. Consideremos cualquiera de los problemas de la lista anterior por ejemplo Max-cut, por un momento supongamos que tenemos un algoritmo que resuelve Max-cut en tiempo polinomial entonces dada cualquier instancia (G, w, k) del problema de decisión Number-cut podemos aplicar nuestro algoritmo para hallar el corte máximo de(G, w)y inmediatamente saber si la instancia (G, w, k) se satisface o no. Así tendríamos un algoritmo que decide el problema NP-Completo Number-cut en tiempo polinomial y en consecuencia llegaríamos a que P =N P. Este razonamiento se aplica cualquiera de los problemas de optimización de la lista.

(26)

Definición 8.1. Un problema Q sea de decisión o no se es NP-Hard, si la existencia de un algoritmo de tiempo polinomial para su solución implica queP =N P.

Haciendo un razonamiento analogo al de la observación 8.1 tenemos el siguiente teorema: Theorem 8.1. Todos los problemas de optimización en la lista presentada en esta sección son

N P-Hard.

En la siguiente sección presentamos el α-Algoritmo de aproximación aleatoria para Max -cut desarrollado por Goemans y Williamson (ver [7]) este algoritmo logra aproximar Max-cut por lo menos en un 87,8 % de la solución óptima del problema en tiempo polinomial. El principal proposito del presente trabajo es usar las reducciones de la sección 7 para hallar relaciones algebraicas (preferiblemente cuadráticas) entre la función objetivo de un problema de la lista distinto de Max-cut y la función objetivo de Max-cut a fin de usar el algoritmo G-W para resolver el nuevo problema.

9.

Un Algoritmo De Aproximacion Aleatorio Para Max Cut Y

Max 2-Sat

En el artículo [7] Michel Goemans y David Williamson construyeron un algoritmo de aproxima-ción aleatorio para el problema del corte máximo en un grafo con pesos dado. Este algoritmo corre en tiempo polinomial y obtiene un resultado que es ≥87,8 % del valor del corte máximo. Esta basado en ideas de optimización semidefinida que discutiremos a continuación.

Recordemos que un grafo con capacidades es una tripletaG= (V, E, w), donde V es el conjunto de vertices del grafo que en este trabajo sera finito, E es el conjunto de aristas o lados de G. Asumimos que Ges no dirigido y no tiene aristas multiples ni loops por tantow es una función que a cada elemento de V ×V le asigna un racional no negativo de manera que w(i, i) = 0

w(i, j) = 0 si(i, j)∈/ E yw(i, j) =w(j, i)para todo i, j∈V.

Por sencillez escribiremos wij en lugar de w(i, j). Para S ⊂ V, S denota el complemento de S llamamos al par (S, S) un corte de G. Denotamos concut(G) el conjunto de todos los cortes de G, para(S, S)∈cut(G), definimos su peso como:

W(S, S) = 1 2

X

i∈S j∈S

wij

El problema de max cut consisite en maximizar W(S, S) con S ⊂V . Como ya vimos Max cut es NP-Hard por tanto a menos que P =N P no existe un algoritmo que resuelva este problema en tiempo polinomial.

En general dado que no se ha encontrado un algoritmo que resuelva un problema NP-Hard en tiempo polinomial algunos autores han diseñado algoritmos que en tiempo polinomial dan solu-ciones aproximadas a estos problemas. Esta estrategia se ha intentado bastante con el problema de Max cut por ejemplo se han publicado trabajos como los de [vitanányi 1981], [Poljak and

(27)

Turzík] o [Hofmeister and lefmann 1995].

Pero el aporte mas importante en el diseño de algoritmos de aproximacion para problemas NP-Hard lo hicieron Michael Goemans y David P Williamson en su famoso artículo Improved Approximaton Algorithms For Maximum Cut And Satisfiability Problems using Semidefinite Programming donde usando programación semidefinida construyeron un algoritmo que produce en tiempo polinomial una aproximación de al menos 0.87856 de la solución óptima de Max cut donde hasta entonces solo se habían logrado construir algoritmos que lograban el 0.5 de la solu-cion optima del problema.

Uno de nuestros objetivos en el presente trabajo es aplicar el algoritmo de Goemans y Williamson para hallar buenas aproximaciones de otros problemas de optimización de la clase NP-Hard.

9.1. El problema Cuadrático Entero Para Max Cut

Veamos como el problema de max cut es equivalente a un problema cuadrático sobre los enteros para ello asociemos a cadaS ⊂V la funciónXS:V −→ {1,−1}donde

XS(i) =

(

1 if i∈S −1 if i∈S

Sea χ(S,S) la función característica asociada al corte(S, S) es decir

χ(S,S)(i, j) = (

1 if (i, j)∈(S, S) 0 if (i, j)∈/ (S, S)

tenemos que

X

i∈S j∈S

w(i, j) = 1 2

X

(i,j)

wijχ(S,S)(i, j)

observemos que

χ(S,S)(i, j) = (1−XS(i)XS(j))/2 y por tanto

W(S, S) = 1 2

X

i<j

wij(1−XS(i)XS(j))

Además observemos que (S, S) ∈cut(G) esta univocamente determinado por la función XS = (XS(1), ..., XS(n))luego podememos definir

W(XS(1), ..., XS(n)) =W(S, S) es decir para S ∈V, el peso del corte (S, S)es

W(XS(1), ..., XS(n)) =

1 2

X

i<j

wij(1−XS(i)XS(j))

como

XS(i) =

(

1 if i∈S −1 if i∈S

Referencias

Documento similar

La determinación molecular es esencial para continuar optimizando el abordaje del cáncer de pulmón, por lo que es necesaria su inclusión en la cartera de servicios del Sistema

En esta sección se tratan las características que debe tener un compresor de secuencias biológicas para poder ser usado como herramienta en la construcción de los árboles de

Por lo tanto, en base a su perfil de eficacia y seguridad, ofatumumab debe considerarse una alternativa de tratamiento para pacientes con EMRR o EMSP con enfermedad activa

The part I assessment is coordinated involving all MSCs and led by the RMS who prepares a draft assessment report, sends the request for information (RFI) with considerations,

o Si dispone en su establecimiento de alguna silla de ruedas Jazz S50 o 708D cuyo nº de serie figura en el anexo 1 de esta nota informativa, consulte la nota de aviso de la

Al no observar una significante relación con el valor de p=0,165 (p&gt;0,05) y correlación muy baja de r=0,071, se considera que no existe relación significativa entre

Ciaurriz quien, durante su primer arlo de estancia en Loyola 40 , catalogó sus fondos siguiendo la división previa a la que nos hemos referido; y si esta labor fue de

El desarrollo de una conciencia cáritas es esencial para identificar cuando un momento de cuidado se convierte en transpersonal, es necesaria para identificar