DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn...

107
SEP DGIT DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS CENTRO NACIONAL DE INVESTIGACION Y DESARROLLO TECNOLOGICO MAESTRIA EN CIENCIAS DE LA COMPIJTACION APLICACION DEL LENGUAJE LISP Y TECNICAS DE INTELIGENCIA ARTIFICIAL A LA RESOLUCION DE PROBLEMAS NP-COMPLETOS. TESIS QUE PARA OBTENER EL GRADO DE MAESTRO EN CIENCIAS DE LA COMPUTACION PRESENTA CENTRO DE INFORMACION RAUL PINTO ELIAS CENIDET 1. Cuernavaca, Mor.. DIRECTOR DE TESIS M.C. JOSE TORRES JIMENEZ Octubre de 1993.

Transcript of DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn...

Page 1: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

SEP D G I T

DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS

CENTRO NACIONAL DE INVESTIGACION Y DESARROLLO TECNOLOGICO

MAESTRIA EN CIENCIAS DE L A COMPIJTACION

APLICACION DEL LENGUAJE LISP Y TECNICAS DE INTELIGENCIA ARTIFICIAL A LA RESOLUCION DE

PROBLEMAS NP-COMPLETOS.

T E S I S

QUE PARA OBTENER EL GRADO DE MAESTRO EN CIENCIAS DE LA COMPUTACION

PRESENTA CENTRO DE INFORMACION

RAUL PINTO ELIAS C E N I D E T 1.

Cuernavaca, Mor..

DIRECTOR DE TESIS

M.C. JOSE TORRES JIMENEZ

Octubre de 1993.

Page 2: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

. I .

Page 3: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Centro Nacional de Investigación y Desarrollo Tecnblógico

Fecha : 9 de diciembre de 1993.

Dr. Juan Manuel Ricaño Castillo. Director B e l CENIDET. P R E S E N T E

Atn'. M. en C. Luis García Gutierrez. Jefe del Departamento de

Ciencias de la Computaoión.

Por este cbnducto, hacemos de su conocimiento que después de haber sometido a revisión el trabajo de tesis titulado :

APLICACION DEL LENGUAJE LISP Y TECNICAS DE INTELIGENCIA ARTIFICIAL A LA RESOLUCION DE PROBLEMAS NP-COMPLETOS.

1

desarrollado por el Ing. Raúl Pinto Elías, y habiendo cumplido con las correcciones que se le indicaron, estamos de acuerdo en que se le conceda la autorización para la impresión de la tesis, así como la fecha para sustentar el exámen de grado.

Sin otro particular quedamos de usted : !

A T E N T A M E N T E

COMISION REVISORA

s. E. P. . CñFPIBo NAClvIV.

M.C. Jo Torres Jiménez. ~ J l Q A C i i i

Dr. Eduardo Morales Manzanares. Mf Manu# Me? Lavalle.

..,,'.

I.,:!

. . . ' .: . . .. . .. . , ,, i . " . ,

. . ,

Interior Internado Palmira S/N C.P. 62490 Aparrado Postal 5-164, C.P. 62050 Cuernavlca, Mor. Ménco Tcls.: (73) 18 77 41 y (73) 12 76 13 cenidet/

Page 4: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

h

Page 5: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

' 3 3 u SISTEMA NACIONAL DE INSTITUTOS "'J3CNOLOGICOS

Centro Nacional de Investigación y Desarrollo Tecnólógico

M E M O R A N D U M

ing. R a ú l Pinto Elias Candidato a Maestro en Ciencias P R E S E N T E

Por medio de este conducto me dirijo a usted para informarle

que su expediente escolar fue .revisado y considerando'que cumpie

con los requisitos para sustentar el examen de grado, le comunico

que puede mandar a imprimir su tesis, así como ponerse de.acuerdo

con l o s integrantes de l a comisihri revisora para que juntos

propongan la fecha de su examen.

Sin otro particular reciba m i s I I I ~ S sinceras felicitaciones, ya

que esta a punto de culminar una meta importante en su carrera

profesional.

c . c . j J . C . P . riel .lefa del

c . c. p . exped i e,n I ,

o Harl.)a Puga Depto. de Servicios Lscolares

e .,:c.

Interior Internado Palrnira S/N C.P. 62490 cenidef ,/*panado Postal 5-164, Teis.: c.p. (73) 62050 18 Cuernavaca, 77 41 y (73) Mor. 12 Mexico 76 13

Page 6: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.
Page 7: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

L e d e d i c o este t r a b a j o a :

... m i q u e r i d a e s p o s a Norma E u g e n i a por su i n f i n i t o a p o y o , m o t i v a c i ó n y c o m p r e n s i ó n en é s t a y en t o d a s l a s a c t i v i d a d e s q u e he e m p r e n d i d o .

. . . m i s p a d r e s como un t r i b u t o a l e s f u e r z o r e a l i z a d o p a r a p r o p o r c i o n a r m e una p r o f e s i d n y por e l a p o y o que siempre me h a n dado .

... m i s hermanos : José A n t o n i o , Juana M a r i a , B e a t r i z de l Rosario y G a b r i e l a

... m i p e q u e ñ o h i j o : R a ú l y a n u e s t r o q u e r i d o y e s p e r a d o bebé.

de l a L u z .

Page 8: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.
Page 9: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

A g r a d e c i m i e n t o s :

Agradezco a :

. . . e l C e n t r o N a c i o n a l de I n v e s t i g a c i ó n y D e s a r r o l l o ' T e c n o l ó g i c o (CEN.iDET) por las f a c i l i d a d e s y e l apoyo p r o p o r c i o n a d o p a r a l a t e r m i n a c i ó n d e es ta t e s i s .

... el C o n s e j o N a c i o n a l d e C i e n c i a y Tecnol .ogía (CONACYT) por e l apoyo económico b r i n d a d o d u r a n t e los e s t u d i o s d e m a e s t r í a .

... el M.C. José Torres J i m é n e z , a s e s o r d e es te t r a b a j o , p o r sus v a l i o s o s c o n s e j o s y a s e s o r í a l o s c u a l e s c o n t r i b u y e r o n a l a t e r m i n a c i ó n s a t i s f a c t o r i a d e este t r a b a j o .

y e n g e n e r a l a t o d o s l o s que de f o r m a d i r e c t a o i n d i r e c t a c o n t r i b u y e r o n a l a r e a l i z a c i ó n de este t r a b a j o .

...

c

Page 10: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.
Page 11: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

RESUMEN.

Los problemas NP-Completos son problemas que poseen un espacio de soluciones de comportamiento exponencial. Los algoritmos que se conocen para resolverlos, a menudo, requieren de un tiempo de proceso excesivamente grande (cientos o miles de anos), a m con un conjunto de datos bastante pequeno (entre 20 y 50 datos).

El presente trabajo de tesis analjza y propone una estrategia de solucibn para dos problemas NP-Completos: el diseno de redes de costo minimo y el problema del embalaje (matembtica combinatoria de la planificacien).

Para el diseno de redes, se propone un metodo que sjmula una hasqueda en amplitud y en profundidad acotadas (no exhaustiva). Esto genera un algoritmo bastante rápido, con un consumo de memoria pequeno en, comparacien con otros matodos aplicables al diseno de redes.

Para el problema de embalaje, se propone un algoritmo no exhaustivo que tiene un comportamiento igual al mejor de los mbtodos conocidos.

Los dos matodos propuestos se compararon con los mejores matodos conocidos aplicables a cada caso. El conjunto de datos utilizado se gener6 aleatoriamente por medio de una funci6n implementada en LISP. Las estadisticas generadas permiten observar que el margen de error de los matodos propuestos es menor al 5% por lo general.

L o s algoritmos fueron implementados en lenguaje LISP, versi6n muLISP 87 y se encuentran en los apQndices B y C.

.. .

i

Page 12: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

,

Distribucibn de la Obra y Notacibn.

En el capitulo uno, se presenta la teoria bdsica de los problemas NP-Completos, introduciendo las nociones de la Maquina Algoritmica Universal de Turing, Deterministica y No-Deterministica, las cuales permiten definir las clases de problemas P, NP y NP-Completos.

En el capitulo dos, se presenta una breve historia e introduccibn a la Inteligencia Artificial, asi como diversos matodos de bUsqueda utilizados para procesar problemas con espacios de soluciones de tipo exponencial.

En el capitulo tres, se describe y analiza el problema de diseno de redes y se plantea una propuesta de solucibn.

Todos los problemas de planificacion son NP-Completos, se analizara uno en especial que se puede aplicar a casos prbcticos, para algunos, cotidianos. Consiste en: determinar la disposicibn adecuada que permita almacenar n

objetos con pesos a Wl, W2, . . . , W,,) , en un nrimero minimo de cajas,

y que el peso de cada caja no exceda una cantidad predeterminada W. Este mismo problema puede ser planteado de la forma : Determinar la forma en que se deben cortar los rollos (industriales) de papel para obtener las diversas variedades comerciales con un nlllllero minimo de rollos y con un desperdicio minimo: Tuberias: comercialmente las tuberias de cobre, acero, herrerias, etc. se proporcionan en secciones de tamano fijo, Determinar la forma de cortar diversos segmentos de tuberia/herreria de tal manera que el desperdicio y el nhmero de segmentos utilizados sea minimo.

En el capitulo cuatro, se describe y analiza este problema que se considera dentro de la Matemdtica Combinatoria de la Planificacibn y se plantea una propuesta de solucibn.

En el apandice A se presenta una breve descripcion del Cdlculo Lambda, el cual es la base para el desarrollo del lenguaje LISP.

En los apandices B y C se presenta la implementacibn de los algoritmos de solucibn propuestos para el problema de diseno de redes y el problema de planificacibn, en lenguaje LISP. Se utilizb la version muLISP 87.

.< . ii

Page 13: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

TERMINO

II

A

c..

rklgicos

v A

Con juntos

Z'

z * r

E

B

E

SIMBOLOGIA UTILIZADA

c .

SIGNIFICADO .&.a? :. _1 I

instancia de un Problema.

Cdlculo LamWa.

si y sa310 si

I ,o , . j .. : . 80 < .z,:.,wm I

: .TI 3 I . .. .

operador AND. -< . . . , _.-< *$'...'a b.&lbj

: F. ~ : . ~ + r ;; , Conjunto de:log enteros positivos;; .' r' <,

. V,t" A

Cori junto de simbolos do entrada ',para- una Maquina de .:.. L .< i .+. . ,I, , J T L > L Turing. '31 4 :,a , ,: Y, . i i .. , , , *: . . . w Q . . , i u G . * Conjunto.de cadenas .generadas .a partir .de E . Conjunto de Simboios que puede contener una cinta para

una Maquina &e Turing, incluyendo un subconjunto

' , (I ;i .

E c r .

Pertenece a.

NO pertenece a.

Subccnjunto de.

...

-..- - I iii

Page 14: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Mateméticas.

Sumatoria en la cual i varia desde x hasta y. i c ' X

Valor absoluto de x, longitud de x 1x1

v x Para toda x.

Grafos

Denota el nllmero de vertices de G . Denota el nllmero de enlaces de G . Denota el nllmero de componentes de G.

LISTA DE ACRONIMOS

P3D Pareamiento de patrones en 3 dimensiones. AEM Arbol de Expansibn Minima. CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices. IA Inteligencia Artificial. MDT Méquina Deterministica de Turing. MNDT Méquina No Deterministica de Turing. MT Maquina de Turing. SAT Satisfacibilidad. RPE Nombre del metodo propuesto para el problema de diseno de redes de

costo minimo.

Page 15: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

i

. CONTENIDO

RESUMEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DistribuciOn de la Obra y NotaciOn . . . . . . . . . . . . . . . . . . . . . . LISTA DE ACRONIMOS . . . . . . . . . . . . . . . . . . . . . ' . . . . . . . Introduccian . . . . . . . . . . . . . . . . . . . . . . . . " . . . . . . . Capitulo I . Introduccian a los problemas NP-COMPLETOS . . . . . . . . . .

1.1.- Introduccian . . . . . . . . . . . . . . . . . . . . . . . . '1.2.- Lenguaje . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3.- Esquemas de Codificacian . . . . . . . . . . . . . . . . . . . 1.4.- Mdquina de Turing . . . . . . . . . . . . . . . : . . . . . . .

1.4.1.- Funcionamiento de la mdquina Deterministica de Turing

1.4.2.- Solucion de Problemas con una MT . . . . : . . . 1.4.3.- MT y la Complejidad de Tiempo . . . . . . . . .

1.5.- Mdquina No-Deterministica de Turing (MNDT) . . . . . . 1.5.1.- Funcionamiento de una MNDT . . . . . . : . . . 1.5.2.- Complejidad de Tiempo de una MNDT . . . . . . .

1.6.- Algoritmos , Clase P y NP . . . . . . . . . . . ; . . . 1.6.1.- Alaoritmo Deterministic0 . . . . . . . i . . .

(MDT) . . . . . . . . . . . . . . . . . . . . . . . . . ...

1.6.2,- Algoritmo No-Deterministic0 . . . . . . . . . . 1.6.2.1.- Complejidad de tiempo de un ' algor

No-Deterministic0 . . . . . . . . . . . . . . . . 1.6.3.- Clase P y NP . . . . . . . . . . . . . : . . .

1.7.- TransformaciOn Polinomial y NP-Complete2 . . . . . . . 1.7.1.- NP-ComDleto . . . . . . . . . . . . . . 2 . . .

. . . . . . . . . . . . . . . . . . . tmo . . . . . . . .

1.8.- TEOREMA DE COOk . . . . . . . . . . . . . . . . . . . . . . . 1.9.- ConclusiOn . . . . . . . . . . . . . . . . . . . . . . . . .

Capitulo I1 . Inteligencia Artificial . . . . . . . . . . . 11.1.- IntroducciOn . . . . . . . . . . . . . . . . . 11.2.- ALGUNOS DE M S TEMAS FUNDAMENTALES DE LA

ARTIFICIAL . . . . . . . . . . . . . . . . . . 11.3.- BUSQUEDA DE SOLUCIONES . . . . . . . . . . . .

11.3.1.- Metodo de Generar y Comprobar . . . . 11.3.2.- Ascensian de Colinas . . . . . . . . . 11.3.3.- Biisqueda a lo ancho . . . . . . . . . . 11.3.4.- Biisqueda por el mejor nodo: GraEos O . 11.3.5.- Ramificar y Acotar . . . . . . . . . .

. . . . . . . . . . . . . . . INTELIGENCIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Capitulo 111 . Andlisis del problema de Redes . . . . 111.1.- IntroducciOn . . . . . . . . . . . . . 111.2.- Conceptos Bdsicos . . . . . . . . . . .

111.2.1.- Arbol de expansien minima (AM) 111.2.2.- secuencias . . . . . . . . . .

111.3.- DescriDciOn del Problema . . . . . . . 111.4.- Trabajos Asociados Desarrollados . . . 111.5.- Analisic . . . . . . . . . . . . . . . 111.6.- PROPUESTA DE SOLUCION ( W E ) . . . . . . 111.7.- Metodo . . . . . . . . . . . . . . . .

111.7.1.- Fase 1 . . . . . . . . . . . . 111.7.1.1.- Primera parte . . . . . 111.7.1.2.- Fase 1 . Segunda Parte .

111.7.2.- Fase 2 . . . . . . . . . . . .

tk . . . . . . . . . . . . . . . . . . . . ' .. . _ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

i

ii

iv

3

6 6 6 7 8

9 12 12 13 13 14 14 14 14

15 15 16 18 19 26

27 27

28 29 29 29 30 31 31

33 33 33 33 33 35 36 38 39 40 42 42 43 43

... 1

.

Page 16: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

111.7.3.- Fase 3 . . . . . . . . . . . . . . . . . . 111.8.- Comportamiento del Metodo . . . . . . . . . . . . .

111.8.1.- Caso a).- Sin restricciones . . . . . . 111.8.2.- Caso b).- Restriccian por NiZmero de

conectados a otro nodo . . . 111.8.3.- caso c).- Restriccian por trafico . . . 111.8.4.- Caso d).- CombinaciOn del caso b y c . . . 111.8.5.- Ejemplo . . . . . . . . . . . . . . . . . .

111.9.- Estadicticas de comportamiento . . . . . . . . . .

. . . . 43

. . . . 44

. . . . 44 . . . . 44 . . . . . '44 . . . . . 48 . . . . 51

. . . . . 44 Nodos .

111.9.1.- Caso 1 . . . . . . . . . . . . . . . . . . . . . . 51 111.9.2.- Caso 2 . . . . . . . . . . . . . . . . . . . . . . . 54 111.9.3.- Caso 3 . . . . . . . . . . . . . . . . . . . . . . 54

111.10.- Conclusiones . . . . . . . . . . . . . . . . . . . . . . . 55

Capitulo IV . Andlisis del problema de Matematica Combinatoria de la Planificacian . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 IV.l.- Introducci6n . . . . . . . . . . . . . . . . . . . . . . . . 56

' IV.2.- Descripcian del Problema . . . . . . . . . . . . . . . . . . 56 IV.3.- Trabajo Asociado . . . . . . . . . . . . . . . . . . . . . . 57

IV.3.1.- Primer Espacio libre . . . . . . . . . . . . . . . . 57 IV.3.2.- Mayor espacio Libre . . . . . . . . . . . . . . . . 57 IV.3.3.- Primer Espacio libre con listas decrecientes . . . . 58 IV.3.4.- Mayor Espacio Libre con listas decrecientes . . . . 58

IV.5.- Propuesta de Solucian ( M e n o r Espacio . . . . . . . . . . . . 59 IV.4 .. Analisis . . . . . . . . . . . . . . . . . . . . . . . . . . 58

IV.6.- Comportamiento del Metodo ( M e n o r Espacio) . . . . . . . . . 60 IV.6.1.- Caso #1 . . . . . . . . . . . . . . . . . . . . . . 60

IV.6.1.1.- Pardmetros : . . . . . . . . . . . . . . . . 60 IV.6.1.2.- Resultados . . . . . . . . . . . . . . . . . 60 IV.6.1.3.- Distribucián de los Objetos en las Cajas . . 60

IV.6.2.- Caso #2 . . . . . . . . . . . . . . . . . . . . . . 61 IV.6.3.- Caso #3 . . . . . . . . . . . . . . . . . . . . . . 61

IV.7.- Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . 63

Capitulo V . Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . 64 V.1.- Diseno de redes . . . . . . . . . . . . . . . . . . . . . . . 64 V.2.- Matematica combinatoria de la planificacian . . . . . . . . . 65

Referencias y notas BibliogrBficas . . . . . . . . . . . . . . . . . . . 66

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

APENDICE A . CdlcUlO Lambda . . . . . . . . . . . . . . . . . . . . . . . . 68

APENDICE B . Algoritmos de diseno de redes . . . . . . . . . . . . . . . . 71

APENDICE C . Algoritmos del problema de matemdtica combinatoria . . . . . 8 5

LISTADEAUTORES . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

INDICE ALFABETICO . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

... 2

Page 17: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Introducción.

La nocibn de Problema NP-Completo fue introducida en 1971 por Stephen A. Cook, de la universidad de Toronto. Y se refiere a problemas de tiempo no deterministicamente polin6mico y completo.

Ahora se sabe que centenares de problemas famosos, por no ser computacionalmente manejables, pertenecen a la clase de problemas NP-completos. Estos problemas se caracterizan por dos importantes propiedades.

- Primera, todos los mtkodos, o algoritmos. que se conocen hasta la fecha para encontrar soluciones generales de estos problemas, requieren de tiempos de ejecucibn con crecimiento exponencial, y, por consiguiente, son sumamente ineficientes.

- Segunda, si uno solo de los problemas NP-Completos de una determinada clase, admitiera una solucibn eficiente, esto es, cuyo tiempo de ejecucibn crezca como las funciones polinbmicas, entonces todos los dembs problemas de esa clase admitirian tambien soluciones eficientes.

Un algoritmo se considera una secuencja finita de instrucciones cada una de las cuales tiene un significado preciso y puede ejecutarse con una cantidad finita de esfuerzo en un tiempo finito.

Uno de los pardmetros de mayor importancia asociado al desempeno de un algoritmo, es el tiempo que requiere para resolver un problema. En el tiempo ejecucibn de un algoritmo, influye la velocidad de la maquina que lo ejecutarb,el tiempo que toma cada instruccibn en completarse, y, el mAs importante, el grado de complejidad del algoritmo utilizado, que esta en funcibn del tamano de los datos a procesar.

Para hacer referencia a la velocidad de crecimiento de un algoritmo, se utiliza la notacibn asintbtica. Con la cual se representa la cota o limite superior ( O

grande) e inferior ( w omega) del tiempo que requiere un algoritmo para resolver un problema, dado un conjunto de datos de tamano n (orden de magnitud de la complejidad de tiempo de un algoritmo).

Tiempo Polinomial y Problemas Intratables . El tiempo de ejecucibn del mejor algoritmo conocido para un problema, define el tiempo minimo y mbximo que se requiere para resolver ese problema. Una vez que se ha obtenido el limite inferior del tiempo de un algoritmo, se debe tratar de encontrar un nuevo algoritmo que requiera un tiempo de ejecucibn, para el peor caso, igual al del limite inferior. Si este algoritmo existe, entonces se dice que el algoritmo es bptimo.

como cada algoritmo puede ser caracterizado por una ecuacibn que refleja su complejidad en funcibn del tiempo, es posible determinar cuan eficiente puede ser un algoritmo dado.

Una funcibn f (n) es de orden O (g (n) ) siempre que exista una constante c tal

que If(n)l 2 c * Ig(n)I V n 2 O . Un algoritmo de tiempo polinomial se define como aquel cuya funcibn de

complejidad de tiempo es O(p(n)) para una funcibn polinbmica p . n representa

. . 3

Page 18: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Introduccibn.

la longitud de los datos de entrada. Los algoritmos cuya funci n de tiempo no puede ser acotada por un polinomio, se denominan algoritmos de tiempo exponencial.

El primer grupo lo constituyen problemas cuya soluci n est acotada por un polinomio de grado peque o, mientras que elsegundo grupo contiene problemas cuyo mejor algoritmo conocido no e6 polin mico.

No ha sido posible, hasta la fecha, dise ar algoritmos del tipo polin mico que resuelvan problemas del segundo grupo. Esto es muy importante, porque aquellos algoritmos cuya complejidad de tiempo es de tipo no polin mico (por lo general exponencial), requieren enormes cantidades de tiempo que, inclusive para problemas de peque o tama o, no pueden ser tratados.

En la Tabla #1, se presenta el tama o del problema que podemos mane jar para

ejecuci n de un algoritmo. Se Complelidad puede apreciar que a n cuando

multiplique por diez, el

puede resolver no se n2 31.62 100 316.22 tama o del problema que se

incrementa en la misma proporci n para los n3 1 0 21.54 46.41 algoritmos del tipo

2" 9 .96 13.28 16.60 exponencial y de potencias.

diferentes tiempos de tiempo 1 O3 104 105

el tiempo de proceso se n 103 104 105

comportamiento exponencial.

En la Figura #l se pueden apreciar las curvas de comportamiento para diferentes algoritmos, en funci n del tiempo y del n mero de datos. Se puede apreciar el

4

Page 19: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

... - . “ .:. ..

Intromicci6n.

c r e c i m i e n t o desproporcionado del tiempo para las funciones exponenciales.

Aunque todav a no s e h a y a demostrado, parece sumamente probable que la dificultad d e h a l l a r p r o c e d i m i e n t o s eficientes de resolver estos problemas sea intr nseca a los p r o b l e m a s NP-Completos.

En la actualidad, c o n e l advenimiento de las computadoras se han aplicado t c n i c a s d e I n t e l i a e n c i a

Unldades de nemp

65436 32768. I6384

8192, 4036 2048- 1024;

5121

Figura #l Artificiaí, con las adecuadas heur sticas para poder obtener soluciones aproximadas, en un tiemp; razonable, a este tipo de problemas. Sin embargo, los requerimiento de tiempo y espacio para el procesamiento, a menudo, son muy grandes.

El presente trabajo se enfoca al an lisis de problemas de dise o de redes de comunicaci n de costo m nimoyde la matem tica cornbinatoria de la planificaci n.

5 .. .

Page 20: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Introducción a los Problemas NP-Corpletos.

Cap tulo I. Introducción a los problemas NP-COMPLETOS.

1.1.- Introduccidn. Por conveniencia, la teoria de la NP-Completez se ha disenado para ser aplicada, hnicamente, a problemas de decisidn. Estos problemas, solamente pueden tener una de dos respuestas : sí 6 no (O, 1). De manera

generica, un problema de decisibn ü , consiste en un conjunto 4 - d e '

instancias y un subconjunto S,, de instancias-si.

Un problema de decisidn puede ser expresado con la siguiente estructura: la primera parte especifica una instancia genkica del problema en terminos de componentes, los cuales pueden ser, conjuntos, grafos, funciones, nllmeros, etc., y la segunda parte, establece una pregunta, en terminos de la instancia generica,

que deberd ser respondida con un si/no. Una instancia pertenece a 4 , si y sdlo

si, puede ser obtenida a partir de la instancia generica con la sustitucidn de los componentes genericos por objetos particulares de tipos especificos, y la

instancia pertenece a S,, si y, solo si, la respuesta para la pregunta

establecida, para esta instancia, es "si".

Ejemplo 1.1 Agente viajero.

INSTANCIA: Un conjunto finito C = (c,, c, , . . . , cml de "ciudades", una

"distancia" d (ci, cj) E Z' para cada par de ciudades ci, cj E C , y un limite

B e Z + .

PREGUNTA: % Existe un ciclo de todas las ciudades en C que tenga una longitud

total no mayor que B, esto es, un conjunto ordenado de ciudades tales que:

<c,, Crrzr . . . , ca l

El problema de decisión no será mas difícil que su correspondiente problema de optimización [GAREY-791 . Por lo tanto, si se puede encontrar un ,ciclo de longitud minima para el problema del agente viajero, en un tiempo polinomial, entonces también se puede resolver el correspondiente problema de decisión en un tiempo polinomial.

La razón para restringir la teoria de la NP-complete2 a los problemas de decisión es por que éstos tienen una contraparte formal la cual es objeto de estudio matemático en la teoría d e la computación: el lenguaje (GAREY-791.

1.2.- Lenguaje.

Page 21: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Introduccibn a losiProbiemas N P - C o n p l e t o e .

Para un c o n j u n t o f i n i t o 7: d e s imbolos , s e a 2' e l c o n j u n t o d e t o d a s las cadenas

f i n i t a s d e s ímbolos tomados d e 2 , s i L es uii subcon jun to d e Z* , en tonces L es

un l e n g u a j e s o b r e Z .

Ejemplo 1 . 2 Sea E = ( O , 11, E' = [O, 00, 000, ...., 0 1 , 0 0 1 , . . 100 , 0101.0110, 10101, .... I , l a cadena n u l a y t o d a s l a s cadenas f i n i t a s de " O" y "1" r e s t a n t e s ,

un subconjun to c u a l q u i e r a d e E* sería un S.enguaje s o b r e E . La cor respondenc ia e n t r e problemas d e d e c i s i ó n y l e n g u a j e s se e s t a b l e c e por los esquemas d e c o d i f i c a c i ó n que se u t i l i z a n p a r a e s p e c i f i c a r i i i s t a n c i a s d e problemas cuando se p r e t e n d e t r a b a j a r con e l l o s . Un esquema d e c o d i f i c a c i ó n e p a r a un problema proporc iona un medi.0 pa ra d e s c r i b i r cada i~r is tancj .a d e li con una

cadena d e s ímbolos aprop iada , s o b r e u n a l f a b e t o predeterminado 2 . D e e s t a

manera, e l problema li y e l esquema d e c o d i f i c a c i ó n e p a r t i c i o n a n a E* en tres

c l a s e s d e cadenas: aque1.las que no son c o d i f i c a c i o n e s de l.a i n s t a n c i a d e li , a q u e l l a s que c o d i f i c a n i n s t a n c i a s d e ii para l a s cua1.e~ l a r e s p u e s t a es "NO", y

a q u e l l a s que c o d i f i c a n i n s t a n c i a s d e U p a r a l a s c u a l e s l.a r e s p u e s t a es " SI" .

E s t a tercera clase de cadenas es e l l e n g u a j e que s e a s o c i a con Li y e p a r a formar el. c o n j u n t o :

L I U , e l = X E 2.1 E es el alfabeto ut i l izadopor e. x es el esquema de c o d i f i c a c i ó n b a j o e de la i n s t a n c i a 1' E s,

S i un r e s u l t a d o es v á l i d o p a r a el l e n g u a j e I.,( 1I , e), también 1.0 es p a r a e l

problema ü b a j o e l esquema d e c o d i f i c a c i ó n e.

1. 3 . - Esquemas d e C o d i f i c a c i ó n . Una forma de cod.i.fi.caci6n s e r i a mapear las i n s t a n c i a s d e problemas e n "cadenas e s t r u c t u r a d a s " s o b r e el. a l f a b e t o

'P = ( O , 1, -, 1, I , (, ) , , I . S e piiedeii d e f i n i c l a s cadenas e s t r u c t u r a d a s d e manera r e c u r s i v a , p o r medio de l a s r e g l a s :

1) .- La r e p r e s e n t a c i ó n b j .na r ia d e un e n t e r o k, como una cadena d e O ' s y 1's (opcionaLmente p r e c e d i d a p o r un " - " ) es una cadena e s t r u c t u r a d a que

'

.. , . 7

Page 22: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Introduccl6n a los Problemas PIP-COmp1etO.s.

r e p r e s e n t a a l e n t e r o k. 2 ) : - S i x es una cadena e s t r u c t u r a d a que repre ' sen ta a l e n t e r o k, e n t o n c e s

[XI es una cadena e s t r u c t u r a d a que puede d e r u t i l i z a d a como un nombre ( p o r e jemplo: p a r a un vér t ice e n un g r a f o , e lemento de un con jun to , e t c . ) .

3) .- S i xl, x,, . . . , x, s o n cadenas e s t r u c t u r a d a s que r e p r e s e n t a n , a Los

o b j e t o s XI, X,, ..., X,, , en tonces (xi, x,, . . . , x,) es una cadena

e s t r u c t u r a d a que r e p r e s e n t a l a s e c u e n c i a <XI, X,, . . . , Xm> .

, . .

Para o b t e n e r un esquema d e c o d i f i c a c i ó n p a r a un problema d e d e c i s i ó n e n p a r t i c u l a r , p r imero se debe r e a l i z a r una r e p r e s e n t a c j ó n d e cada o b j e t o d e l a i n s t a n c i a , p o r medio d e cadenas e s t r u c t u r a d a s , l a r e p r e s e n t a c i ó n d e l a i n s t a n c i a completa se r e a l i z a p o r medio d e l a r e g l a 3.

Ejemplo 1.4 :

Un c o n j u n t o ' d e o b j e t o s es r e p r e s e n t a d o p o r medio de una s e c u e n c i a ordenada <Xi, X, , . . . , X,> y s u c o r r e s p o n d i e n t e cadena e s t r u c t u r a d a .

Un g r a f o con e l c o n j u n t o d e v é r t i c e s V y c o n j u n t o d e e n l a c e s E se r e p r e s e n t a p o r medio d e una cadena e s t r u c t u r a d a (x, y ) , donde x e s una cadena e s t r u c t u r a d a que r e p r e s e n t a e l c o n j u n t o V , y y es una cadena e s t r u c t u r a d a que r e p r e s e n t a e l c o n j u n t o E .

Una función f i n i t a f: (Ul, ü,, ..., U,) * W se r e p r e s e n t a p o r una cadena

e s t r u c t u r a d a ((xl, y % ) , (x,, y,), . . ., (xm, y,,,)) , donde x es una cadena

e s t r u c t u r a d a que r e p r e s e n t a a l o b j e t o U<, y y, es una cadena e s t r u c t u r a d a que r e p r e s e n t a a l o b j e t o f ( U , ) E W, 1 s i sm .

I

1.4.- Máquina d e Tur ing [COHEN-B6] [GAREY-791 [GLENN-931.

Alan Mathison Tur ing d e s a r r o l l ó e l concep to d e una "máquina a l g o r í t m i c a universal ." , e l c u a l p e r m i t e r e a l i z a r un c o n j u n t o d e o p e r a c i o n e s programadas. E s t e modelo c o n s t a d e 6 p a r t e s :

1).- Un a l f a b e t o C d e símbolos ( c a r a c t e r e s ) -I-

- ... d e e n t r a d a , s i n i n c l u i r e l s ímbolo b l a n c o .

Z ) . - Una c i n t a d e l o n a i t u d i n f i n i t a , d i v i d i d a - e n c e l d a s , cada una d e l a s c e l d a s puede Mhquhm Deiennlnlsüai de Turlng c o n t e n e r un c a r a c t e r o un b l a n c o . L a p a l a b r a ( M Y d e e n t r a d a se p r e s e n t a a l a máquina, colocando e n c e l d a s c o n t i n u a s , un símbolo p o r c e l d a e n l a c i n t a .

3 ) . - Una cabeza l e c t o r a / e s c r i t o r a (L/E) que puede leer o e s c r i b i r e n una c e l d a d e l a c i n t a .

Figura # Z

.< 0

Page 23: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

4 ) . - Un a l f a b e t o r , d e s ímbolos que pueden ser grabados e n l a c i n t a por l a

cabeza L/E, puede i n c l u i r e l c o n j u n t o 2 , y e l s~. r i ibol .o /caracter b lanco .

5 ) . - Un c o n j u n t o f i n i t o d e e s t a d o s , inc luyendo , exactamente uno, denominado i n i c i a l (q,,), a p a r t i r d e l c u a l se i n i c i a r á , l a ejecuci.Ón, y c e r o , uno o m á s e s t a d o s f i n a l e s (qn, 9,) que i n d i c a n l a terminaci.ón d e 1.a ' e j ecuc ión .

6 ) .- Un programa, e l c u a l es un c o n j u n t o de r e g l a s , que i n d i c a n , e n func ión d e l ú l t i m o s ímbolo l e í d o p o r l a cabeza L/E, y . d e l e s t a d o a c t u a l d e l a máquina, como cambiar d e e s t a d o ; que símbolo e s c r i b i r a n l a c i n t a y hac1.a donde d e s p l a z a r l a cabeza . Se pude d e s c r i b i r este programa como una c o l e c c i ó n d e e n l a c e s d i r i g i d o s conectando e s t a d o s (un a u t ó m a t a ) . Cada e n l a c e e s t a r á e t i q u e t a d o con una t r i p l e t a de l t i p o :

(ssímboio, símbolo, dirección)

E l p r h e r s ímbolo ( x I x E I r 1 b l a n c o ) ) cor responde a l si.mbolo l e í d o p o r l a

cabeza L /E . E l segundo s h b o l o cor responde a l símbolo que l a cabeza L/E e s c r i b i r á en l a c e l d a actual . d e 1.a c i n t a . E l ú l t i m o componente, i n d i c a l a d i r e c c i ó n d e l s i g u i e n t e movimiento d e l a cabeza (de recha o i z q u i e r d a ) .

( y I y E (E I I' I b l a n c o ) )

1.4.1.- Funcionamiento d e l a máquina D e t e r m i n í s t i c a d e Tur ing (MDT).

La e n t r a d a a l a máquina es una cadena X E Z* , que se e n c u e n t r a almacenada e n l a c i n t a , un c a r a c t e r / s í m b o l o por c e l d a , d e manera adyacen te . La o p e r a c i ó n comienza con e l e s t a d o i n i c i a l qo, con l a cabeza L/E s o b r e l a p r imera c e l d a . E l p roceso se r e a l i z a apl . icando l a s r e g l a s d e t r a n s i c i ó n e s t a b l e c i d a s h a s t a que l a máquina l l e g a a un e s t a d o q p a r a e l c u a l no se ha d e f i n i d o a c c i ó n a lguna .

En un momento dado, l a máquina debe e s t a r en, exactamente , un e s t a d o , d e un c o n j u n t o f i n i t o d e e s t a d o s .

E l d i s p o s i t i v o d e c o n t r o l ( c o n t r o l d e e s t a d o f i . n i t o Ó CEF), puede leer una c e l d a d e l a c i n t a en un momento dado, y r e a l i z a r c ier tas a c c i o n e s e s p e c í f i c a s . E l d i s p o s i t i v o d e c o n t r o l puede b o r r a r e l c a r a c t e r a c t u a l d e l a c i n t a y e s c r i b i r o t r o símbolo en e s a p o s i c i ó n , y /o moverse una p o s i c i ó n a l a de recha o a l a i z q u i e r d a . La a c c i ó n tomada p o r l a máquina, es determinada, Únicamente, p o r e l e s t a d o a c t u a l d e l a máquina y p o r e l c a r a c t e r l e í d o .

Después d e que se ha e j e c u t a d o a lguna acc ión , l a máquina a c t u a l i . z a su e s t a d o i n t e r n o a c t u a l , e l cual. podr ía ser un e s t a d o p r e v i o o uno nuevo. La máquina repite s u c i c l o con e l v a l o r a c t u a l d e l a Celda s o b r e l a c u a l e s t á ub icada , y e l e s t a d o i n t e r n o r e c i é n a d q u i r i d o . E l p roceso se det i .ene cuando l a máquina se e n c u e n t r a e n un estado-sj.mbolo para el. c u a l no se ha d e f i n i d o a c c i ó n a l g u n a .

S i se r e p r e s e n t a con q, e l c o n j u n t o d e e s t a d o s f i n a l e s e q u i v a l e n t e s a una r e s p u e s t a "NO" , y q, e l c o n j u n t o d e e s t a d o s f i n a 1 . e ~ e q u i v a l e n t e s a ' u n a r e s p u e s t a " SI" , en tonces se d i c e que MDT a c e p t a una cadena x s i , y sólo s i , l l e g a a un e s t a d o f i n a l q,. E l l e n g u a j e L,, reconoc ido p o r un programa M

.. . 9

Page 24: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Intromiccibn a los Problemas NP-Completos.

está determinado por :

L,, = [x E* : Macepta x)

Por definición, la MDT es determinística. Esto indica que no existe un estado q que posea dos o más enlaces etiquetados con el mismo símbolo inicial. Sin embargo, una modificación de esta máquina permiti.endo que existan dos o más enlaces etiquetados con el mismo símbolo inicial genera una máquina No-Determinística de Turing, con características que en un contexto teórico son muy útiles.

En adelante, para hacer referencia a una máquina deterministica de Turing se utilizara la notación MT o MDT indistintamente, y para hacer referencia a una No-Determinística se usará MNDT.

Ejemplo 1.3. A continuación, se pres'enta 1.a tabla de transiciones (Programa) para una máquina deterministica de Turing que permite reconocer un palindrome, donde : Edo. corresponde al estado actual de la máquina, C.L. indica el caracter recién leido, C.E. Caracter a escribir en la cinta, Nvo. Nuevo estado de la máquina, Mov. Dirección del movi~miento de

la cabeza L/E (D = derecha, I = Izquierda), E = [ a , bl ' ,

.. 10

Page 25: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Introducoibn a los Pioblenaa NP-C-mPletoa.

Cuando se l e p r e s e n t a como e n t r a d a , a 1.a MDT r e p r e a e n t a d a p o r e l programa d e s c r i t o , l as cadenas : abshbaba, y ahbaa. En el. pr imer c a s o d e b e r á t e r m i n a r en un e s t a d o q,, y en e l segundo, en un e s t a d o q,,.

Comportamiento d e l a máquina con l a pr imera cadena (abahbaba):

E l c a r a c t e r subrayado y e n n e g r i l l a s cor responde a l a c e l d a donde se e n c u e n t r a co locada l a

CONT. CINTA.

MababbabaM MffbabbabaM WKabbabaM WlbZbbabaM Mtlba6babaM MflbabKabaM M#babbabaM M#babbaEaM M#babbab& M#babbabaff M#babbabff# M#babbaK## M#babb?ib## M#babüab## M#baKbab##

.M#habbab## @#6abbab## Mffbabbab## M#ffabbab## M##&bab## M##aKbab## M##abKab## M##abb?ib## M##abbaKj## M##abbabff# M##abbaff## M##abba### M##ab6a### M##a6ba### M##Zbba### M#ffabba### M##Hbba### M###üba### M # # #bEa # ## M###bbZ###

cabeza WE.

ED0

q o q,,

C.L. C . E . NVO.

a b a b b a b a M a b a b b a b # b a b b a b # b a b b a # a b b a # a b b # b b

# b a b b a b a # # b a b b a b # # a b b a b # # a b b a # # b b a # # b b # # b

MOV

D D D D D D D D I I I I I I I I D D D D D D D I I I I I I D D D D

I I I I D D D

n

11 .< .

Page 26: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Introducción a los Problemas NP-Completos.

...

Comportamiento de la máquina con la segunda cadena (abbaa):

. ... .

CONT. CINTA. ED0 C.L. C.E. NVO. MOV

6abbaaM MgbbaaM M#6baaM M#bEaaM M # bbZaM M#bbaZ@ M#bbaa% M#bba%# M#bbZ## M#bña# # Mtl6ba # #

D D D ' D D I I I I I D D D D I D

La definición de reconocimiento de lenguaje presentada en 1.4.1, no requiere

que m reconozca todas las cadenas de 2. , solamente las que están en &. Si

sobre el alfabeto de entrada

y L, = [II, el [GAREY-791. Mequlna No üetennlnlsthx de Turlng W D T )

1 . 4 . 3 . - MT y la Complejidad de Figura t 3 Tiempo. En función de la MT, la complejidad de Tjempo de un algoritmo, se define [GAREY-791 como el número de pasos requeridos para procesar un programa M en una m con una cadena de entrada x, hasta llegar a un estado final 9,.

Page 27: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

, I n t e o c i 6 n a loe ürablraas Nü-C-~lotO'J; *

Para un programa M d e una MT que se d e t i e n e p a r a t o d a s l a s e n t r a d a s X B 2' ,

s u función de comple j idad de tiempo, T,, : Z' - 2' e s t a determinado p o r :

T, (n) = MAX (nil

dado x E. E*, con 1x1 = I I

tal que el pxoceso de M sobre x tome un tjempo m

Un programa M se denomina programa para una MT de tiempo p o l i n o m i a l s i ex i s t e un

pol inomio p t a l que, T,, (n) s p (n) V n E Z 4 . 1.5.- Máquina No- Determinís t ica de Turing IMND1').

Una Máquina No-DeterminLstica de Turi.ny t i e n e exactamente l a misma e s t r u c t u r a que una MDT, e x c e p t o que a é s t a se le ha aumentado un módulo de s u p o s i c i 6 n t e n i e n d o s u p r o p i a cabeza d e 5610 e s c r i t u r a (cabeza , E ) . E s t e módulo, p roporc iona e l medi.0 p a r a e s c r i b i r l a " s o l u c i ó n p ropue3 ta" en la c i n , t a , y so lamente sirve p a r a este p r o p ó s i t o [GAREY-791 [GLENM-gJI.

1.5.1.- Funcionamiento d e una MNDT.

Un programa para ' una MNDT se e s p e c i f i c a d e 1s misma forma que p a r a una MDT. E l p rocesannen to de l a cadena d e e n t r a d a es e l que d i f i e r e , ya que se r e a l i z a en dos d i f e r e n t e s e t a p a s .

L a p r imera e t a p a 38 denomina d e " supos ic ión" , i n i c i a l m e n t e , l a cadena d e e n t r a d a se e s c r i b e e n l a c i n t a , desde l a c e l d a 1 h a s t a l a c e l d a 1 x I , l a cabeza L / E está s o b r e l a c e l d a 1, l a cabeza E e s t á colocada e n l a c e l d a -1, y e l CEF se e n c u e n t r a inac t i .vo . E l módulo d e " supos ic ión" d i r e c c i o n a l a , cabeza E, un paso a l a vez, y puede e s c r i b i r un símbolo d e r e n l a c e l d a r e c i e n l e i d a d e ' l a c i n t a y inoverse 'una c e l d a a l a i z q u i e r d a , o d e t e n e r s e : e n e l momento en que e l módulo d e " supos ic ión" queda i n a c t i v o , e l CEF se a c t i v a y queda e n e l e s t a d o q,. La s e l e c c i ó n d e cuándo permanecer a c t i v o y que s ímbolos d e r e s c r i b i r , l a r e a l i z a e l módulo d e s u p o s i c i ó n d e una nlaliera a r b i t r a r i a .

La segunda etapa s e denomina d e "VerAficaciÓn", i n i c i a cuando e l CEF se ' ,. a c t i v a e n e l e s t a d o qo. A p a r t i r d e ,este 'momento, e l p roceso se r e d i z a ' . . b a j o l a d i r e c c i ó n d e l programa d e l a MNDT. a p l i c a n d o , exac tamente , . l a s , mismas r e g l a s que p a r a una MD'r, y.. e l módulo d e " 'suposic ión" , con s u . . r e s p e c t h a cabeza E, no se i n v o l u c r a en e s t o s p rocesos , n i e n ' 1.0s ' '

p o s t e r i o r e s . E l proc.aso t e rmino cuando e l CEF e n t r a en un e s t a d o q, 6 9.. , . Cuando e l CEF d e ui:a MNDT 38 d e t i e n e e n un e s t a d o q,, se d i c e que es un p rocesamien to aceptado, t o d a s l a s demás s i t u a c i o n e s ( t e r m i n a c i o n e s o n o ) , se c o n s i d e r a n COI V.^ procesarnientos no acep tados .

Un programa M p a r a una MNDT t i e n e un número i n f i n i t o d e posi.bl.es ' : . . , ,

. . - 13

CENTRO DE INFORMACIM

9 4 0 0 0 2 C E N I D E T

Page 28: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Introducci6n a los Problemas N P - c o w l e t o s .

procesamientos para una cadena de entrada x , una para cada posj.ble cadena

propuesta tomada de r' . Un programa M para una MNDT acepta x si al menos una de las cadenas propuestas es un procesamiento aceptado. reconocido por M es:

El lenguaje

' 1.5.2.- Complejidad de Tiempo de una MNDT.

El tiempo requerido por una MNDT para aceptar la cadena x E L,, se define

[GAREY-791 como el mínimo número de pasos requeridos por l o s módulos de "suposición" y "verificación" hasta que se llega a un estado qs, de entre todos los procesamientos aceptados de M para x . La función de complejidad

de tiempo T,, : 2' - Z' para M es:

~,(n) = max i U [mil

Existe una x E L,, con 1x1 = n tal que el tiempo de aceptar x por M es m

Es importante notar que la función de complejidad de tiempo de U depende únicamente de los pasos requeridos para un procesamiento aceptado, y por convencibn, T,,(") = 1 cuando el procesamiento para una entrada de longitud n es rechazado.

Un programa M para una MNDT es de tipo polinómico si existe un polinomio

p tal que T,, s p ( n ) V n 2 1 .

1.6.- Al.goritmos, Clase P y NP.

1.6.1.- Algoritmo Determinístico. Un Algoritmo Determinístico es aquel en el. que el. resultado de cada operación, esta determinado unívocamente, y, en términos de la MT, es aquel que puede ser reproducido por una máquina determinística de 'Turing.

P: Conjunto de todos los problemas de decisión que pueden ser resueltos por un algoritmo deterministico en un tiempo polinómico.

En un contexto teórico, se puede preschdir de la restricción de que cada etapa del algoritmo sea determinada unívocamente, esto conduce al concepto de Algoritmo no deterministico. Estos, son algoritmos que contienen operaciones cuyo resultado no esta determinado unívocamente, aunque si restringido a un conjunto específico de posi.hilidades. La máquina que ejecute estas operaciones (máquina no deterministica) , puede elegir uno de esos resultados dependiendo de las condiciones establecidas para el problema. Un al.goritmo no-deterministic0 es aquel que puede ser reproducido por una máquina no-determinística de Turing.

1.6.2.- Algoritmo No-Determinístico.

Page 29: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

. .

NP: Conjunto de todos los problemas de decisión que pueden ser resueltos

Un Algoritmo No-Determinístico, al igual que una MNDT, está constituido por dos etapas, la primera de s u p o s i c i ó n y la segunda de verificación. Dado una instancia de problema I, la primera etapa solamente "supone" o "Genera" una estructura s. La segunda etapa toma I y C como entrada, y los procesa de una manera determinística, deteniéndose eventualmente con un "SI", Ó un , Ó continua sin detenerse para siempre. Un algolitmo no-determinístico "NO"

"resuelve" un problema de deci.si.ón II si se mantienen, para todas las

instancias I E i+, , las propiedades [GAREY-791 [GLENN-931 :

' por un algoritmo No Deterministic0 en un tiempo polinómico.

' ,

1) .- Si I E S, , entonces existe alguna estructura s tal que, cuando es "generada" para la entrada I, conduce a la etapa de verificación a responder "SI" para I y s.

Z ) . - Si i S, , entonces no existe una estructura s tal que, ai ser "generada" una "suposición" para la entrada r, conduzca a la etapa de verificación a responder "SI" para I y S.

1.6.2.1.- Complejidad de tiempo de un algoritmo No-Determinístico. El tiempo requerido por un .algoritmo no deterministico para una terminación satisfactoria, es el número mínimo de #pasos necesarios ,para obtenerla, si esta existe. En caso contrario, una terminación .no satisfactoria, el tiempo requerido es del orden o(1) [GAREY-791.

1.6.3.- Clase P y NP.

La relación entre la clase P y NP es fundamental para la teoría de la NP-Completez. Todo problema de decisión que se pueda solucionar en un tiempo polinómico por un algoritmo determinístico, también puede ser resuelto en un tiempo polinómico por un algoritmo no-determinístico, esto

es P s N P , no se ha podido demostrar si P = N P , aunque tampoco se ha 'podido demostrar si P # NP . Teorema 1.1 S i Il pueda ser resuelto por un algoritmo determinístico teniendo complejidad de

tiempo O ( 2 P ' " ) ) [GAREY-79].

li E NP , entonces existe un polinomio p , tal que

Demostración. Supóngase que A es un algoritmo no-deterministic0 de tiempo

polinómico para resolver il , y qfn)'es el valor límjte del polinomío de complejidad de tiempo de A. Entonces se conoce que, para cada entrada aceptada de longitud n, debe existir alguna cadena aceptada (sobre el'

alfabeto r ) de longitud q ( n ) que permita a A responder con un "SI" para esta entrada en, no más de, q (n ) pasos. El número de posibles respuestas

.. . 15

Page 30: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

IntsOdYcción a los PeOblemas NP-Completos.

que necesitan ser consideradas es, a lo más, kd") , donde k = I r 1 1 . .

Se puede determinar Si A tiene un proceso aceptado para una entrada de longitud n aplicando el módulo deterministic0 de verificación de A, hasta

que se detenga o hasta que realice q(n) pasos, a cada una de Las kqlnl posibles opciones.

Una búsqueda como esta, responde "SI" si encuentra una cadena que conduzca a un procesamiento aceptado dentro del tiempo límite establecido, de otra manera responde con un "NO". Sin embargo, el número de posibles respuesta que tendrían que ser analizadas para encontrar la cadena adecuada, evidencia la necesidad de utilizar un algoritmo no-deterministic0 para

resolver .

Esta habilidad de un algoritmo no-deterministico de verificar un número exponencial de opciones en un tiempo polinómico, conduce a suponer que un algoritmo de este tipo es mucho más poderoso que un algoritmo deterministic0 de tiempo polinómico.

1.7.- Transformación Polinomial y NP-Completez.

Si P difiere de NP, entonces el conjunto formado por NP - P, contiene problemas que no pueden ser resueltos en un tiempo polinómico por una MNDT (intratables).

Mientras no se pueda demostrar que p * N p , es difícil demostrar que un problema particular

pertenece a NP - p . Por esta razón, la teoria de la NP-Complete2 centra sus demostraciones en la Q suposición de que P f NP , y n E [Ne - PI. ELHUNWMNPA6Uk(lENWWE

P o N P [GAREY-791

Una transformación poiinomiai del lenguaje Li

al lenguaje ~2 E. ( L, a~~ ) 2 es una función f: z: - que satisface las

condiciones :

Figura #4

z:

1).- Existe un programa, para una MT, de tiempo polinómico que procesa f.

2 ) ,- X E L, V X E 2: -- f(x) E L2

La importancia de la transformación polinomial se evidencia en el siguiente lema [GAREY-791 :

' Como se e s t a trabajando con piobJ,eina.5 de deci3iúl1, k=Z.

'Se lee: L, transformado a L,

.. . . 16

Page 31: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

rntroduccl6n a los Problemas NP-Conipletos.

Lema I. i si L, m L, , entonces L, e P implica L, e P ( y equivalentemente,

L, cf P implica L, cf P 1

. . Demostración. Sean Z1 y Z, los alfabetos de L; y L, respectivamente,

una transformación polinomial de L, a L,, M, un programa para una

MT de tiempo polinomial que ,procesa f, y sea M, un programa para una MT de tiempo polinomial que reconoce L,. Se puede construir un program para una MT de tiempo polinomial que reconozca L, por la composición de M, con M,. Para una

entrada . x E 2: , primero se aplica la porción correspondiente de M, para

.construir f(x) E 2 ; , posteriormente, se aplica la porción correspondiente al

programa M2 para determinar' si f(x) E L, . x E L, si, y solo si, ftx) E Lz , esto genera un programa de una MT que reconoce a L,, y opera en un tiempo polinómico, por el hecho de que M, y M2, son algoritmos de t?empo polinómico. Siendo más específicos, si pr y p2 son funciones polinómicas limitando el tiempo de ejecución de M, y M2, entonces If(x) I sppf(Ixl) , y el tiempo de

ejecución del programa creado es OíP,tIxl) +p2(pi(lxl))) , el cual es limitado por un polinomio en

f : 2 ; - 2 ;

I x 1.

Si nl y n, son problemas de decisión, con esquemas de codificación

asociados e, y e, respectivamente, se puede decir que ni n2 , con respecto a un esquema de codificación dado, si existe una transformación polinómica de

. Se puede considerar una transformación polinómica del problema de decisión =I al problema de decisión nz como una función

L[n,. e,] a L[nz, e,]

f:.Dh, 4, que satisface las condiciones:

11.-

2 ) . - r e s 4 v r e % -- f(r) . f es procesable por un algoritmo de tiempo polinómico.

Lema 1.2 Si L~ -Lz Y , entonces LI m L , [GAREY-791 [GLENN-93].

Demostración: Sea 21, Y23 el alfabeto de los lenguajes L,, L, y L,

17

Page 32: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

* Introdllcción a los Problemas NP-Coupleims.

respectivamente, sea f : Z: - Z; una transformación polinómica de L, a L,, y sea

f: Z; - Z; una transformación polinómica de L, a L,. Entonces, la función

f: Z l - Z; definida por : f ( x ) = f 2 ( f l ( x ) ) V x E Z: es la que permite

transformar L, a L,, 'es claro que f ( x ) E & -- X E L , .. I. 7.1. - NP-Completo.

Formalmente, un lenguaje L es NP-Completo si L . € N P , y para todos los demás lenguajes' L' E N p , L' O r L [GAREY-791. Informalmente, un problema de

decisión es NP-Completo si E NP , y para todos los demás problemas de decisión a' E N p , Ií' m a . Si un problema NP-Completo puede ser resuelto en un tiempo polinomial, entonces todos los demás problemas en NP pueden ser resueltos también en un tiempo polinomial. Si un problema en NP es

intratable, entonces todos los problemas NP-Completos lo son. Si P * N p ,

entonces II E (NP - PI , en otras palabras, E P -- P = NP .

/

ELMUNDODE NP *SUUI€NrnWE PPNP ..

Figura #5

Lema 1.3 Si L, y L, pertenecen a NP, L, es NP-Completo, y

L, es NP-Completo [GAREY-79].

L, L2 , entonces

Demostración: Como L2 E N p , lo que se necesita demostrar es que, para

cada L' E NP, L' -L2 . Considerando algún L' E N P , como L, es

NP-Completo, entonces, se cumple L' , la transitividad de - y el echo de que L, L, implican que L' L2 .U

Est..? lema permite demostrar que ciertos problemas son NP-Completos, para lo cual se siguen los pasos :

18

Page 33: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

1) .- Demostrar que II E NP . 2) .- Demostrar que algún problema NP-Completo conocido U' se puede

trasformar a , II . Esta es una de las formas de demostrir. que un problema II es NP-Completo.

1.8.- TEOREMA DE COOK.

El honor de ser el primer problema NP-Completo formalizado, le corresponde a un problema de decisión de lógica Boleana, mejor conocido como el problema de satisfacibiiidad (SAT) [GAREY-79] [GLENN-931 [HOROWITZ-78].

Sea u = (q, u,, ..., urn] un conjunto de variables booleanas. Una asignación . .

de verdad para U es una función t: U - (V, F) . Si t f u l '=_ V s e dice que u es

verdadera bajo t, si t(u) = F se dice que u es f a l s a bajo t. La literal u es verdadera bajo t si, y sólo si, la variable u es verdadera bajo t; la literal - u es verdadera bajo t si, y sólo si, la variable u e s falsa bajo t.

Una cláusula sobre u es un conjunto de literales sobre U, tales como

. El ejemplo representa la disyunción de las 1i.terales y es satisfacibie por una asignación de valores de verdad, si, y sólo si, al menos uno de sus'miernbros es verdadero bajo esa asignación. Una colección C de cláusulas sobre u es satisfacible si, y sólo si, existe alguna asignación de valores de verdad para Uque simultáneamente satisface todas las cláusulas en C.

INSTANCIA: Sea U un conjunto de variables booleanas, C una colección de cláusulas sobre U. PREGUNTA: ¿ Existe una asignación de valores.de verdad que satisface a .c ?.

Por ejemplo, u = (u,, u,) y c = ( ( u , V 'u;] V tu; V u , ) ) proporcionan una

instancia de SAT para la cual la respuesta es " s í " . La asignación que satisface la condición es t ( u J = t(u,) = V . Ahora si C = ( ( u , V u,) V (u, VK] V (ü,)) , no existe una instancia para ia cual ia respuesta sea ,#SI,,. , por lo tanto, c no es satisfecha en este caso.

Teorema 1.2 Teorema de Cook. El problema de Satisfacibilidad es NP-Completo.

Demostración [GAñEY-791 [GLENN-931: SAT está en NP, ya que un algoritmo no-deterministic0 de tiempo polinómico sólo tendria que asignar los valores de verdad a las variables y verificar que la asignación satisface todas las cláusulas de c.

Para la segunda condición, será necesario manejar el problema a nivel de

lenguaje, donde SAT se representa por el lenguaje Lsar = L [SAT, el , para algún

(u , v u, VU;)

<

, . .

.. . 19

Page 34: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Se demostrará que v L E N P , L - L s r r . Los lenguajes en NP pueden ser muy diversos y existen muchas formas de representarl.~~, por lo tanto, no se presentará una transformación separada de cada uno de ellos. Sin embargo, cada lenguaje en NP puede ser descrito de una manera estandarizada, simplemente estableciendo un programa para una MNDT que lo reconozca.

Esto permi.te trabajar con un programa, para una MNDT, genérico y derivar una transformación genérica del lenguaje L' a L,, [GAREY-79]. Esta transformación genérica, cuando se particulariza a un programa M para una MNUY de tiempo polinómico, reconoce el lenguaje L,,. En esencia, se demuestra simultáneamente

que ' V L E NP, L - L,, [GAREY-791 [GLENN-93] . M denota un programa arbitrario, para una MNDT, especificado por

r, E, (2, qo, qs, q,,, 6 y 3 el cual reconoce el lenguaje L = L,,, adicionalmente,

p ( n ) E 2' limita la función de complejidad de tiempo de M (T,,(n))

p ( n ) 2 n V n €2' 1, la transformación genérica se deriva en términos de

el polinomio

r, E, O. qoo qe, q,,, 6 , P Y ar

Conviene describir f, como si fuera un mapeo de cadenas sobre 2 a las instancias de SAT, en vez de las cadenas sobre el alfabeto de nuestro esquema

' de codificación para SAT.

F, tiene la propiedad de que V X E 2', x E L --.F&(x) es una asignación de

satisfacibilidad verdadera.

La clave para la construcción de f,, es demostrar cómo un conjunto de cláusulas pueden ser usadas para verificar si una entrada x es aceptada por un programa

M para una MNDT [GAREY-79] [GLENN-931, esto es, si x E L . Si la entrada x E E* es aceptada por M, entonces se dice que, es un procesamiento aceptado de x por M, tal que el número de pasos en la etapa de verificación y el número de simbolos de la cadena propuesta están acotados por pfn), donde n = 1x1 . Este procesamiento involucra, solamente, a las celdas - p(n) hasta p(n) + 1, ya que la cabeza L/E inicia en la celda # 1 y se desplaza una posición en cada etapa de transición simple.

Se puede determinar completamente la situación del proceso de verificación, en un momento dado, con el conteni.do de 1.a celda sobre la cual. se encuentra la cabeza L/E, el estado actual, y la posición de 1.a cabeza L / E . Además, como sólo se tienen p ( n ) pasos en el proceso de verificacihn, entonces existen, a lo más, pfn) c 1 diferentes estados que deben ser considerados.

Conjunto de Variables U para fL :

.. . 2 0

Page 35: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Et ique tando l o s e lementos d e Q como qa, s; = qe, q, = q,, q3, . . . , q, donde

r = (Q( - 1 , y e t i q u e t a n d o l o s elementos de r como :

s, so = 3, s,, s2, . . . , donde v = 11'1 - 1 .

S e t i e n e n t.res t i p o s d e vor iab l . e s [GAREY-79] [GLENN-93] :

VARIABLE RANGO ENUNCJADO CORRESP.

O s i s p ( n )

O s k ' s I

En e l t iempo i, M e s t á en el. e s t a d o qk.

En e l ti.empo i, l a cabeza L/C %st,& s o b r e l a c e l d a j.

En e l t iempo i, e l c o n t e n i d o d e l a c e l d a j es e l símbolo 5".

O 5 k i V

* Cuando se expresa en e.?. tienrpc> j, se r e f i e r e a : cuando se t e r m i n a el. i-Csimo paso d e l a e t a p a d e v e r i f i c a c i ó n .

Un procesamiento d e M jnduce una asignacj.Ón d e verdad en e s a s v a r i a b l n s , b a j o 1.a convención d e que, si e l programa se d e t i e n e a n t e s de p ( n ) pasos , la c o n f i g u r a c i ó n se mant iene e s t á t i c a e n el. tAeinpo r e s t a n t e , manteniendo e l mismo e s t a d o d e p a r o , l a misma p o s i c i ó n d e 1.a c a b e 2 a . y e l mi.smo conteni.do d e l a c i n t a .

E l c o n t e n i d o d e l a ci .nta e n e l t iempo O . ' cotisi .ste d e l a e n t r a d a x, e s c r i t a en l a s c e l d a s 1 a n, y l a cadena p r o p u e s t a w, e s c r i t a en ].as c e l d a s -1 a lwl , t o d a s l a s c e l d a s r e s t a n t e s d e 1.a c i n t a $e encuen t ran en hl.anco.

B e e s t a forma, una a s i g n a c i ó n d e v a l o r e s d e verdad a r b i t r a r i a p a r a e s a s v a r i a b l e s , no n e c e s i t a n cor responder e n todo a un procesami.eiito, mucho menos a un procesami.ento acep tado .

D e acuerdo a una a s i g n a c i ó n a r b i t r a r ; -a , t.ma c e l d a d e 1.a cj .nta p o d r í a c o n t e n e r muchos sí.mbol.os al. nu . smo t iempo, l.a niáyii ¡.ria podi:j.a es t a r , ~:¡.inul.táneamente, e n d i f e r e n t e s e s t a d o s , y ].a caheza L / E p o d r í a e s t a r en un subconjun to de p o s i c i o n e s d e s d e -pfnI h a s t a p f n ) f I . .

La t r a n s f o r m a c i ó n f,, funcj.oria con 1.a consi:riir_cj ón d e una colecci.ón d e c l á u s i i l a s que itivol.ucran e s a s var iahJ .es , t a l . que, una a s i g n a c i ó n d e v a l o r e s d e verdad, es una a s i g n a c i ó n satisfactoria sj., y sóJ~o s i , es una a s i ~ g n a c i ó n i n d u c i d a p o r

21

Page 36: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

IntrocNaoibn a los Problemas NP-Completos.

un procesamiento aceptado para x , donde el estado de verificación toma, a lo más, p ( n J pasos, y donde la cadena propues ta tiend una longitud menor o igual a p f n ) .

X E L -- x es un procesamiento aceptado por M.

-- x es un procesamiento aceptado por M en, a lo más, p(nJ pasos de la etapa de verificación, donde la cadena propuesta (wl

tiene una longitud IwI =p(n) . -- es una asignación de valores de verdad que satisface la

colección de cláusulas en f , , fx) .

Se puede observar que f , satisface una de las dos condiciones requeridas para una transformación polinomial, la otra condición (que f, pueda ser realizado en un tiempo polinómico), se verificará una vez que se tenga la descripción completa de f,. Las cláusulas de f, pueden ser divididas en seis grupos, cada uno impone un tipo de restricción diferente [GAREY-791 [GLENN-931.

GRUPO RESTRICCION

G, En cada instante i, M se encuentra exactamente en un estado.

G2 En cada instante i, la cabeza L/E está exactamente sobre una

G3 En cada instante i, cada celda de la cinta contiene

celda.

exactamente un símbolo de r . En el instante O, el proceso está en la Configuración inicial d e su estado de verificación para la entrada x .

G, Para el instante p f n ) , M se encuentra en el estado qs y ha aceptando a x .

Para cada instante i, O s i < p(n) , la configuración de M en el tiempo i + 1, corresponde a la configuración en el tiempo i seguida por una aplicación simple de la función de

transformación 8 .

G6

Se puede observar que si los seis grupos de cláusulas desempeñan su función, entonces una asignación de satisfacibilidad deberá corresponder a un procesamiento aceptado de x. Todo lo que se necesita es mostrar como se construyen los grupos de cláusulas que desempeñan esa función [GAREY-79].

El grupo G, lo constituyen las cláusulas :

~

22 .. .

Page 37: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Introducción a 1 os-Problemas LIP-Cowietos.

P l i , 01 , B l i , 11, . . ., di. rl I , O s i s p ( n )

f ~ ~ r ~ T , a 3 3 7 1 , o s i s p ( n ) , o s .j < j' s I

La pr imera c l á u s u l a puede ser s a t i s f e c h a simul.táneamerite, s i , y s ó l o s i , p a r a cada i n s t a n t e i, M e s t á p o r l o menos en un e s t a d o . Las cl .6usulas r e s t a n t e s ( p ( n ) 4- 1) (r + 1) (r / 2) , pueden ser s a t i s f e c h a s simu1.táneament.e si., y s ó l o sj., M e s t á en más d e u n er;l;orlo e n un t iempo <z i.

Los grupos G, y G, se cons t ruyen d e una manera 3imi.lh.r. y l o s grupos G, y G, son más s imples , cada uno l o c o n s t i t u y e n c l á u s u l a s d e una s o l a l i t e r a l .

Grupo G, : 2

: W i i . -p(n) I , N i , -p(n) .+ 11, . . . , N i , p i n ) 4. 11 1 , o a i a p ( n )

Grupo G, :

caro, 0 1 1 , (H IO. 1.11, SiO, o, 011,

(SiO, 1, kill I (S[O, 2, kJ1, . . . , S f O , 1 1 , k,,li,

l S [ O . n + l , 011.íSi0, n + 2 , 011, . . . , íS l0 , p ( n ) + l . , 011

Grupo G, :

í B i p ( n ) , 11)

E l grupo G,, e l c u a l a s e g u r a que cada c o n f i g u r a c i ó n d e l p roceso es l a c o n f i g u r a c i ó n d e l a e t a p a a n t e r i o r , s e g u i d a por un paso s.imp1.e d e l programa

M b a j o l a s r e g l a s d e t r a n s f o r m a c i ó n 8 , es un poco más complejo y se s u b d i v i d e en dos subgrupos .

E l p r imer subgrupo do G,, g$rant i .za que s i I.% cabeza L IE no esta s o b r e 1.a c e l d a j e n e l momento i, en tonces e l s imbolo en l a c e l d a j no se modifica

23 .. .

Page 38: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Introduaaión a los Problemae NP-Cowletos.

entre los tiempos i e i t 1. Las cláusulas que integran este subgrupo son:

(sti, J~ ir, H [ i , j l , S [ i + 1, j, 111 o s isp(n) -p('n) s j s p(n) + 1 0 s l s v

Para todo momento i, celda j, y símbolo C,, si la cabeza L/E no se encuentra sobre la celda j, y la celda j contiene S, en el comento i, pero no en el momento i + 1, entonces la cláusula anterior basada en i, j, y 1, no se satisface, de otra manera, si será satisfecha. Las Z(p(n)+l)'(v+l) diferentes cláusulas que integran este subgrupo desempeñan esta función.

EL subgrupo restante de G,, asegura que los cambios de una configuración

a la siguiente, son acordes con la función de transición ( 8 ) de M. Para cada cuádrupla de transici6n (i, j, k, 1) con rangos :

\

O s i < p(n) -p(n) s j spin) + 1

O s k s r 0 s l s v

el subgrupo contiene las siguientes cl.áusulas :

p[i., s l i , j, lT, N i + 1, j + All

Donde : si qk E Q - [q8, q,1 , entonces el valor de A , k', y l', son

tales que 8 (qk, S1) = (qk, Sl., A) , y si q E lqs, q,l , entonces A = O , k' = X, y 1' = 1. Las 6(p(n)) (p(n)+í) (rti) f v + l ) diferentes cláiisulas que integran este subgrupo, establecen la restricción deseada..

De esta manera, se construyen los seis grupos de cláusulas que desempeñan

el conjunto de restricciones previamente establecidas. Si % , E L , entonces, existe un procesamiento aceptado de M para x de una longitud menor o igual a pfn). Este proceso, dada la interpretación de las variables, impone una asignación de valores de verdad que satisface todas

las cláusulas en c =

La construcción de c es tal que cualquier asignación de satisfacibilidad U G~ U G~ U G~ U'G, U G~ :

24 .. .

Page 39: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Introducaión a lor Probl 'emie NP-Completos. - ~ - - .

que s a t i s f a c e a C debe c o r r e s p o n d e r a un p rocesamien to acep tado d e M para x , o s e a f , (x) t i e n e una a s i g n a c i ó n d e s a t i s f a c i l , i l i d a d s i , y só lo s i , X E L .

Todo 1.0 que r e s t a es m o s t r a r que para a l g h l e n g u a j e L, . f , , ( x ) puede ser

c o n s t r u i d o en un- t iempo aco tado p o r una func ión polinórnj ca d e n (n = 1x1) . Dado L, se s e l e c c i o n a un programa M n a r a una MNDT, que reconozca L en un t iempo aco tado por un pol inomio p ( n o es n e c e s a r i o e n c o n t r a r este MNBT e s p e c i f i c a , en un t iempo po l inómico , so lamente es n e c e s a r i o d e m o s t r a r q u e l a t ransformación deseada f , ex i s t e ) .

La l i m i t a c i ó n pol.inómica d e es te procesamien to se e s t a b l e c e r á inmediatamente una vez que se miiestre que l a l o n g i t u d [f,,] e s t á aco tada h a c i a a r r i b a p o r una func ión po1inónii:ca d e 11, donde l a l o n g i t u d [I] ref le ja l a l o n g i t u d d e una cadena c o d i f i c a d a d e l a i n s t a n c i a I, b a j o un esquema r a z o n a b l e d e c o d i f i c a c i ó n . Por ejernpl.0, una func ión d e l o n g i t u d 1:azonable pa ra SAT p o d r í a ser : l C J l * IC1 . FJj.tigiina cláus1il.a puede c o n t e n e r mas dé

2 * IUI l i t e r a l e s , y e l número d e oj.nibol.os r e q u e r i d o s , p a r a d e s c r i b i r una l i t e r a l i n d i v i d u a l , 3ol.ameiite agrega un f a c t o r , re1.ai:j.vameiite pequeño, d e

log IuI , e l cual. puede ser i.gnorado cuando se t k a b a j ñ con ].imites pol inómicos . como i- y v son f j - j o s , y só1.o p u e d m c o n t r j . b u i r con f a c % o r e s c o n s t a n t e s a

I u I y IC/ , se t i . ene q u e 101 = ü(p ínP) , y IC1 = o ( . p ( n i 2 ) , p o r 1.0 t -anto,

' l a 1ongi. tud d e [ f , ( x ) l = I L r ( * IC\ = O ( p ( r f l 4 ) , l a c u a l está aco tada p o r una

func ión pol inómica d e 11 . Entonces, l ~ a transformaci.Ón .f, puede ser r e a l i z a d a p o r un' a1,goritrno d e t iempo pol.i.nóiriico, y se puede Conc lu i r que

V L E NP, €,: (L) - . L ~ ~ ~ , l o cual. i.niplica que SAT o s NP-Completo

[GP.REY-79] .U

Pos te r io rmente , se han formal.i.zado sej.s problemas NP-Compl.etos, que son u t i l i z a d o s p a r a demos t ra r que un problema n es NP-Camplei:» [ G A R E Y - 7 9 ] , el, 1.a Figura #6 se p r e s e n t a e l diagrama d e l a d e r i v a c i ó n d e 1.0s sei.s problemas, donde: 3CAT, E 3 una h s t a n c i a de SAT p e r o e l tamaño d o l c o n j u n t o d e p o s i b l e s v a l o r e s d e verdad es 3 . P3D, Corresponde a l pareñnii.ento d e p a t r o n e s d e 3 c o n j u n t o s . CV, co r responde a l problema 'de Cober tu ra (le Vér t ices . PARTICTON, s e a x = [Xi, X2, . . . r x,,) una co1.ecci.ón d e o b j e t o s con pesos

P = (PI, P,. . . . I Pn) se desea p a r t i c i o n a r a X e n r grupos

A = [ A , , 4, . . . , A,] b a j o ].as r e s t r i c c j . o n e s :

25

Page 40: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

IntrodYf~l6n a los Problemas NP-Completos.

r n

SATISFACIBIUDAD

I /\

CH, corresponde al CICLO DE HAMILTON. y, finalmente, el problema denominado CLIQUE.

\ CUQUE

PAU t CION cn 4

EL problema de diseño de REDES de costo mínimo, que se analiza en este trabajo, se reduce al problema CV; el problema de la Matemática cornbinatoria de la planificación, al de PARTICION.

1.9.- Conclusión.

La teoría de la NP-Completez no proporciona un método para obtener algoritmos determinísticos de tiempo polinómico para problemas NP-Completos. Tampoco demuestra que estos algoritmos no existan; su función es la de formalizar y demostrar la intratabilidad de ésta clase de problemas.

A partir de este momento, se prescindirá de la teoría de la NP-Completez, ya que no contribuye a la solución de los problemas NP-Completos.

'Para analizar los problemas y proponer soluciones prácticas, se utilizarán técnicas de búsqueda con heurística, en amplitud y profundidad, las cuales son presentadas en el siguiente capítulo, dentro del tema de Inteligencia Artificial.

.. . 26

Page 41: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

I n t r o d u o c i 6 ~ ~ Tnteligencia Artieiaial.

Capítulo 11. 1ntel.igenci.a A r t i f i c i a l .

11.1.- I n t r o d u c c i ó n .

La pal .abra i n t e l i g e n c i a p rocede d e l .I,aI;i.n i r i t e l 1 . : ¡ . ~ e ~ ~ i ~ j . a , que s i g n i f i c a l a capacidad d e e n t e n d e r o comprender. E s t a e t . imo~K"¿s"-~i?3 '5 i l u s t r a d o r a porque, en r e a l i d a d , s u o r i g e n se remonta a o t r o t é rmino l a t i n o , leaere, que s i g n i f i c a coger o escoger. D e a h í que i n t e l l i g e r e comunique el. s í g n i f i q a d o d e r e u n i r e lementos , e s c o g e r e n t r e e l l o s y f o r m a r i d e a s , comprender, conocer .

En pocos años , l a I n t e l i g e n c i a A r t j f i c i a l ~ (In) ha pasado d e ser un pequeño a s p e c t o de l a i n f o r m á t i c a a ser q u i z á s 1.a a p o r t a c i ó n más i m p o r t a n t e a l a informát i .ca desde e l i n v e n t o del. t r a n s k t o r .

. ^

E s d i f i c i . 1 e s p e c i f i c a r l a f e c h a e x a c t a d e l comj.enzo de l o que se denomina. I n t e l i g e n c i a A r t i . f i c i a l . . Qui.zás e l honor d e su nac imien to se deba a John,Von Neumann con l a invenc ión d e l a computadora d e programa a h a c e n a d o . Las p r imeras computadoras e r a n en r e a l i d a d máquinas que tenS.on que ser 1 i . t e r a l m e n t e renovadas en s u t o t a l i d a d para r e s o l v e r problemas d i f e r e n t e s . E l reconocimi ,ento d e Neumann d e que l o s , programas podían ser almacenados como d a t o s en l a memoria d e l a computadora y e j e c u t a d o s p o s t e r i o r m e n t e , c r e ó l a b a s e p a r a t o d a s l a s computadoras modernas. E l almacenamiento d e programas p e r m i t í a a 1.a computadora cambiar s u func ión r á p i d a y f á c i l m e n t e con sólo e j e c u t a r un nuevo programa.

S i n embargo, l o que normalmente se conoce como I A empezó h a c i a 1960, cuando, en e l Massachusse t t s I n s t i t u t e o f Technology (MIT), John McCarthy c r e ó e l LISP, e l p r imer l e n g u a j e d e i n v e s t i g a c i ó n d e n t r o d e l a i n t e l i g e n c i a a r t i f i c i a l .

A causa de l o s é x i t o s a p a r e n t e s d e l a I A , p a r e c í a que el. o b j e t i v o d e p r o d u c i r un programa que t u v i e r a una i n t e l i g e n c i a a i r t i f i .c j .a l casi-humana e s t a b a ya p o r p r o d u c i r s e , p e r o e s t o no f u e a s í .

Lo que no e r a f á c i l d e e n t e n d e r e n l o s s e s e n t a e r a l a d i ~ f i c u l . t a d d e plasmar e s t o s é x i t o s e s p e c í f i c o s en un programa i n t e l i g e n t e y f1exibl .e. Como l o s proyramadores i n t e n t a b a n i n c r e m e n t a r l a general izacj .ór i d e c i e r t o s programas, e s t o s i n t e n t o s r e q u e r í a n mayores r e c u r s o s i n f o r m á t i c o s de ,].os ya exis tentes . D e es te modo, cual .quier memoria e r a i n s u f i c i e n t e o e l t iempo d e e j e c u c i ó n r e s u l t a b a excesivamente l e n t o .

Hacia l a mitad d e l o s s e t e n t a , l as computadoras con g randes :memorias e r a n b a s t a n t e s f r e c u e n t e s y l a s v e l o c i d a d e s d e las computadoran se hab ían i.iicrementado enormemente. S i n embargo, i n c l u s o con e s t a s mejoras , e x i s t í a una i n e f i c a c i a i n h e r e n t e . Por ejemp1.0, con a l g o t a n simp1.e como e l ordenamiento d e una serie d e números. S i se usa u n ordenamiento p o r el método d e 1.a Imirbuja, e l .tiempo d e p roceso s e r á p r o p o r c i o n a l a N?, s i e n d o 1.I el. niimero d e e lementos . E s t o s i g n i f i c a . que si. o r d e n a r una l i s t a d e 10 e lementos 1.0 hace e n 1.00 segundos, una l i s t a d e 100 e lementos le l l e v a r í a n 1.0.000, y a s í sucesivamente . F.II a l g ú n momento, habrá una l i s t a d e e lementos que l l e v a r á n más t iempo o r d e n a r qiie l o que una persona normal puede v i v i r . N o importa l o r á p i d o que una computadora pueda, l l e g a r a ser, un a l g o r i t m o d e ordenación cuyo t iempo es p r o p o r c i o n a l a , N', l l e g a r í a , en un momento dado, a ser demasiadQ l e n t o . IJna mejor SoluCiÓn podr1.a ser e n c o n t r a r Un

. a l g o r i t m o de ordenac ión más e f i c i e n t e . Po r e jemplo e l tiempo d e . e jecuc ión d e un a l g o r i t m o d e ordenamiento r á p i d o es proporcional . a :

I:

, .

n 1-og, ín)

.. . 27

Page 42: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

I n t ~ d u a c i 6 n a l a Inteligencia A r t i f i c i a l .

Hacia finales de los setenta, se habían alcanzado ciertos éxitos en áreas especificas de la IA : procesamiento de lenguaje natural, representación de conocimiento y la resolución de problemas. Estos éxitos formaron la base para la introducción de uno de los primeros productos comerciales de la iA : el sieterna experto.

Actualmente, el énfasis en el campo de la IA pa,sa de la investigación a la aplicación. Este cambio significa que las técnicas de IA desarrolladas.en laboratorio usando un lenguaje de investigación, necesitarán hacerse efectivas usando diversos lenguajes de ámbito general para resolver aplicaciones reales.

11.2.- ALGUNOS DE LOS TEMAS EVNDAMENTALES DE LA INTELIGENCIA ARTIFICJAL SON:

Búsqueda de soluciones. Sistemas Expertos. Procesamiento del Lenguaje Natural. Reconocimiento de Modelos. Robótica. Aprendizaje de máquinas. Demostración de teoremas Lógica. Incertidumbre y "Lógica difusa". Redes Neuronales. Visión. Reconocimiento de voz.

Algunas de éstas áreas representan aplicaciones finales, tales como los sistemas expertos; otras como el reconocimiento del lenguaje natural y la búsqueda de soluciones, son bloques de la IA que se añaden a otros programas para llevar a cabo su función.

,Cuando nos referimos a la IA, una búsqueda se refiere a la búsqueda de soluciones a un problema. No significa encontrar una información específica dentro de una Base de Datos, sino inferir una.respuesta en base a cierta información.

Los sistemas expertos son el primer producto de la IA viable comercialmente. Un sistema experto tiene dos atributos principales. Primero, permite introducir información sobre un tema en una computadora. A esta información se le suele llamar Base de Conocimiento. Segundo : se interroga a esta base de conocimiento, y responde como si fuera un experto en la materia, que es en definitiva, la razón de su nombre. Uno de los primeros sistemas expertos fue MPCIN, desarrollado en la Universidad de Stanford, para ayudar a los médicos en el diagnóstico de enfermedades.

El procesamiento de lenguaje natural, es considerado como uno de los fines principales que la IA debe alcanzar, porque permite la comunicación con la computadora por medio del lenguaje humano en forma directai Esta es una de las áreas de mayor problemática ya que el lenguaje humano es ambiguo, y.la seniántica de una expresión depende del contexto.

El reconocimiento y relación de modelos es importante para varias aplicaciones incluidas la Robótica y el procesamiento de imágenes. Por ejemplo, cuando..se procesa una imagen digitalizada, ¿cómo puede determinar la computadora dónde termina un objeto y empieza otro?. Al igual que el procesamiento del lenguaje natural, el reconocimiento y relación de modelos, es necesario para que una computadora se interrelacione con el mundo real.

Aplicado a la robótica, la IA ayuda a que una computadora controle el movimiento usando un razonamiento espacial. Para los robots industriales, como los usados

, ,

_. . 28

Page 43: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Introduccib-la?,nteligencia a t i f i a i a l .

en e l ensamblaje d e an tomóvi les , l o s probl.emas de l a 1.A aparecen a l t r a t a r d e s u m i n i s t r a r l e s un movimiento n a t u r a l de mayor p r e c i s i ó n d e n t r o d e un c o n j u n t o de p o s i c i o n e s c o n c r e t a s . Los r o b o t s autónomos t i e n e n mayores probl.emas p a r a d e s e n v o l v e r s e en e l mundo r e a l , con s u s o b s t á c u l o s , s u c e s o s j . i iesperados y cambios d e ambiente .

O t r a d e l a s á r e a s d e mayor i n t e r é s d e 1.a IA es l a d e l a p r e n d i z a j e mecánico. A q u í se t r a t a de h a c e r que l o s programas aprendan d e sus p r o p i o s e r r o r e s , t e n i e n d o como b a s e l a o b s e r v a c i ó n y l a a u t o e v a l u a c i ó n . E s t o signi.f i .ca que la computadora s e a capaz d e b e n e f i c i a r s e d e su p r o p i a e x p e r i e n c i a .

11.3.- BUSQUEDA DE SOLUCIONES.

La búsqueda h e u r í s t i c a es una her ramien ta poderosa p a r a l a soJ.ricj.ón de problemas d i f í c i l e s . La e s t r a t e g i a usada p a r a c o n t r o l a r t a l búsqueda es, a'lmenudo, c r í t i ca p a r a d e t e r m i n a r l a e f e c t i v i d a d d e l a solucj.óii d e un probl.ema p a r t i c u l a r .

Dentro d e l a I A e x i s t e n d i f e r e n t e s métodos de búsqueda, se p r e s e n t a n a lgunos de e l l o s

- Generar y Comprobar (Genera te & T e s t ) . - Búsqueda en profundidad (Depth F i r s t ) . - Búsqueda a l o ancho (Bread th F j . r s t ) . - Ascensión d e C o l i n a s ( H i l l Climbing). . - Búsqueda p o r e l mejor nodo ( B e s t F i r s t ) . - Ramif ica r y Acota r (Branch and Round). - A'.

11.3.1.- Método de Generar y Comprobar [PEARL-OS]. E s una d e l a s más .=j.mpl.es, c o n s i s t e e n l o s s i g u i e n t e s pasos :

1. - Generar una s o l u c i ó n posih1.e.. Para a lgunos problemas, e s t o s i g n i f i c a g e n e r a r un punto e s p e c i f i c o e n e l e s p a c i o d e l problema. Para o t r o s s i g n i f i c a ' g e n e r a r un camino d e s d e e l e s t a d o i n i c i a l .

2 . - Comprobar s i é s t a es rea lmente una sol.iici,ón comparando e l pun to e l e g i d o , o e l punto f i n a l d e l camino, coil el. c o n j u n t o d e e s t a d o s meta a c e p t a b l e s .

3.- S i se ha l l e g a d o a una s o ~ . i i c i ó n , a c a b a r . De l o c o n t r a r i o , 11

v o l v e r al paso 1.

S i l a g e n e r a c i ó n d e s o l u c i o n e s p o s i b l e s se hace si.stemAkicamente, en tonces e l p roced imien to e n c o n t r a r á a lguna vez l a sol.ucióii, s i e s t a e x i s t e . Desafortunadamente, s i e l espaci .0 d e l probl.ema es muy ampl io , tomará demasiado t iempo e n c o n t r a r l a sol.iici.ón. '

E1 algor j . tmo de Genera r y Comprobar es un al.gor.ii:mo d e búsqueda en p rofund idad , p u e s t o que deben g e n e r a r s e l a s sol.uci.ones completas a n t e s de ser eva luadas . En s u forma más s i s t e m á t i c a , es sj.mpl.emente una búsqueda

' e x h a u s t i v a e n e l e s p a c i o d e hiisqueda.

11.3.2.- Ascensión de Colinas [PF,ARL,-85].

E s una v a r i a n t e d e g e n e r a r y comp,rohar en e l c u a l l a r e a l i m e n t a c i ó n d e l p roced imien to d e comprobación se usa p a r a ayudar a l generador a d e c i d i r en qué d i r e c c i ó n debe moverse e n el. e s p a c i o d e húsqiieda.

.< , 29

Page 44: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Intrduccibn a la Inteligencia Artificial.

Procedimiento.

1.- Generar la primera aproximación o iteración propuesta de la ' . misma forma que se haría en el procedimiento de- generar-y-comprobar. Ver si es una solución. Si lo es; terminar. De lo contrario, continuar.

2.- Una vez obtenida dicha solución, aplicar la heurística correspondiente al problema que se intenta resolver para generar un nuevo conjunto de soluciones propuestas.

3.- Para cada elemento del conjunto, hacer lo siguiente:' 1.- ' Enviarlo a la función de comprobación. Si es la

solución, se acaba. 2.- Si no lo es, ver si está más cerca de la solución que

cualquiera de los elementos comprobados hasta el .momento. Si lo.es, recordarla. Si no lo es, olvidarla.

Tomar el mejor elemento encontrado anteriormente y usarlo como la siguiente solución propuesta. Este paso corresponde a un movimiento a través del espacio del problema en la dirección que parece conducir con mayor rapidez hacia la meta.

4 . - ' t -

5.- Regresar al paso número 2 .

11.3.3.7 Búsqueda a lo ancho [PFARL-85].

Tanto el método de generar y comprobar como el de ascenso de la colina, son procedimientos de búsqueda en profundidad. Tales procedimientos suelen ser fáciles de realizar y pueden llegar muy rápidamente a una buena solución. Pero suelen desperdiciar mucho tiempo buscando en caminos infructuosos . Otra estrategia es la búsqueda en amplitud, la cual garantiza que encontraremos una solución, si ésta existe, suponiendo que exista un número finito de ramas del árbol.

Es fácil de demostrar, que si existe una solución, entonces existe un camino de longitud finita ( n ) , desde el estado inicial hasta el estado meta. La búsqueda en amplitud, explorará todos los caminos de longitud 1, de los que hay un número finito. Entonces mirará todos los caminos de longitud 2, de los que también hay un número finito. Continuará hasta que haya explorado todos los caminos de longitud n, en cuyo momento habrá encontrado una solución. Sin embargo, posee ciertas deficiencias :

1.- Requiere mucha memoria. E l número de nodos en cada nivel del árbol se incrementa exponencialmente con el número del nivel, y todos deben almacenarse a la vez.

,

2.- Requiere mucho trabajo, especialmente si el camino más corto a una solución es muy largo, puesto que el número de nodos que necesita examinar se incrementa exponencialmente con la longitud del camino.

3.- Los operadores irrelevantes o redundantes' incrementarán grandemente el número de nodos que deben explorarse.

La búsqueda en amplitud es particularmente inapropiada en situaciones donde existen muchos caminos que conducen a soluciones, y cada uno de ellos es muy

Asociados a la heurística utilizada.

.< . 30

Page 45: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Introducción a l a Inteligencia ñ r t i f i o i a l .

largo. En estos casos, es probable que la búsqueda en profundidad encuentre 1.3 solución con mayor rapidez.

La búsqueda por el mejor nodo es una forma de combinar las ventajas de las búsquedas en profundidad y de anchura en un método único.

En cada paso del proceso de búsqueda por el mejor nodo, selecci~onamos el más prometedor de aquellos nodos que se han generado hasta el momento. Esto se realiza aplicando una función heurística apropiada a cada uno de ellos. Entonces, se expande el nodo seleccionado utilizando las reglas para generar sus sucesores. Si uno de ellos es una solución, se termina. Si no, todos esos nuevos nodos se añaden al conjunto de nodos generados hasta ahora. Se selecciona el nodo más prometedor y el proceso continua. Lo que sucede usualmente, es que se realiza un poco de búsqueda en profundidad mientras se explora una rama prometedora. Pero ocasionalmente, si no se encuentra una solución, esa rama empezará ser mirada como menos prometedora que otra de las ramas de más alto nivel que se han ignorado hasta ahora.

En este punto, se explorará la rama previamente ignorada, que ahora parece más prometedora. Pero la rama hija no ha sido olvidada. Su último nodo permanece en un conjunto de nodos generados, pero no expandidos. La búsqueda puede volver a él siempre que los demás lleguen a ser tan malos que éste sea de nuevo el

11.3.4.- Búsqueda por el mejor nodo: Grafos O [HOROWITZ-78] [PEARL-85].

camino más prometedor.* ~. 11,

Este método realiza la búsqueda a través de un árbol; sin embargo, a veces es conveniente realizar la búsqueda en un grafo,.de tal manera que no se persigan caminos duplicados. El algoritmo A' es una, modificación del algoritmo de búsqueda por el mejor nodo para lograr la búsqueda a través de'un grafo:

Este algoritmo hace la búsqueda en un grafo dirigido en el cual cada nodo representa un punto del espacio de soluciones' del problema. Cada nodo contendrá, además de una descripción del estado del problema que presenta, una indicación acerca de cuán.prometedor es, un enlace paterno que apunta al mejor nodo desde el que se ha generado el actual. El enlace paterno hace posible restablecer un camino hacia una meta una vez que se ha encontrado dicha meta. La lista de sucesores hará posible, si se ha encontrado un mejor camino a un nodo ya existente, propagar dicha mejora a sus sucesores.

El término se refiere a todos los métodos de búsqueda en el espacio de soluciones, en el cual, todos los hijos de un nodo E son generados antes que cualquier otro nodo vivo pueda conectarse al nodo E .

Las estrategias de búsqueda en profundidad y a lo ancho, en las cuales l a exploración de un nuevo nodo no inicia hasta que el nodo actual sea completamente explorado, generalizan la técnica Branch & Bound.

I

. . 11.3.5.- Ramificar y Acotar [HOROWITZ-781 [PEARL-85]. I

Análisis de los Aigoritmos de Búsqueda. ¿ Qué tan eficiente es su ejecución ?. ¿ Qué tan buena respuesta se obtiene ?

Tradicionalmente, el enfoque de la I.A. respecto al estudio de los algoritmos de resolución de problemas ha sido: codificar los algoritmos, ejecutarlos en un computador, y observar su conducta en algunos problemas sencillos. Esto contrasta con el enfoque de la ciencia de la computación, en donde el énfasis está en el análisis matemático de algoritmos, o, si eso no es posible, en 1a.realización de análisis estadisticos de sus logros sobre un conjunto de problemas cuidadosamente

31

Page 46: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Introducción a la Inteligencia Artificial.

seleccionados.

Existen como mínimo tres razones para ese enfoque en I.A.

l).- Es mucho más ameno ver como un programa hace algo inteligente que demostrar si puede hacerlo.

2 ) .- Los dominios de la I.A. son, por lo general, lo suficientemente complejos para que no sea normalmente posible producir una prueba analítica convincente de que el procedimiento funcionará. Con frecuencia es imposible describir con suficiente claridad el rango de los ,problemas para hacer un análisis estadistico sobre el comportamiento significativo del programa.

La tercera razón, también importante, es: la compleja estructura del. conocimiento usado en la mayoría de los programas de I.A. hace muy arduo el análisis matemático de los programas correspondientes.

Hasta la fecha, los problemas NP-Completos no se pueden resolver por medio de un algoritmo deterministic0 en un tiempo polinómico, y la teoría de la NP-Completez no proporciona un método para soluciones prácticas. Sin embargo existen problemas reales, que se clasifican dentro de los NP-Completos, para los cuales es necesario encontrar una solución práctica, ante la imposibilidad de obtener l a solución óptima, se acepta como buen algoritmo aquel que proporciona, en un tiempo polinómico, una solución que, por lo general', cumple con :

sopt - s,,, < k , kEZ' sop ,

Se dice que un algoritmo 1 es un algoritmo de aproximación a b s o l u t a para un

problema II cuando el tiempo consumido para resolver un problema de tamaño n ' .

está acotado por un polinomio y la solución obtenida difiere de la solución 6ptima en una cantidad constante k, para toda n, k enteras:

T,(n) < p ( n ) V n E z' y IS' - Sil 5 k, para todas las instancias ,i' del

problema. S' corresponde a la solución óptima, S corresponde a la solución aproximada, k es una constante entera.

k E Zf

Los métodos de búsqueda utilizados en Inteligencia Artificial, permiten obtener soluciones aproximadas a la óptima en un tiempo polinómico. En este trabajo se utilizará búsqueda en profundidad y a lo ancho con heurística para acotar el espacio de búsqueda para los problemas de redes y de la matemática combinatoria de la planificación.

4N6tese que existe la posibilidad de que los algoritmos iiii.l.izados en Inteligencia A r t i e i c k l no converjan hac ia una solución.

32

Page 47: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Problema de Redes:

Capítulo 111. A n á l i s i s . d e l probl~ema de Redes.

111.1.- I n t r o d u c c i ó n .

RED : Se c o n s i d e r a una red a u n grupo de computadoras, y t e r m i n a l e s e n g e n e r a l , i n t e r c o n e c t a d o s a t r a v é s d e uno o v a r i o s caminos o medios de t r a n s m i s i ó n . L a mayoría d e l a s veces, es te medio d e t r a n s m i s i ó n es l a l l n e a t e l e f ó n i c a .

Las r e d e s t j .enen una fi.na1.i.dad concre ' t a : t r a n s f e r i r e i . i i tercambiar d a t o s e n t r e ordenadores y t e r m i n a l e s .

111.2.- Conceptos Bás icos :

111.2.1.- Arbol de expansión mínima (AEM) [HOROWITZ-78] . E s e l á r b o l que incl.uye a todos l o s nodos d e l a r ed , s i n r e s t r i c c i o n e s . Un á r b o l de expans ión mínima d e c o s t o mínimo, se emplea como l a cota infer ior para cualquier solución bajo alguna restr icc ión.

111.2.2.- Secuenc ia s . Una secuenc ia es l a conca tenac ión d e n - 2 i d e n t i f i c a d o r e s de nodos d e iin á r b o l ~ ~~~~

que pe rmi t en i d e n t i f i c a r l o unívocamente. Para demost ra r que exist .e una func ión d e t r a s fo rmac ión 1.:1 se demost ra rá que p a r a cada á r b o l cor responde una secuenc ia d e f i n i d a , y que p a r a cada secuenc ia cor responde un á r b o l :

Figura #7

Figura #0 . , El. número de á r b o l e s , no d i r i g i d o s ,

d i f e r e n t e s que se puede c o n s t r u i r con 4 nodos es d e 16 y son l o s s?.guientes :

Coniu4it.o de árlmles d i . fnrenI~c3 quc .s? pueden formo!: con c u a t m nodos, y sus seciiciicia:; respeci:j.vas.

Para o b t e n e r l a s e c u e n c i a de iin árbol., se numeran l o s ncdos d e l á r b o l en orden a scenden te y se procede d e 1.a s i g u i e n t e manera :

a ) .- Tomar e l nodo d e menor níimero (v) que sÓ1.o es té conec tado a o t r o nodo ( p ) . b ) .- El.iminar d e l árbol., e l nodo v. Colocar eri l a secuenci.a e l nodo p. c ) . - S i e l número d e nodos en á r b o l es > 2 j.r al paso a .

33 .< .

. .

Page 48: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

De esta manera se obtiene una secuencia que contiene N - 2 nodos de un total de N nodos que integran el árbol. Se denominan nodos de secuencia (NS) a los nodos que conforman la secuencia. y, no relacionados (NR), a los nodos restantes.

El algoritmo para convertir la secuencia en árbol es el siguiente :

a).- Se contabilizan las veces que aparece cada nodo en la secuencia (cuenta de cada nodo). Los nodos NR poseen una cuenta de O. b).- Se colocan los nodos en orden ascendente. c).- Se toma el primer nodo de NS (a). d) .- Se asocia con el primer nodo de la lista ordenada que posea una cuenta de O (b). .e).- Se decrementa la cuenta de l o s nodos a y b. f).- se procede con el siguiente nodo de la secuencia NS y se ejecuta el paso d. Si se han procesada todos los nodos de la secuencia, se asocian los dos nodos de la lista ordenada que poseen cuenta igual a O.

Tomando como referencia el árbol #l de la , Figura #7 el proceso de conversión de árbol/secuencia y secuencia/árbol, se presenta en la Figura #9 y Figura #10 respectivamente.

m ti)

F.igura # 9 Conversibn de arbol a secuencia.

. .

c u m 1 .>I

1 ->o 22.- s.>. 4.>0 1 .>. 2.>- 32..

.4.>:

ConversiOn de secuencia a arbol. Figura #lo

- Caracterlsticas de las secuencias. - Una secuencia representa un árbol, por lo tanto NO POSEE CJCI,OS - #NS.

Es el número de nodos diferentes que conforman la secuencia, es la cardinalidad de NS.

- #NR. Es el número de nodos diferentes que no forman parte de es la cardinalidad de NR.

la secuencia,

- 4. g representa el grado del árbol.

_. . 34

Page 49: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Problema de Redes.

- A l t u r a d e l á r b o l a p a r t i r d e l a secuenc ia (NS).

En cada e t a p a d e c o n s t r u c c i ó n d e 1.a s e c u e n c i a , se el.i.mina tina h o j a . NR = número d e h o j a s , #NS número d e nodos i n t e r i o r e s , l a a l t u r a máxj.nia e s t á dada por #NS + 1. La a l t u r a mínima se puede o b t e n e r suponiendo q u e e l á c b o l e s t á balanceado' y que posee un grado, en cada nodo i n t e r i o r , i g u a l a l grado d e l árbol. Esto d e f i n e e l rango e n e l c u a l f l u c t ú a l a a l t u r a r e a l d e l á r b o l .

l o que i m p l i c a :

111.3.- D e s c r i p c i ó n del Problema.

Se t i e n e n a).- N nodos, d e l o s c u a l e s uno es e l concen t rador , unidad d e p roceso , o c e n t r o d e swi tcheo, e tc .

.b) .- Una m a t r i z s i m h t r i c a d e c o s t o s d e N x N, donde e l e lemento Ei,.,

cor responde al. c o s t o d e 1.a l i g a d i r e c t a e n t r e e l nodo, y e l nodo,

c) . - Un v e c t o r en e l que cada e lemento cor responde al. número d e unidades d e t r á f i c o generadas p o r cada nodo.

d).- Una capac idad f i s i c a d e tranami.sión, pa ra el t i p o d e l í n e a empleada en l a conexión e ) . - Un c o n j u n t o de r e s t r i c c i o n e s .

El problema básj.co c o n s i s t e en d e t e r m i n a r la conf igurac . ión d e la red de menor costo, que no posee lazos (es un á r b o l ) , dados :

1) n - 1 nodos, donde el. nodo i e s t á ubicado en l a j.-ésima p o s i c i ó n , pa ra i = 2, 3, . . n.

2 ) Un concen t rador o unidad d e proceso, e l c u a l se c o n s i d e r a como e n nodo 1 ( i = 1) y l a unidad d e t r á f i . c o que genera igual. a c e r o .

3 ) Una m a t r i z s i m é t r i c a d e c o s t o s d e n x n, donde e l e l e m e n t o i, j es e l c o s t o d e l a l i g a d i r e c t a e n t r e en nodo i y e l nodo j.

4 ) Un número d e unidades d e t r á f i c o generado p o r cada nodo,, p a r a j. = 2, 3, ... n .

Bajo l a s s i g u i e n t e s r e s t r i c c i o n e s ! . .

1) Una capac idad máxima d e t r a n s m i s i ó n para e l t i p o d e 1.ínea empleada para l a conexión, que se c o n s i d e r a l a misma p a r a t o d a s l a s l í n e a s .

Es to s i g n i f i c a qiie todos 1.0s h o j a s se encuen t ran a '1 a misma di.8tancj.a d e l nodo' r a í z , con una to1.erancj.a de +. 1.

35 .. .

Page 50: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

P r o b l e m de Redes.

2 ) Un número máximo de nodos conectadas a o t r o nodo. 3 ) Una capacidad máxima y un número máximo de nodos conectados a otro

nodo.

El diseño de Redes de Costo Mínimo es NP ya que puede ser resuelto por un algoritmo No-Determinístico en un tiempo polinómico, y puede ser reducido a Cobertura de Vértice (CV) [GAREY-79], como se indicó en 1II.ü.

111.4.- Trabajos Asociados Desarrollados.

En esta área, se han realizado diversos intentos para diseñar algoritmos utilizando técnicas de I.A. con heurística. Como son :

Algoritmo de ECSAU-WILLIAMS. Algoritmo de PRIM. Alooritmo de KRUSKAL. Algoritmo de CHANDY L RUCCE1,L. Alooritmo UNIFICADO DE CHOU. Algoritmo de JTJ.

Los métodos se pueden clasificar en dos grupos :

a) Encuentran la mejor solución, si ésta existe, pero requieren de mucho tiempo de proceso. * Fuerza Bruta. * Branch L Bound. * Búsqueda en Profundidad y a ¡o ancho con heurística.

b) Encuentran una solución ( a veces), pero en general no es la de menor costo, en un tiempo razonable. * ECCAU-WILLIAMS. * PRIM. * KRUSKAL. * ALGORITMO UNIFICADO DE, CHOU. ALGORITMO DE JTJ.

Breve descripción de los métodos.

Algoritmo de Essau-Williams [CHOU-74]. inicialmente, todos los nodos, incl.uyendo el concentrador, se encuentran separados. Se define una función t,, ,, como el costo mínimo de conectar el componente i al concentrador, menos el costo de conectar los nodos i y j. En cada estado, se encuentra t,., ,, = max (i, j) y se conecta la línea (i*, j*), formando un nuevo componente.

Inicialmente, sólo el enlace de menor costo está en el Arbol de Expansión Mínima ( A E M ) . En cada etapa, se selecciona el enlace ( i , j), donde el nodo, está en el AEM, y el nodo no pertenece al AEM, y el costo del enlace (i, j) es el mínimo de todos los enlaces (kl, k2) para

Algoritmo de Prim [CHOU-74].

nodox, E AEM, y nodo,.. B AEM .

Algoritmo de Kruskal [CHOU-741. Inicialmente, cada terminal es un componente aislado. En cada etapa, se selecciona el menor costo de enlazar dos componentes diferentes. En este método, se van tomando, de la lista de costos, enlaces que

36

Page 51: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

. . iJ , . 'I

p u d i e r a p r o c e s a r 100 m i l l o n e s d e 83.12531171 Milenios.

Trad ic iona lmente , l o s métodos que!

I ' c o n f i g u r a c i o n e s p o r segundo, se r e q u e r i r í a n

:se han empleado p a r a d i s e ñ a r r e d e s d e c o s t o

Page 52: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

I1 aco tada , t o d o e s t o s i n u t i l i z a r l a t é c n i c a d e b a c k t r a c k i n g con l o c u a l e l método r e q u i e r e menos memoria, que l a implementación e r a d i c i o n a l d e búsquedas en p rofund idad y a l o ancho.

D e f i n i c i o n e s : i !I - G r a d o Max Nodos: r e p r e s e n t a e l máximo grado que puede p o s e e r un nodo d e l á r b o l sF lucrón . - G,,,Mn-ni,z~ E s e l g r a d o mlnimo q u e . d e b e p o s e e r e1 nodo r a í z , cuando se t i e n e l a r e s t r i c c i ó n d e capac idad , este v a l o r , p o r l o g e n e r a l , es mayor que 1. - &-Sup: E s l a cota s u p e r i o r ( c o s t o d e l a mejor s o l u c i ó n o b t e n i d a ) . E s t e v a l o r s i r v e p a r a d e t e r m i n a r cuando una s o l u c i ó n . ' p a r c i a l no puede m e j o r a r l a mejor s o l u c i ó n o b t e n i d a . S i ,el c o s t o mínimo aprokimado d e una f a m i l ~ i a r e b a s a

puede d i s m i n u i r és ta c o t a s u p e ' r i o r .

A cada nodo l e cor responde un reng lón d e l a tabl.ar En cada r e n g l ó n se c o l o c a n d e manera ordenada ( a s c e n d e n t e p o r c o s t o ) , d e i z q u i e r d a a d e r e c h a , tres d a t o s : e l c o s t o d e un e n l a c e , e l nodo a s o c i a d o a l e n l a c e ' y e l c o s t o acumulado d e l o s

' e n l a c e s d e t o d a s l a s columnas d e l a i z q u i e r d a ! Cada columna d e l a t a b l a r e p r e s e n t a una familia. Con e s t a t a b l a se pueden o b t e n e r d e una manera & p i d a l o s r menores e n l a c e s a s o c i a d o s a un nodo, e l c o s t o d e cada e n l a c e y el c o s t o acumulado d e e l l o s . También, p o r medio d e , e s t a t a b l a , es posibj le d e t e r m i n a r c u a l es l a configuración parcial de manor costo6 (o costo mí- aproxiraado de la familia) para un á r b o l d e g r a d o r. Por e jemplo, p a r a l a t a b l a ampl iada p r e s e n t a d a en l a pág ina 48, e l c o s t o d e c o n e c t a r l o s 4 menores e n l a c e s a l nodo 1 es : 62. nos e n l a c e s se forman con l o s nodos 2, 5 , 8 y 10. Ahora, s i s e d e s e a l a c o n f i g u r b c i ó n d e menor c o s t o p a r a un á r b o l p a r c i a l d e g rado 6, c o r r e s p o n d e r í a a l nodo:113 ser l a r a í z y los e n l a c e s se e s t a b l e c e r í a n con los nodos 1 2 , 9, 5 , 11. 14'$ 2 . E l c o s t o d e éste á r b o l

ii

e s t a c o t a , se d e s c a r t a l a f a m i l i a , ya que d e e s a f a m i l i a

- Tabla ampliada. Es una t a b l a que posee

11:

. p a r c i a l se r ía : 133. I[ I! 111.7.- Método:

De manera i n f o r m a l , es método b o n s i s t e e n : Primero o b t e n e r l a c o t a mínima d e l o s c o s t o s d e l a s s ' o l u c i o n e s . E s t a . l a de te rmina e l c o s t o d e l á r b o l d e expans ión mínima ( C W M ) . Ninguna c o n f i g u r a c i ó n con o s i n a r e s t r i c c i o n e s podrá t e n e r un c o s t o menor a l CAEM; Se i n i c i a l i z a l a c o t a s u p e r i o r Lim-Sup con un val.07 muy grande ( i r i f h i t o ) .

I( Pos te r io rmente , se de te rminan dos c a r a c t e r í s t i c a s ' s o l u c i ó n :

- Grado' mínimo d e l nodo r a í z , cuando se t i e n e de l a l í n e a , es mayor a 1, e n caso c o n t r a r i o @s 1. - Grado máximo de l nodo r a í z , cuando se t i e n e ;+a r e s t r i c c i ó n p o r número d e nodos conec tados a o t r o nodo es menor a l número t o t a l d e nodos, e n c a s o c o n t r a r i o es i g u a l a l número t o t a l de no$os. E s t e valor puede ser a c t u a l i z a d o d u r a n t e l a e j e c u c i ó n d e l método, como se v e r á más a d e l a n t e .

I .

Cuando se t i e n e n ambas r e s t r i c c i o n e s , puede o c u r r i r e l g rado mínimo d e l nodo

II E s t e v a l o r cor responde a l menor v a l o r d e cada columna. Tomando como r e f e r e n c i a l a t a b l a d e l a pág ina 4 8 , e l c o s t o minimoyaproximado 'I d e l a f a m i l i a d e grado 6 s e r í a 133. E s t a c o n f i g u r a c i ó n t e n d r í a ' a o m o 1 ; r a i z e l nodo 3 .

N ú m e r o d e e n l a c e s que posee .

_. . 4 0 ~

'I

'I

Page 53: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

.

II I Ya que se de te rminó e l rango e n qu l o c a l i z a r l a s f a m i l i a s de mayor es, s o l u c i o n e s p a r c i a l e s d e menor] comprendido d e n t r o de este raiigo,!1 ampliada.

Aquí, e l método p r o p u e s t o p o s e e r mas d e dos nodos como

Después, e l método c o n e c t a uno o d y á r b o l p a r c i a l s i n c o n s i d e r a r e l nbco conectado ( a ) 9 . En e s t a e t a p a , se

Finalmente , s i e l á r b o l r e s u l t a n t e t r l o l o s e n l a c e s f a l t a n t e s , tomándolos,

I

11 ,

. . . .

r a i z s e a mayor que o d e nodos conec tados a o t r o nodo. En este caso, e l s i s t e m a no

v a r í a e l grado del. nodo r a í z , s e . p r o c e d e a f a & i b i . l i d a d que cumplen con esta condic ión , e s t o

c o s t o , en l a s que 1.a r a í z posea un grado e s t o se l o g r a con el. a u x i l i o d e l a t a b l a

(RPE),.iI;enera'Un J r b o l d e a l t u r a 1, e l cual. puede

enl.aCe de menor c o s t o uno a cada nodo d e l r a i z ( a ) , y o t r o a s o c i a d o a l nodo r e c i é n

cor responde a una so l i i c ión , se L e agregan secuencial .mente, d e 3.a L i s t a d e c o s t o s de

c o n f i g u r a c i ó d i n i c i a l . *

g l n e r a un á r b o l d e a l t u r a 3 .

a l g o r i t m o s t e r m i n a , e n c a s o c o n t r a i i ! (L im-sup ) a c t u a l , en tonces a c t u a l i z a como l a mejor s o l u c i ó n . ,I I.

!I, Aquí, nuevamente se r e c u r r e a l a Fa d e l a s f a m i l i a s cuyos c o s t o s parc: p e r m i t e r e d u c i r e l rango d e l g rado ?e permi.te r e d u c i r e l grado máximo de, '

I Descr ipc ión formal d e l método RPE. , I

ii E s t a c a r a c t e r i s t i c a e 3 una d<

RPE y l o s métodos p rev iamente me'r agregando un e n l a c e a l a vez a l á r b

s i es que e l e n l a c e e x i s t e .

'O Dependiendo d e l c a s o d e anát d e l a l i n e a , o combinaci.ón d e ambos

si e l c o s t o es i g u a l a1 CAEM en tonces e l ,i este c o s t o es menor que l a c o t a s u p e r i o r zota s u p e r i o r y se c o n s i d e r a e s t a s o l u c i ó n

a ampliada p a r a d e t e r m i n a r e l mayor grado .es sean menores a l Lim-Sup. E s t e grado iodo r a í z , c a l d u l a d o previamente , también I nodos i n t e r i o r e s .

)o1 d e expansión minima (AEM) cuyo c o s t o i t o d e c u a l q u i e r s o l u c i ó n . Pos te r io rmente ,

nodo uno l a r a í z , con un g rado i g u a l a l 3ra, se e s t á considerando, l a coiiexi6n d e . E s t e á r b o l s i rve como b a s e p a r a l a f a s e

:n lace p a r a cada nodo d e l á r b o l p a r c i a l , e n l a c e s cumplan con l a s r e s t r i c c i o n e s

aces se conec tan es e l s i g u i e n t e , : Se . i o r que será d e 1 a Grado-Max-Nodos, y se

a s p r j n c i p a l e s d i f e r e n c i a s e n t r e el método onados, l o s cuales realizan su proceso s o l u c i ó n .

i.s, por r e s t r i c c i ó n d e nodos, d e capac idad

41

Page 54: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

II procesan los mejores 1, 2, ..., Grado Max Nodos enl,?ces correspondientes a cada nodo. En la fase tres, se agregan 10s eiilaces restantes al árbol de solución parcial, tomados, en forma secuencial, de la lista pe trabajo el de menor costo que no viole restricciones, hasta completar n - 1 enlaces en el árbol parcial.

I 111.7.1.- Fase 1. 111.7.1.1.- Primera parte.

I Pasos : 1) .- Obtención del costo del AEM (CAEM) que1,será considerado como

la cota mínima. Si el AEM cumple cqn las restricciones, entonces, es la solución y el algoritmo termina. El árbol de expansión mínima se genera tomando secuencialmente de la lista ordenada de costos, ciclo, se conecta hasta que se tienen (método de Kruskal) . Determinar el grado mínimo y máximo qu4 puede poseer el nodo raíz. Con esto se obtiene el rango de familias que deberán ser

2) .- consideradas como factibles. I1

n

II cuando no se tiene la restricción por-tráfico, este valor es 1.

- Ill :I/

G,,,,,,x-,,,, - Menor (NumMax-Nodos - I,:! G,,,,,,, n, G,) . G, es el mayor grado de familia cuyo costo mínimo a roximado

Se realiza un ciclo para procesar lasi familias de grado k, para k = G r a d o Min Nodoshasta Grado M a x Nodos. Esto significa que se forma ün 61301 parcial de grSdolik, de altura 1, siendo la raíz el nodo 1.

no exceda al costo de la mejor solución encontrada' P . 3 ) . -

'

rli , 3.1).- Determinar el costo mínimo aproximado para la ' familia de árboles de k hijos (m-K). Si CMA-K >=

Lim-Cup se descarta la familia !de árbolesI2.

3.2) .- Repetir el paso #3.1, con k = k + 1 hasta que se

obtenga una familia con costo mínimo aproximado < Lim-sup - i. si se encuentra Alguna familia con esta característica (familia Illfactible) , podría contener otra solución.de menor costo, en caso contrario, la solución es el á rbo l correspondiente a la cota superior.

- i

Después de algunas iteraciones.

l2 El llmite inferior de los costos de esta el costo cnlcii lado para una

la a c t i ~ a l , el, grado de l a solución. Cualquier configuración. que mejora la mejor solución generada hasta el momento. Esto implica r a í z es menor o igual a k.

.. . 42

Page 55: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Pasos p a r a p r o c e s a r una famiii.a II I, :

111.7 .1 .2 . - Fase 1. Segunda Parte.'I

l i s t a debe cumpl i r con1 I

Pasos : ,I '; 1) .- Generar una l i s t a d e

LT = C1' c,. . i

c , s c , < ... ski i: T a l que :

con l a fami1i.a. Es ta

f a c t i b l e d e á r b o l e s .

e n l a c e s p a r a t r a b a j a r (LT) e

.;, c, 1 8: .

Donde : C, se r e f i e r e a Lo9 n - 2 e n l a c e s d e menor c o s t o , tomados d e l a l i s t a completa d e enlalc, 's ; LT es l a l i s t a d e e n l a c e s selecc!lionados p a r a t r a b a j a r con e s t a I1 , a m i l i a d e á r b o l e s . E s t a l i s t a solbamente c o n t i e n e l o s e n l a c e s . c u y o " : o s t o p o d r í a mejora r l a s o l u c i ó n a c t u a l ; se

(L im-Sup) . 2 ) .- Formar un á r b o l d e cont i .ene a l nodo padre y sus

k menores e n l a c e s , d e n i v e l t res de menor c o s t o que .el c o s t o nodo' 1. y . .

111.7 .2 .- Fase 2. b a s e e l á r b o l p a r c i a l

se l e conectan

.-

111 .7 .3 .- Fase 3.

43 . .

Page 56: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Problema de Redes. I/

I/ f a m i l i a d e á r b o l e s . 3 ) . - S i se t i e n e n n - 1 e n l a c e s , y e l c o s t o d e e s t a s o l u c i ó n es i g u a l a l

CAEM, se e n c o n t r ó una s o l u c i ó n y e l allgoritmo t e r m i n a . s i e l c o s t o d e e s t a s o l u c i ó n es menor que Lim-SÜp, a c t u a l i z a r Lim-Sup, LT y Grado-Maximo-nodos . I!

'I

:I 111.8 .- Comportamiento d e l Método :

Dependiendo d e l a s r e s t r i c c i o n e s e s t a b l e c i d a s a : l a i n s t a n c i a del. problema, e l método se comporta de l a s i g u i e n t e manera :

111.8.1.- Caso a ) . - S i n r e s t r i c c i o n e s . La s o l u c i ó n es e l á r b o l d e expans ión mínima.

111.8 .2 . - Caso b ) . - R e s t r i c c i ó n por 'Número d e Nodos conec tados a o t r o nodo. Sea NumMaxNodos e l n h e r o máximo d e nod& conec tados a o t r o nodo, e l g rado d e l nodo r a í z f l u c t u a r á e n t r e 1 y;lNumMaxNodos, y p o r l o t a n t o , s e r á n l o s g rados d e l a s f a m i l i a s a p r o c e s a r . E l g rado i n t e r i o r p a r a l a s conex iones ; $ d e 1.a f a s e 2 también se ve a f e c t a d o p o r esta c o t a , r educ iendo e l ! n ú m e r o t o t a l d e i t e r a c i o n e s n e c e s a r i a s .

Sea CapLinea l a capac idad máxima d e l a 1 i ;nea d e comunicación d e l a r e d , y S u m T r a f i c o l a suma t o t a l d e l t r á f i c o ! l g e n e r a d o e n t o d a l a r e d . E l número mínimo d e ramas que debe t e n e r e l nodo r a í z se c a l c u l a con :

i!

1 1 111.8 .3 . - Caso c ) . - R e s t r i c c i ó n p o r t r á f i c o . !

II Adicionalmente , se c a l c u l a e l tamaño máyimo p a r a una rama (Tam-Rama) p o r medio d e l a suma d e l o s x e n l a c e s d e menor t r á f i c o que se aproximen más a l a capac idad d e l a l í n e a s i n r e b a s a r l a :

dado (t,, t3, . . . , t,) ti 5 tial V i , 2 s i < n 11

'I E s t e tamafio c a l c u l a d o d e l a rama r e p r e s e , n t a e l número máximo d e nodos que puede c o n t e n e r , a l o ancho s e r í a e l máximo grado , y a l o lar90 s e r í a l a máxima a l t u r a . Para e l p r o c e s o d e a n á l i s i s , se c o n s i d e r a este tamaño de rama como e l g r a d o d e un nodo. Por l o t a n t o , este v a l o r a c o t a e l d e l o s e n l a c e s de l a s o l u c i ó n . E s t o p e r m i t e , e n l a f a m i l i a cuyo grado excede a l tamaño d e l a rama.

111.8.4.- Caso d ) . - Combinación d e l Caso b y c.1 Pr imero se de te rmina e l g rado mínimo d e l nodo Raíz (Gra-Mj.n), y e l tamaño máximo d e l a rama. S i Gra-Min > Num-Max-Nodos, N o E x i s t e So luc ión . En c a s o c o n t r a r i o , l a f a s e 1 p r o c e s a r á . l a s f a m i l i a s d e l nodo c o n c e n t r a d o r d e g r a d o [Gra-Min . . MENOR!l [ N u m - Max-Nodos, Tam Rama] ] .

se m o d i f i c a d e l a m i s m a manera que p a r a l o s c a s o s a n t e r i o r e s , re!duciendo e l rango conforme se e n c u e n t r a n s o l u c i o n e s mejores .

E l g rado máximo d e l a Eamilia/rama a p r o c e s a r 'I

44 !I

Page 57: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

ij. . : . " . Problema de Redes.

. . Para e x p l i c a r e l funci.onamiento d e l método, se p r e s e n t a un c a s o d e 8 nodos:

!I ..

7 PA-ETRoS i Numero d e Nodos : 8 Rango de Costos : 2 0 4 0 0

Capacidad de Línea : 108 Num. Max. Nodos : 6

Grado I n t . d e l Arbol : 3 Suma d e T r a f i c o : 108

# de I t e r . 2& Fase : 6

Rango d e T r a f i c o : 10-20

<Esc> ...

7 85

(i.e. e l c o s t o d e c o n e c t a r e l nodo 2 con el. nodo 4 es 1 8 )

Tabla d e t r a f i c o : TRAFICO NODO

Matr iz o tat-^ d e c o s t o s (amp1 i d a ) .

Nodo Numero d e Enlaces

1

3 ' 2

7 8

2 3 4 6 7 46 7 1 5 1 80 13 138 218 302 389 487 7 9 127 194 263 333 4 3 1 53 90 1 3 9 2 0 1 268 338 58 107 1 6 9 239 323 412 52 88 124 1 7 1 ' 2 4 1 326 56 94 134 214 299 388

I!

I,

Menor Cos t . 46 7 1 111 1 6 6 228 307

Arbol d e expansión rníni1iia ( F i g u r a # U ) , c o s t o : 192.

A n á l i s i s d e l p r imer á r b o l :

, . 45

Page 58: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

I // Problema de Redes.

Máximo Grado a P r o c e s a r : 7 Arbol P a r c i a l Fase 1 : ( ( 2 2 1 6)) costo : 22.

Arbol P a r c i a l Fase 2 : ( ( 2 2 1 6 ) ) costo : 22.

Arbol P a r c i a l Fase 3 : ( ( 2 2 1 6) (36 7 6) (27 7 2 ) (38 8 2) (24 8 5 ) ( 4 7 7 4 ) ( 8 0 8 3 ) ) ( F i g u r a # 1 3 ) . Costo : 274, %error: 29.3270072.

9

h

F i g u r a #13 Arb01 soluci n con

I un costo de 274.

A n á l i s i s d e l segundo á r b o l . >Fam. a Pro . : 7

Grado P. : 1

Costo AEM : 192 Menor Costo : 2 1 4

% Error : 23.9270072

!

1 F i g u r a ti2 &bol de Expans i n M nima.

F i g u r a #14 i r b o l p a r c i a l .

Arbol P a r c i a l Fase 1 : ( ( 2 2 1 6 ) ( 24 1 2 ) ) (Figu?a #14).

Arbol P a r c i a l Fase 2 : ( ( 2 2 1 6) (24 1 2 ) ( 4 3 6 5 ) ( 24 8 5 ) ( 2 5 1 7 ) 137 5 3 ) )

Costo P a r c i a l : 1 8 1 Arbol al Terminar Fase 3 : ( ( 2 2 1 6 ) (24 1 2 ) ( 4 9 6 5 ) ( 24 8 5) ( 2 5 1 7) (37 5 31

( 3 2 8 4 ) ) ( F i g u r a #16). Costo : 213

(F igura # 1 5 ) . I

. . . 46

Page 59: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

I1 I

Problema de Redes. II

/ o Figura #15

Arbol parcial despu s de la //i Figura #16

Arbol soluci n encontrado con un costo de: 213.

fase 2.

Análisis del tercer árbol : >Fam. a Pro.: 6

Grado P. : 2

Costo AEM : 192 Menor Costo : 213

% Error : 9.8591549

. .

Arbol Parcial Fase 1: ( ( 2 2 1 6) (24 1 2) (25 1 7)) (Figura"#17).

Arbol Parcial Fase 2: ( ( 2 2 1 6) (24 1 2 ) ( 2 5 1 7) (29 2 58) (24 8 5) (36 7 3)) (Figura #le). , I

Figura #17 Arbol parcial. Arbol al terminar la fase 3

( ( 2 2 1 6) (24 1 2 ) (25 1 7) (29 2 5)~: (24 8 5) C o s t o : 192 II

i (36 7 3) (32 8 4 ) ) (Figura #19).

i/. I* 1!

I

! , 4

, I Figura ti8

Arbol parcial.

I

11,

47

Page 60: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Arboles Analizados : 3 Costo de la mejor solución : 192 En l a Iteración : 3

1 Mejor Arbol : ((22 1 6) (24 1 2) (25 1 7) (29 2 5) (24 8 5) (36 7 3) (32 8 4)) (Figura #19).

111.8.5. - Ejemplo : Se presenta un caso de 14 nodos como ejemplo, sujeto a las restricciones siguientes : Numero Máximo de Nodos Conectados a Otro Nodo : 5, Capacidad Máxima de la línea : 60.

b 111.8.5.1.- Datos :

Tabla de Costos 1

Figura #is Arbol de la coluci n. 1 2 3 4 5 6 7 E 9 1 0

11 12 13

2 13 3 52 33 4 67 15 43 5 13 66 25 59 6 36 39 56 36 63 7 36 42 34 53 37 35 8 15 ¡4 6 3 44 23 45 50 9 66 56 12 28 33 68 67 10 21 31 53 23 32 59 46 11 37 29 25 62 21 60 53 12 57 35 11 58 41 42 64 13 62 38 42 46 15 42 49 14 58 64 27 56 33 22 45

(i.e. el costo de conectar el

42 38 60 i i 22 33 52 27 70 17 14 49 70 35 62

odo 3 con c

' t 38 38 36 10 49 64

nodo 2 es II 111.8.5.2.- Tráfico emitido por cada nodo, formato : (tráfico numero-nodo)

( O 1) (13 2) (7 3) (9 4) (10 5 ) (15 6 ) (6 7 ) (2 ü)r (9 9 ) (11 10) (2.6 11) (14 12) (8 13) (7 14) I '

(i.e. el tráfico emitido por el nodo 6 es de 15 udidades)

111.8.5.3.- En primer lugar,

Tabla ampliada presentando solamente los costos de los enlaces de grado x :

se procesa la matriz de costos de enlaces para obtener una tabla ampliada que contenga, para cada nodo:

. . .]I Numero de Enlaces 2 3 4 5 6 7 O 9 10 .li 12 1 3

Nodo

3 4 4 1 62 42 7 1 4 0 1 3 66 , 102 49 7 2 93 1 2 9

5 98 102 1 O0 1 4 5 97 168

6 134 135 133 189 1 2 9 210

7 1 7 1 170 1 6 1 235 162 252

8 223 208 209 288 1 9 5 297

9 280 247 252 344 232 353

I O 338 289 304 402 273 412

400 345 ~35 I 4 6 1 332 472

12 466 4 0 9 413 523 3 95 535

13

/I 48

Page 61: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

11.. II

Problema de e s .

7 8 9 10 11 12 13 14

69 29 26

105 4 6 4 8

29 32

4 6 59

142 69 75 107 78 109 82 92

184 107 103 140 107 147 120 127

229 149 136 1.78 140 188 158 172

1931' 238 171 2751 213 324 224 I 273 177 215 230 279 200 242 221 I 277

374 285 269 326 253 331 288 ,335

427 335 329 385 300 388 337 ~~

397

480 387 395 445 353 446 386 461

544 450 4 62 507 413 510 448 5 2 5

611 520 530 577 475 580 512 595

(i.e. conectar los 4 menores enlaces del nodo 1 costaría 62)

Registros correspondientes a lo datos completos de la tabla ampliada por nodo : Formato : (costo-enlace nodo-asociado costo-acumulado) Nodo 1 ' b 11 ((13 2 131 113 5 26) (15 8 411 (21 10 621 (36 6 981 (36 7 1341 137 11 171) (52 3 223) 157 12 280) (58 : l 4 338) (62 13 4001 (66 9 466) (67 4 53311 (i.e. los 4 enlaces de menor Costo para ellinodo I , SE forman con los nodos 2 costo: 13, 5 Costo:13, 8 cost0:15 y 10 cOst0:Zll Nodo 2

Nodo 3

((13 1 131 (14 8 271 (15 4 42) (29 11 71) (31 10 1021 (33 3 1351 (35 12 1.70) ( 3 8 13 208) (39 6 2471 (42 7 2891 (56 9 3451 (64 14 409) (66 5 479))

((11 12 11) ( 1 2 9 23) (25 5 481 (25 11 73) ( 2 7 14 1001 (33 2 1331 (34 7 16'71 (42 13 209) 143 4 2521. (52 1 3041 (53 10 3571 (56 6 413) (63 8 4761)

((15 2 15) (23 10 381 (28 9 66) (36 6 102) 1(43 3 1451 (44 8 189) 146 13 235) ( 5 3 7 288) (56 14 344) (58 12 4021 (59 5 4611 ( 62 11 5231 (67 1 59011

((13 1 131 (15 13 281 (21 11 49 ) (23 8 7211 I (25 3 971 (32 10 1291 ( 3 3 9 1621 ( 3 3 14 1951 (37 7,232) (41 12 2731 (59 4 3321 (63 6 395) (66 2 4611)

((22 14 22) ( 3 5 7 571 136 1 931 (36 4 129),i (39 2 1681 142 12 210) (42 13 2521 ( 4 5 8 2971 156 3 3531 (59 10 4121 (60 11 472) (63 5'5351 (68 9 60311

((34 3 341 ( 3 5 6 691 (36 1 105) (37 5 142); (42 2 1841 (45 14 229) (46 10 275) (49 13 324) (50 8 3741 (53 4 427) (53 11 4801 (64 12 544) (67 9 61111

((14 2 141 115 1 29) (17 13 461 (23 5 69) i 3 8 10 1071 (42 9 149) (44 4 193) (45 6 238) (47 11 285) (50 7 335) (52 12 387) (63 3 4501, (70 14 520))

((12 3 12) (14 13 26) (22 11 481 (27 12 75,) (28 4 1031 (33 5 136) (35 14 171) (42 8 2131 ( 5 6 2 269) (60 10 3291 (66 1 395) (67 7 462) (68 6 53011

((21 1 21) (23 4 44) (31 2 75) (32 5 107) (33 11 140) ( 3 8 8 1781' (46 7 2241 (49 13 273) ($3 3 326) (59 6 385) 160 9 4451 162 14 507) (70 12 5771)

((IO 14 10) (21 5 311 (22 9 53) 125 3 78) (29 2 107) ( 3 3 10 1401 (37 1 1771 (38 12 2151 (38 13 2531 (47 8 3001 (53 7 353) (60 6 413) 162 4 475))

((11 3 11) (27 9 38) (35 2 731 (36 13 109) :('!38 11 147) (41 5 188) (42 6 2301 (49 14 2791 ( 5 2 8 331) (57 1 388) 158 4 4461 (64 7 5101 170 10 58011

((14 9 14) 115 5 29) (17 8 46 ) (36 12 82) (38 2 120) (38 11 1581 (42 3 200) 142 6 2421 146 4 2881 (49 7 3371 149 10 386) (62 1 448) (64 14 5?)1

((10 11 10) (22 6 32) (27 3 59) (33 5 92) Il(35 9 1271 ( 4 5 7 172) ( 4 9 12 2211 156 4 277) (58 1 3351 (62 10 397) ( 6 4 2 4611 (64 13 5 2 5 ) 170 8 58511

Nod04 11

Nodo 5

Nodo 6

Nodo I :I ,/

Nodo 8

Nodo 9

!I. .i

. , Nodo 10 It).

Nodo 11

Nodo 12

Nodo 13

Nodo 14 1

111.8.5.4.- Lista de tráfico ordenado

( O 1) (2 8 ) (6 7 ) ( 7 3) ( 7 14) ( 8 13) ( 9 4) ( 9 9 ) (10 5) (11 10) (13 2) (14 12) (15 !6) (16 11)

111.8.5.5.- Se Calcula el AEM tomando de la lista de costos ordenada, el menor

49 ~

. .

I

Page 62: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

enlace que no forme ciclo, el proceso se termina cuando se tienen n-1 enlaces en la soluci6n.

Arbol de Expansión Minima : ((lo 11 14) (11 3 12) (12 3 9) (13 1 2) (13 1 5) (14 9 13) (15 2 4) (15 5 13) (21 1 10) (21 5 (34 3 7 ) )

El Costo correspondiente al AEM (Figura # 2 0 ) : 215

111.8.6.- Se calcula el grado mínimo que debe poseer el nodo concentrador o raíz de la siguiente.manera :

. .

8

g, Trafico, -

GMhcai - TraficoMaximo

SOLUCION AEM I Figura #ZO

El GradoMaximo lo determina el menor de :

a).- Número de Nodos de la red ( i d ) . I1 b).- Número Max. Nodos Conectados a otro nodo (5). c).- El mayor Grado de la Familia cuyo Costo Minim0 Aproximado no exceda al

' costo de la mejor solución encontrada. Inicialmente este valor es 5. ll

De esta manera, el grado del nodo raíz de la solución, varia entre :

3 Y 5 i i

A l terminar el proceso, se encontró en la iteración 4 de la fase 1. un árbol de costo 220, que, en relaci6n con el costo del AEM,/tiene un porcentaje de sobre costo de : 2.2727272 0 . En total se analizaron. 12 oonfiguraciones (árboles), el de menor costo fue el número 4.

Enlaces del mejor árbol (Figura # 2 0 ) :

((13 1 2) (13 1 5) (15 1 8 ) (15 2 4 ) (21 5 11) (le 11 14) (17 8 13)

I

(14 9 13) (12 3 9) (11 3 12) (22 6 14) (23 4 1 O ) l l (34 3 7))

' t i

!I

50 'I

Page 63: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Problema de m e s .

111.9.- Estadísticas de comportamiento.

Todos los datos utilizados en los casos de análisis que se presentan, se generaron de manera aleatoria por medio de una rutina en LISP. Solamente se especificó el número de nodos, rango de costos y rango de tráfico.

A continuación se presenta una instancia del problema con los siguientes parámetros :

111.9.1.- Caso 1.

I PARAMETROS

Numero de Nodos : 20 Rango de Costos : 20-100 Rango de Trafico : 1 0 4 0

Capacidad de Línea : 279

TWLFICO (O 1) (15 2) (15 3) (13 4) (15 5 ) (13 6 ) (1 (11 10) (20 11) (13 12) (20 13) (12 14) (16 (15.18) (16 19) (11 20)

7) I 5) I

2 8) (17 9) 4 16) (13 17)

TRAFICO ORDENADO ( O 1) (11 10) (11 20) (12 8 ) (12 14) (13 4) (13 6) (13 12) (13 17) (14 16) (15 2) (15 3) (15 5) (15 18) (16 15) (16 19) (17 9) (18 7) (20 11) (20 13)

Este cago se procesó bajo diferentes ( 2 4 ) condiciones de restricción : P o r número de nodos, un máximo de 10, 25, 50 y 75 % del número total de nodos (3, 5, 10 y 15 nodos); por capacidad de la línea, con un máximo de 10, 25, 50 y 75 8 del tráfico total de la red (30, 70, 140 y 210 unidades de tráfico), y combinaciones de ambos casos.

51

Page 64: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

AEM Figura #2i '

La F igura #21 p r e s e n t a e l Arbol d e Expansión Mínima, e l c u a l posee un costo de: 4 4 5 .

Enlaces d e l Arbol de Expansión Mínima :

( ( 2 0 3 1) (20 6 4) (21 12 3) (21 19 8 ) ( 22 15 1) (22 19 13) ( 2 3 8 1) (23 18 1) 123 12 2 ) 123 17 8 ) 124 17 41 124 14 '5) 124 10 7) 124 18 10) 124 19 161 i 2 5 13 9 i i 2 5 12 l¡) ' ( 2 6 15 5) ' ( 3 1 2 0 ¡))

52

Page 65: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Problema de Redes.

Tabla de resultados del diseño de redes por medio del algoritmo propuesto, sometido a diferentes restricciones. Para. cada caso se indican las condiciones de las restricciones.

Donde :

COLUMNA CONTENI DO

CASO Número de caso que se analiza. C.A.E.M. Costo del Arbol de Expansión Mínima. % SOBRE COSTO Porcentajes de sobrecosto obtenido con la'solución encontrada

por el método propuesto. #NODOS Indica el número máximo de nodos, para la restricción número de

nodos conectados a otro nodo. Se considera el 10, 25, 50, 75% del número de nodos (3, 5, 10, 15 nodos respectivamente).

TRAFICO Indica la capacidad máxima de la línea de comunicación, para la restricción de capacidad de linea. Se considera el 10, 25, 50 y 75%'de la carga total de tráfico de la red (30: 70, 140 y 210 unidades de tráfico respectivamente).

C.O. Costo de la solución obtenida por el método. #ARBOL/TOTAL #ARBOL indica ei número de árbol en que se encontró ia mejor

solución (de menor costo, que cumple con l a s restricciones), de un TOTAL de árboles analizados.

, ,.

8 SOBRE COSTO #NODOS TRAFICO CASO C.A.E.M. 10 25 50 75 10 25 50 75 C.O. #ARBOL/TOTAL

1 2

444 3.6876355 3 444 2.6315789 444 1.1135857 444 1.3333333 444 35.1824817 444 12.0792079 444 3.47826089

5 461 22/36 456 449 450 685 505

20/72 20/162, 38/252 1/11 9/64 11/162 30/266

10 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

15 30

30

30

30

30

70

70

70

70

70

140 210

~~ ~

444 3.47826089 444 sin solución 3 o/o, ,,

o / o 1/9 15/28

o / o 1/4

21/27 34/56 . I

l/l . 9/24 ' 21/72. 17/126, 6/1 ' ' 7

9/44 21/117 3 O/ 19 6 ''

444 sin solución 3 444 17.6252319 3 140

210 539 486 444 8.6419753 3

444 sin solución 5 _ _ _ 557 4 67 459 685 505 468 4 62 685 505 4 68 462

~~~

444 20.2872531 444 4.92505359

5 5 5

140 210 444 3.2679738

444 35.1824817 10 10 10 10

18 19 20

444 12.0792079 444 5.12820513 444 3.8961038 4 4 4 35.1824817

140 210

15 21 22 23 24

~~~

444 12.0792079 444 5.12820519

15 15 15

140 21.0 444 3.8961038

Con lo cual se obtuvo un sobre costo mayor de 35%, y un sobre costo menor del 1.12%.

53

Page 66: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

111.9.2.- Caso 2. Adicionalmente, se realizaron 50 pruebas aleatorias sujetas a restricciones por número de nodos y por capacidad de la llnea,(30, 40 y 508 del trbfico total de la red), con lo cual se generaron los si.gulentes resultados :

. . . .

Restricciones I1 c a w s con Sobre Cos to < a i dCSS0S flnodos %nodos S t r á í i c o i s 38 58 ] O i l 158 No Converge. analizados de la red máximo / t o t a l

El sobre costo se calculó tomando como referencia el costo del árbol de expansión minima. Aún suponiendo que las soluciones' propuestas por el algoritmo planteado no fueran las Óptimas bajo las restricciones dadas, el margen de error es menor o igual a l porcentaje de sobre costo de la tabla con relación al menor valor

111.9.3.- Caso 3. Comparacibn del método propuesto (RPE) con el: mAtodo de Ciiandy 6 Russell,, en función del tiempo y el costo de la solución obtenida. Se el.ige este método por ser uno de l o s mejores para el diseño de redes de costo mínimo, y se aplica a los tres casos de restricciones que se analizan,. El conjunto de datos utilizados para estas comparaciones, se generaron aleatoriameiite..

posible de la red sin restricciones. . \ .

'I

Donde : , ,,

Columna Contenido

T i e n p O Corresponde al tiempo utilizado por el método para .obtener 'la solucibn, el tiempo se presenta en el formato Horas:Minutos:Segundos

costo Representa al costo de la solución obtenida. CAEM Representa el Costo del Arbol de Expansibn Mínima. %SC/AEM Corresponde al porcentaje de sobre costo en relación a1 'a.

Corresponde al porcentaje de sobre costo en relación al Costo de la Mejor Solución Obtenida con alguno de los dos métodos.

(HH : MM: CS ) , .

Método #Nodos Tiempo costo CAEM %SC/AEM %SC/opt.

CHANDY 20 3 : 2 0 : 0 0 491 138 1'2 . 1 o 9.59 RPE 20 O: 08:14 - 4 4 8 438 2.23 0.0

CHANDY 30 0:44:33 664 653 1.68 0.0 RPE 30 0:03:43 695 653 6.43 4.66

CHANDY 30 1: 27:33 1227 1.220 0 .57 RPE 30 0:08:50 1247 1220 2.16

0.0 1.62

54

Page 67: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

: j - . .

i

Problema de m e s .

111.10.- Conclusiones. t . '7*

Entre las características del método RPE, se encuentra que en el peor de los casos consume un tiempo proporcional a N', lo cual e s mejor que e l comportamiento exponencial. Adicionalmente, el rango de sobre costo generado durante las pruebas se encuentran, a menudo, dentro del 10% y por lo general dentro del 5 % . Aún cuando las pruebas no fueron exhaustivas, el método propuesto permite obtener una solución aproximada con u,n sobre costo relativamente pequeño en un tiempo,muy corto.

El método RPE no realiza una búsqueda exhaustiva, por lo cual, en ocasiones no encontrará la solución bptima, pero las estadísticas generadas durante las pruebas indican que el porcentaje de sobre costo o margen de error se mantiene,en un valor aceptable.

La relación costo/tiempo determinará en un momento dado la conveniencia de utilizar el método RPE o alguno de los métodos que realizan búsquedas exhaustivas.

. .

. . .

55

Page 68: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Problema de Matemática Combinatoria.

Capítulo IV. Análisis del problema de Matemática Combinatoria de la Planificación.

IV.l.- Introducción.

Aparecen problemas de planificación en casi todas las áreas de la actividad humana. Para.la misión Viking de exploración del planeta Marte, fue preciso 'coordinar la actividad de más de 20,000 perisonas [RONALD-78] .Cumplir con la cuota de producción diaria de una fabrica de automóviles, puede exigir una muy estricta asignación de fuerza laboral y maqui.naria. Incluso, preparar una cena de menú muy variado puede plantear un problema de planificación nada trivial.

Podría pensarse que existen algoritmos naturales, esto es, procesos por etapas bien definidas, para la construcción de planes altamente eficientes. No ocurre así. No se puede confiar en que métodos aparentemente lógicos de construcción de'planificaciones den resul.tados igualmente buenos en situaciones diferentes. Por ejemplo, en ciertos casos, al aumentar el número de operarios dedicados a una tarea pueden producir aumentos del tiempo total inverti-do en realizar un trabajo. Algunos de l o s más comunes e intuitivo5 procedimientos de planificación pueden dar lugar a resultados no esperados, e incluso, aparentemente paradójicos.

Durante los últimos años, se han diseñado y estudiado con gran atención varios modelos matemáticos de procesos de planificación, en un esfuerzo encaminado a descubrir las causas de tales resultados anómalos. La investigación ha puesto de manifiesto que, en la mayoría de los casos, no debe esperarse que los algoritmos eficientes proporcionen resultados perfectos.

I

IV.2.- Descripción del Problema.

EL modelo básico está formado por un sistema de m procesadores idénticos P, y un conjunto de tareas T, que los procesadbres deben realizar','. Cada tarea

tiene asignado un número positivo T que corresponde al tiempo requerido por el procesador para ejecutar la tarea (t.iempo de ejecución de T,).. Cada procesador puede ejecutar cualquiera de las tareas T, pero solo puede ejecutar una a la vez, además, cuando un procesador ha empezado a atender una tarea T.,, tiene que continuar ejecutándola hasta terminarla por completo.

Un Aigor i tmo de Planificación es el conjunto de reglas por las que se van asignando las tareas a los procesadores individuales. El mode1.0 puede tener una colección de restricciones de precedencia y una lista de prioridades. Estas establecen que T, e s predecesora de T, si para iniciar la tarea T,, es necesario que T, esté terminada por completo. Esitas relaciones se denominan restricciones de precedencia. Una lista de prioridades L es una ordenacihn de las tareas de acuerdo con las preferencias del planificador. Un modelo de estas características, se denomina modelo de planificación.por lista de prioridades;

La mayor parte de 1.0s problemas de planificación quedan clasificados como NP-Completos [HOROWITZ-78]. De hecho, incluso en el caso relativamente simple de que no existan restricciones de precedencia, y aún con tan sólo dos procesadores, el problema resultante es NP;Completo.

'3 Los procesadores p d r l an s e r operarios <io ~WI cadena de morif.o~i<'. microprocesadorea electrónicos. impresoras, etc.

56

Page 69: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Los descubrimientos relativos a la rumbo de los trabajos de investigación esfuerzos se encaminaron a descubrir problemas, pero en la actualidad casi dirección más fructífera, de hallar determinar métodos eficientes que

Se analizará el modelo de precedencia, ni lista de prioridades. problema de embalaje [RONALD-78].

Se tiene un conjunto de artículos A

asociado un peso w,. El problema consiste número mínimo de cajas E > , E, , .. ., E , artículos contenidos en cada caja no

Este problema surge bajo diferentes fontanero ha de cortar un conjunto de un minimo de tubos de 1ongitud.normalizada; pasar l o s mensajes comerciales interrumpiendo el menor número posible papel debe proveer a sus clientes con se cortan del mínimo número de rollos

IV.3.- Trabajo Asociado [HOROWITZ-781.

Existen cuatro' modelos básicos pa:ra Primer Espacio libre (PEJ. Mejor Espacio (ME). Primer Espacio con Lista Mejor Espacio con Lista

Se numeran las cajas cajas están vacías.

e 1, 2, ..., n. Inicialmente, todas las caja de menor indice almacena en la

IV.3.1.- Primer Espacio libre.

i que lo pueda contener, esto es

Problem de Matemátiaa C o m b h a t o r i a .

IP-Completez han alterado totalmente el sobre planificaci6n. Los primeros

soluciones óptimas, exactas, de tales toda la atención se ha concentrado en la

ficilmente soluciones aproximadas, o sea, garanticen resultados cercanos a los óptimos.

planif-cación simple, sin restricciones de A este modelo se le conoce también como

= [a,, a,, . . ., an] , cada artículo tiene en embalar todos los artículos en un

de tal forma que el peso total ,de los exceda un cierto peso fijo W".

formas en muchos, casos prácticos : Un tubos de longitudes diferentes utilizando

Una cadena de televisión desea contratados, cuya longitud es variable,

de veces su programa; Un fabricante de rollos.de papel de distinto anchos, que de dimensión normalizada.

resolver este tipo de problemas :

Decreciente (PELDJ. . . decreciente (MELD).

wi - Peso acumulado en 1 w,, - Peso Limite de

wi + wj 5 %ax

wj - Peso del objeto j

Se numeran las cajas 1, 2, ..., n. Inicialmente, todas las cajas están vacías. caja de menor índice i que lo pueda mayor espacio disponible, esto es:

almacena en la

IV.3.2.- Mayor espacio Libre.

pesos a t j empos de ejeciicihn. l a s c a j a s son procesadores y e l p e s o máxj.mo de cada c a j a corr .sporide a l p lazo de t e m i n n c i h n en e l modelo de p i a n i f i c a c i 6 n inicialmente p r e s e n t a d o . '"I '4 Lo5 A r t í c u l o s e q i i i v a l ~ e n a t a r e a s .

57

' ' ! '

. .

. ,:

I

I

I

Page 70: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Problema de M a t d t i c a Combhatoria.

w, + wj s wmx, mroR[w,, - w,l V i, w, - Peso acumulado en .la c a j a

wj - Peso del objeto j w,, - Peso L i m i t e de cada C a j a

~.

,I

:i

IV.3.3.- P r i m e r Espacio l i b r e con l i . s t a s , d e c r e c i e n t e s . S i m i l a r en método del. p r imer e s p a c i o . I . ibre, agxegando l a cond ic ión de que l o s o b j e t o s e s t é n en orden d e c r e c i e n t e p o r pesos :

. . w = [wl, wz, . . . , W"1, w, 2 wi+i, V if-*

S e numeran l a s c a j a s secuenc ia lmente h , 2, . . . , n: In j , c i a lmen t e , t o d a s l a s c a j a s e s t á n v a c í a s . Cada Obje to j se la lmacena e n l a c a j a de menor í n d i c e i que l o pueda c o n t e n e r , e s t o es :

w, + wj S.W-

W, - Peso acumulado en .la c a j a

wj - Peso de l objeto j W,, - P e s o ' L i m i te de cada Ca ja

' I : ..

IV. 3.4. - Mayor Espacio Iti .bre con l i s t a s d e c r e c i e n t e s . S i m i l a r e n método d e l mejor e s p a c i o l i b r e , agregando la cond ic ión de que l o s o b j e t o s e s t é n en orden d e c r e c i e n t e p o r ' p e s o s :

w = [wl, w,, . . . , wn], w, > w,,,, ti i:-' t

S e numeran l a s c a j a s secuenc ia lmente , l . 2, . . . , n . In.ici .almente, todos l a s c a j a s e s t á n v a c í a s . Cada Obje to j s e almacena e n l a c a j a de menor Lndice i que l o pueda c o n t e n e r y que t enga el. mayor espac1.o d i s p o n i b l e , e s t o es:

! W, + wj s W-, MnYOR[W,, - W,] V i

W, - Peso acumulado en l a c a j a

w, - Peso de l objeto j W,, - Peso L i m i t e de cada C a j a

. . !

IV.4.- A n á l i s i s . Dados n o b j e t o s con pesos P = [pi, p, , ..., &I , en número de formas

d i f e r e n t e s en l a s que s e puede p a r t j c i o n a r e s t á dado p o r :

que cor responde a l a suma de losj i iúmeros de S t i r l i n g [RONALD-921 p a r a los v a l o r e s de k de O a n .

58

Page 71: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Problema de M a t d t i c a Canbinatorie.

A c o n t i n u a c i ó n se p r e s e n t a l a t a b l a d e S t i r l i n g p a r a val .ores d e B y k que v a r í a n d e O a 9 .

La formación d e l a t a b l a se r e a l i z a p o r medio d e l a funci.ón d e r e c u r r e n c i a :

l a c u a l p e r m i t e calcular e l número formas d i f e r e n t e s en l a s que se puede p a r t i c i o n a r una c o l e c c i ó n d e n o b j e t o s e n sub-colecci .ooes d e 1 s k s n . E l orden de c r e c i m i e n t o de l a func ión no e s t á aco tado p o r un pol inomio de grado pequeño, como se pude ver e n l a t a b l a s i g u i e n t e :

Tamaño d e l a Colección Número d e P a r t i c i o n e s

I 2 3 4 5 6 7 8 9

L 2 5 15 52

203 877 4140

21147

Cada p a r t i c i ó n es una p o s i b l e s o l u c i ó n , no es p o s i b l e di . señar un algorj-tmo d e t e r m i n í s t i c o que p e r m i t a a n a l i z a r t o d a s y cada una d e l a posi .b les p a r t i c i o n e s en un t iempo pol inómico p a r a t o d a n mayor que O . >

I V . 5 . - Propues ta d e Col.ución (Menor Espac io , mE) . E l método que se propone c o n s i s t e en : Manejar l a l i s t a d e p e s o s en orden d e c r e c i e n t e , y e l c r i t e r i o p a r a d e t e r m i n a r l a c a j a e n l a c u a l se almacenará e l o b j e t o es : Tomar l a c a j a cuyo peso acumulado más e l peso d e l o b j e t o , s e a menor

59

Page 72: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

~roblenia de Matdt i ca Combinatorla.

o igual que el peso máximo establecido, todas las cajas.

y el peso acumulado sea el mayor ¿le , .

~ pa-, + pob./*, 5 PIMdmo *

Y P.-, = MAXiPOe,l V j , 15 j s m

m - Numero de cajas willznab en WI instante . . !I

IV.6.- Comportamiento del Método (Menor Espacio).' Para establecer el comportamiento del Método, se realizaron varios' casos de prueba, comparando los resultados del método propuesto con 10,s resultados de l o s cuatro métodos conocidos. ''

IV.6.1.-'Caso #1.

IV.6.1.1.- Parámetros :

Número de Objetos : 2 0

Capacidad de Caja : 137 Rango de Pesos : 20400

Suma de Pesos : 1062 Número Optimo Cajas : 8

IV.6.1.2.- Resultados I Método Ifca jas %+ %+

Primer Espacio : 9 I 12 .5 1 Mayor Espacio : 9 12.5 1

Primer ESDaCiO Pesos Decrecientes : 9 , 1 2 . 5 1 ' Mayor Espacio Pesos Decrecientes : 9 . ' 12.5' 1

Menor Espacio Pesos Decrecientes : 9 ' 1 2 . 5 1 . - . . ,

IV.6.1.3.- Distribución de los Objetos en las Cajas :

Método : Primer E s p a c i o Método : Mayor E s p a c i o Caja Objetos (Peso #Objeto) Caja 0b;jetos (Peso #Objeto)

' 3 ((43 5) (53 6 ) (26 9)) 3 ((43 5) (53 6) ( 2 6 9))

.

1 ((83 1) (46 2)) 1 ((83'1) (46 .2)) 2 ((27 3) (90 4 ) ) 2 ((27..3) (90 4 ) )

4 ((54 7) ( 8 0 8 ) ) 4 ((54 7 ) ( 8 0 8 ) ) 5 ( ( 8 4 10) (27 11) (25 20)) 6 ((57 12) (73 13))

5 ((84 10) (27 11) ( 2 5 20)) 6 ( ( 5 7 12) (73 13)) 7 ( ( 5 8 14) (34 15) (38 16)) 7 ((58 14) (34 15) (38 16)) 8 ((39 17) (54 18)) 8 ((39 17) (54 18)) 9 ((71 19)) 9 ((71 19))

Método : Primer E s p a c i o Pesos D e c r e c i e n t e s Caja Objetos (Pesó #Objeto) 1 ((90 4) (46 2)) 2 ( ( 8 4 10) (53 6)) 3 ( ( 8 3 1) (54 7)) 4 ( ( 8 0 8) ( 5 7 12)) 5 f f 7 3 131 158 2411

~~~ ~~

6 ii7¡ ¡9j (54 l8jj 7 1143 51 (39 171 138 1611 8 ( (34 15) ' (27 3j i27 llj ' (26 9 ) )

60

Page 73: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

9 ((25 20))

Método : Mayor Espacio Pesos Decrecientes Caja Objetos (Peso #Objeto) 1 ((90 4) (46 2)) 2 ( ( 8 4 10) (53 6)) 3 ((83 1) (54 7)) 4 ( ( 8 0 8) (57 12)) 5 ((73 13) (58 14)) 6 ((71 19) (54 18)) 7 ((43 5 ) (39 17) (38 16)) 8 ((34 15) (27 3 ) (27 11) (26 9 ) ) 9 ((25 2 0 ) )

4 ((80 5 ((73

Menor Espacio Pesos Decrecientes

8 ) ( 5 4 71) 13) (57 12))

6 ((71 19) (58 14)) 7 ((43 5) (39 17) (38 16)) 8 ((34 15) (27 3 ) (27 11) (26 9)) 9 ((25 2 0 ) )

. .

IV.6.2.- Caso #2.

Número de Objetos : 100

Capacidad de Caja : 137 Rango de Pesos : 20-100

Suma de Pesos : 6110 Número Optj.mo Cajas : 45

#cajas %+ #-I-

Pri.mer Espacio Pesos Decrecientes : 46 2.2222222 1 Mayor Espacio Pesos Decrecientes : 46 2 . 2 2 2 2 2 2 2 1 Menor Espacio Pesos Decrecientes : 46 2.2222222 1

Primer Espacio : 49 8 . 8 8 8 8 8 8 8 4 Mayor Espacio : 49 8.8888888 4

IV.6.3.- Caso 113.

. ,, %,' Número de Objetos :'lo0

Capacidad de Caja : 137 Rango de Pesos : 20-100

' . '., 't . :í Número Optimo Cajas : 47

#Cajas %+ #+

Primer Mayor Menor

Primer Espacio : 53 12.7659574 6 Mayor Espacio : 53, 12.7659574 6

Espacio Pesos Decrecientes : 48 2.1276595 1 Espacio Pesos Decrecjentes : 4 8 2.1276595 1 Espacio Pesos Decrecientes : 48 2.1276595 1

1

. 61

Page 74: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Probl- de Hatemdtica Coinbinatoria. t

. . IV. 6.4 .- Caso #4. Comparaci,Ón del. Método Propuesto (Menor E s p a c i o ) con los Cuatro métodos conocidos, en función del tiempo y el número de cajas de la soluci6n obtenida. Donde :

Columna Contenido

Tiempo Corresponde al tiempo utilizado por el método para obtener la solución, el. tiempo se presenta en el formato Horas:Minutos:Segundos (HH : MM: CS ) Representa el número de cajas de la solución obtenida. Representa el Número óptimo de cajas.'\ Corresponde al porcentaje adicional de cajas en relación a O p t i m o . Corresponde al número adicional de cajas en relación al óptimo.

. .

Cajas Optimo %ADIC/OPT #ADIC/OPT PE Primer espacio. PELD Primer esDacio, lista decreciente. ME Mayor espacio. MELD Mavor espacio, lista decreciente. mELD Meñor espacio, lista decreciente.

IV.6.4.1.- Caso 4.1.

Número de Objetos : 300 Rango de Pesos : 20400 Capacidad de Caja : 123 Suma de Pesos : 18409, Número Optimo Cajas : 150

Método Cajas %ADIC/OPT #ADIC/OPT Tiempo H M S.CC

PE 162 8.0 12 o o 22.9 ME 160 6.6666 10 O O 45.15 PELD 154 2.6666 4 O O 11.7 MELD 154 2.6666 4 O O 42.13

' mELD 154 2.6666 4 O O 15.98

IV.6.4.2.- Case 4.2.

Numero de Objetos : 400 . Rango de Pesos : 20+00

Capacidad de Caja : 123 Suma de Pesos : 24187

Numero Optimo Cajas : 202

Método cajas %ADIC/OPT #ADIC/OPT Tiempo H M C.CS

PE 223 10.3960396 21 O O 23.95 ME 219 8.4158415 17 o 1 21.35 PELD 209 3.4653465 7 O O 21.15 MELD 209 3.4653465 7 O 1 28.38 mELD 209 3.4653465 7 O O 29.6

IV.6.4.3.- Case 4.3.

Numero de Objetos : 1000

6 2

Page 75: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Problema de Mateirdtioa Combinator ia .

Rango de Pesos : 20-400

Suma d e Pesos : 5 8 9 6 1 Capacidad d e Caja : 1 1 5

Numero Optimo Ca jas : 513

Método Ca jas RADTC/OPT #AD?IC/üPT Tiempo

PE 549 7.0175438 3 6 o 3 4

H M S.CS

ME ' 5 4 1 5 .4580896 2 8 O 13 55.04 PELD 523 1.9493177 1 0 O 2 53.18 MEI,D 523 1.9493177 10 o 1 2 18.92 mELD 523 1.9493177 1 0 O 4 6 .73

I V . 7. - Conclusi.ones

El método que se propone, Menor espacio, t i e n e un comportamj e n t o i g u a l a l mejor d e l o s métodos e x i s t e n t e s . En las e s t a d í s t i c a s generadas , se pudo o b s e r v a r que e l p o r c e n t a j e d e e r r o r d e l a aproximación o b t e n i d a , p o r l o g e n e r a l es menor a l 5%. E l . método puede ser modif icado p a r a r e a l i z a r una búsqueda a l o ancho/profundidad para o b t e n e r un p o r c e n t a j e d e e r r o r menor o una s o l u c i ó n ópt ima, s i n embargo, el. b e n e f i c i o que se e s p e r a o b t e n e r ( r e d u c i r en h a s t a 5 .ca jas d e un t o t a l d e 1 0 5 ) c o n t r a e l consumo d e r e c u r s o s a d i c i o n a l e s (memoria d e p roceso , t iempo p r o c e s o ) no j u s t i f i c a l a neces idad de h a c e r l o .

63

Page 76: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Conclusiones.

Capítulo V. Conclusiones. ,i CONCLUSIONES

Con la máquina Deterministica de Turing, no es posible resolver l o s problemas ~ p - ~ ~ ~ ~ l ~ t o s en un tiempo polinómico. Con la Máqui-na No-Determi.nística es posible, sin embargo la tecnología no ha evolucionado lo suficiente como para poder crear computadoras que funcionen con el modelo de una MNDT.

Hasta la fecha no ha sido posible demostrar que existan algoritmos de tiempo polinómico que permi.tan resolver los problemas NP-Completos, tampoco se ha podido demostrar que tales algoritmos no existan.

Por ahora, será necesario utilizar algoritmos deterministicos de aproximación que permitan reducir el espacio de soluciones de los problemas NP-Completos, mediante criterios que discriminen zonas de soluciones de poca factibilidad, de tal manera que se instruya al algoritmo para procesar zonas de soluciones de mayor factibilidad, ya que el espacio total de soluciones es demasiado grande para ser recorrido de manera exhaustiva en un tiempo razonable. Las investigaciones que se han realizado.permiten concluir que, aún cuando existan métodos Heuristicos generales, no son aplicables con el mismo factor' de rendimiento a diferentes problemas NP-Completos. Cada tipo de problema ' converge con crj.terios de

Es muy difícil diseñar algoritmos de aproximación absoluta. En la práctica, l o s algoritmos de aproximación llegan a tener comportamientos contradictorios.

Los dos problemas analizados en este trabajo, permiten realizar una incursión a esta clase de probl.emas intratables, y se puede concluir que la utili.zaci6n de l o s métodos de búsqueda heurística desarrollades, dentro del ámbito de la Inteligencia Artificial contribuyen a obtener soluciones. aproximadas a este tipo de problemas en un tiempo razonable, adicionalmente, el lenguaje li.sp con su enfoque funcional, manejo de objetos simbólicos, recursión, etc. es una herramienta que permite la implementación de las heurísticas de una manera muy accesible (natural).

V . l . - Diseño de redes.

discriminación diferentes. *:I

En el problema de diseño de redes, se generó un'enfoque que en teoría podría contribuir a la discriminación de un espacio mucho mayor de soluciones. poco factibles. El enfoque consiste en representar cada árbol por medio de una secuencia de longitud n-2.

Como se indicó previamente, estas secuencias corresponden a un árbol, por lo tanto no poseen ciclos. La misma secuencia indica el grado de conexi6n de cada uno de l o s nodos que integran la red, y hasta el punto de análisis que se llegó con este enfoque, es posible determinar la altura del árbol correspondiente a la secuencia.

Con todo esto, el objetivo seria la construcción de una función generadora (Generatriz), que, dadas las restricciones DOT número de nodos conectados a otro nodo, y capacj.dad de la linea de transdsión, genere las secuencias que cumplan con estas condiciones.

Un algoritmo construido de esta manera, se dedicaría a analizar solamente las configuraciones que cumplen con las restricciones establecidas, quedando en trabajo de determinar la de menor costo. Ahora, combinado con la heuristica de discriminación de familias del método de solucion de redes que se propone en

64

Page 77: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

C o n . a l " s i o ~

i e s t a tes is , t e ó r i c a m e n t e , e l método r e s u l t a n t e c o n v e r g e r i a con mayor r a p i d e z .

I n i c i a l m e n t e , se i n t e n t ó d e s a r r o l l a r un al.gori.tmo que p e r m i t i e r a s o l u c i o n a r e l problema d e d i s e ñ o d e r e d e s b a j o l a r e s t r i c c i ó n d e capacj.dad d e l a l í n e a d e t r a n s m i s i ó n y que, .con pequeñas modi.f icaciones, tamhj.éii s o l u c i o n a r a el. problema d e p l a n i f i c a c i ó n , ya que en ambos c a s o s , bás icamente , e l o b j e t i v o es r e s o l v e r un problema d e p a r t i c i o n e s . S i n embargo, e l a l g o r i t m o o b t e n i d o p a r a e l d i s e ñ o d e r e d e s con l a r e s t r i c c i ó n menci.onada no se comportó s a t i s f a c t o r i a m e n t e con e l problema d e p l a n i f i c a c i ó n , l o cual. o b l i g ó a d e s a r r o l 1 , a r un método d i f e r e n t e p a r a r e s o l v e r e l problema.

E l método que mejor se comportó f u e e l d e menor e s p a c i o con l i s t a s d e c r e c i e n t e s , y l a e x a c t i t u d d e s u s s o l u c i o n e s quedó i n d i c a d a en las e s t a d í s t i c a s p r e s e n t a d a s en I V . 6 .

Aún cuando l o s t iempos r e q u e r i d o s p o r io9 a l g o r i t m o s p r e s e n t a d o e n e l c a p i t u l o I V son r e l a t i v a m e n t e pequeños, este t i p o d e problema s i g u e s i e n d o Ne-Completo. No hay que p e r d e r d e v i . s t a que 3.0s c u a t r o métodos conocidos y e l método prqpues to s ó l o generan aproximaciones que no necesarj .amente son l a s s o l u c i o n e s óptimas'. E l e n c o n t r a r l a soliicj.ón ópti~ma r e q u e r i r á una búsqueda mayor, posib1,emente e x h a u s t i v a , en e l e s p a c i o d e s o l u c i o n e s d e l problema.

V . 2 .- Matemática combina to r ia d e l a pl.aniEi.cación.

La p r e s e n t e t e s i s propone un método b a s t a n t e riip:i.do y con u n margen de e r r o r d e n t r o d e l 5%, p a r a o b t e n e r s o l u c i o n e s p a r a e l problema d e disefio d e r e d e s . También, propone un método p a r a o b t e n e r s o l u c i o n e s con un margen d e e r r o r d e n t r o d e l 5% p a r a e l probl.ema d e l embala je (matemát ica combina to r ia d e l a p l a n i f i c a c i ó n ) .

65

Page 78: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Referencias

[APPLEBY-911

[ BAR1 - 7 4 1

[ BONDY-8 l ]

[ CHANDY- 7 2 ]

Referencias Bibliográficas. 1

I y notas BibliÓgráficas.

D0rj.s Appleby. Programming Languages. Paradigm and Practice. McGraw Hill, Inc. 1991. /I

1 Bari G, Analysis of algorithms:, coping with hard problems, SCIENCE # 186, 1974. pp 520-521. J.A. Bondv, U. S. R. Murty, Graph Theory with Applications,

[ CHOU-7 4 ]

[ COHEN-861

[ FARREN- 861

[GAREY-791

[GLENN-931

[HOROWITZ-781

[ IpmI-82 I

[ LAMAGNA- 8 7 ]

[PATRICK]

[ PEARL-851

[RONALD-781

[ RONALD-92 ]

[ SCHWARTZ-7 7 ]

North Holiánd, 1981.

Chandy K, Russell R, The design of multipoint linkages in a teleprocessing tree network, IEEE Transactions on.computers, VOL

Kershenbaum A, Chou W, A unified algorithm for designing multidrop teleprocessing networks, IEEE Transactions on Communications, vol. COM-22, # 11: November 1974.

Daniel I. A. Cohen. Introducction to Computer Theory. John Wiley 6 Sons, Inc. 1986.

H. Farreny. Introducción a Lisp. El. Lenguaje Básico para la Inteligencia Artificial. Masson. 1986.

Michael. R . Garey, David S. Johnson Computer And Intratability. A Guide to the Theory of Np-Completeness. W. H. Freeman And

c-21. # 10, October 1972. I

'I

Company. 1979. 'I

J. Glenn Brookshears. Teoria de la Computación.Addison-Wesley Iberoamerica. 1993.

Horowitz E,, Sahni S, Fundamentals of Computer Algorithms, Computer Science Press. 1978.

Irani K, Khabbaz N, A methology for th'e desi.gn of communication networks and the distribution of data in distributed supercomputer systems, IEEE Transactions on Computers, vol C-31,

1

# 5, MAY 1982.

Lamagna E, Infeasible computation: np-complete problems, ABACUS vol 4 , #3, Spring 1987. pp 18-33.';

Patrick W, Artificial Inteligence. Second Edition. Addison-Wesley Publishing Company. July 1984.

Pearl J, Heuristics, Addison-Wesley Publishing Company. 1985.

Ronald M. Graham. Matemática Combinatoria de la Planificación. Investigacion y Ciencia. Edicj-dn.. en Español de Scientific American. Mayo de 1978. Pag 76-85.

Rona1.d L . Graham, Donald E. Knuth, Oren Patashniik. Concrete Mathematics, a foundation for computer science. Addison Wesley Publishing Company. 1992.

1 Schwartz M, Computer-Communicatios Network Design and Analysis,

66

Page 79: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Referencias Bibliográficas.

Prentice-Hall, Inc. 1977.

[ STEELE-901

[TORRES-87]

[ TREMBLAY-8 81

(TUCKER-881

Guy L. Steele Jr. Common Lisp, The Language, Second Edition, Digital Press. 1990.

José Torres Jiménez. Aplicación del Lenguaje LISP al diseño y Graficacibn de Redes de teleproceso utilizando métodos de búsqueda. Sexta Reunión de Inteligencia Artificial. Queretaro, Qro. Junio de 1987.

Tremblay J, Manohar R, Discrete Mathematical Structures with Aplications to Computer Science, McGraw Hill Rook Company. 1988.

Allen B. Tucker. Lenguajes de Programación. Segunda Edición. McGraw Hill. 1988.

. .

67

Page 80: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

APENDICE A. C á l a u l o Larobda.

APENDICE A. C á l c u l o Lambda. [APPLEBY-911

E l C á l c u l o Lambda f u e d i s e ñ a d o p o r Alonzo Church p a r a f o r m a l i z a r noc iones i n t u i t i v a s , a s o c i a d a s a l a s f u n c i o n e s .

Una func ión puede ser r e p r e s e n t a d a como una! tup1.a f (XI, x,, . . . ,Y,, y) ú l t i m o a t r i b u t o (y) es s u v a l o r , e l c u a l e s ' lde te rminado , p r imeros ( x ~ , z,, . . . , x,) a t r i b u t o s denominados s u s argumentos.

S i se t i e n e l a expres j -ón ( x t 1). puede verse como una r e g l a d e c á l c u l o o como una e x p r e s i ó n d e v a r i a b l e numérica . Como una e x p r e s i ó n , ( x + 1) = ( y + 1) será v á l i d o cuando x = y. S i n embargo, s i 1.0 que se d e s e a es e x p r e s a r l a noc ión d e que l a r e g i a es l a m i s m a , s i n i m p o r t a r que v a l o r e s s e a n s u s t i t u i d o s e n x o y , s e r á n e c e s a r i o u t i l i z a r o t r a n o t a c i ó n :

donde e l únicamente, p o r l o s

I ,

La n o t a c i ó n Ax i n d i c a que x e s t á a c o t a d a p o r l a f u n c i ó n que p r e c e d e ( e n el

d i f i e r e , so lamente , e n que, l a e jemplo : (x t 1 ) ) . Entonces, v a r i a b l e a c o t a d a e n l a func ión , ha s i d o renombrada d e x a y, p o r l o t a n t o , l a s dos e x p r e s i o n e s r e p r e s e n t a n l a rnj.sma funcj.ón.

Una A-ExpresIdn, ( A x ( E ) ) , se denomina una a b s t r a c c i ó n , cuando genera l -i za l a e x p r e s i ó n E p a r a c u a l q u i e r v a l o r que se s u s t i t u y a e n x , d e o t r a forma una A-Erprmión se denomina una A p l i c a c i ó n . Por ejemplo, ( A x (x + 1) 4 ) , i n d i c a que se a p l i c a l a f u n c i ó n (x + 1) s u s t i t u y e n d o e l v a l o r 4 e n l a v a r i a b l e x.

Sintaxis y Semántica.

La s i n t a x i s d e l C á l c u l o Lambda u t i l i z a los, s ímbolos A , (, y ) , y un número i n f i n i t o de v a r i a b l e s . Una fórmula es una combi.naci6n f i n i t a de los s lmbolos d e C á l c u l o Lambda y v a r i a b l e s . E x i s t e n c u a t r o r e g l a s p a r a combinar l o s s ímbolos y 1.3s v a r i a b l e s e n Fórmulas Bien Formadas ( F B F ) , y tres r e g l a s d e t r a n s f o r m a c i ó n .

L a s r e g l a s FBF:

Ay (y + 1)

1.- Una v a r i a b l e s , X , es una FBF, y, 1.a 0currericj .a d e x e n é s t a FBF es l i b r e .

2 . - S i F y A son FBF, e n t o n c e s , también 1.0 es (F A ) . i,a 0cur renc i . a d e una v a r i a b l e e n F o en A, o e n ambas, es l i b r e (o a c o t a d a ) e n (a A ) , s i también es l i b r e ( o a c o t a d a ) en F o A.

3 . - S i F es una FBF y c o n t i e n e a l ,menos una o c u r r e n c i a l i b r e d e una v a r i a b l e , x, e n t o n c e s (AxF)es FRF. Todas l a s o c u r r e n c i a s d e x e n ( A x F ) e s t á n a c o t a d a s . S i y es o t r a o c u r r e n c i a d e v a r i a b l e e n F, y y es d i f e r e n t e d e x, e n t o n c e s y está a c o t a d a o es l i b r e en(AxF) , dependiendo d e s i es a c o t a d a o l i b r e e n F.

4 . - Una fórmula es una FBF y l a s v a r i a b l e s qiie aparecen en e1.l.a son l i b r e s o a c o t a d a s so lamente cuando !son seguj-das p o r :Las r e g l a s 1, 2 y 3 .

C u a l q u i e r f u n c i ó n d e l C á l c u l o Lambda puede ser c o n s i d e r a d a como una fiinci.ón d e

68

Page 81: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

una so1.a v a r i a b l e , u t i l i z a n d o una d e dos e s t r a t e g i a s . Suponiendo ,que k . A y . ( + x y ) r e p r e s e n t a una o p e r a c i ó n a r i t m b t i c a e n t e r a o r d i n a r i a , con l a func ión + a p l i c a d a a l a s v a r i a b l e s x y y. E s t a func ión puede ser r e e s c r i t a como ( ( + x) y ) , donde (+ x) es una f u n c i ó n que agrega x a s u úiii.co argumento y. La o t r a a l t e r n a t i v a , es c o n s i d e r a r (+ x y ) como (+ p) , donde p P (x y) es un argumento s i m p l e compuesto por dos v a r i a b l e s . E s t a s a l t e r n a t i v a s , s i m p l i f i c a n l a s demos t rac iones d e l a s p rop iedades d e l Cá lcu lo Lambda cuando sea n e c e s a r i o que t o d a s l a s A-Absfraccionesdeban p o s e e r un s ó l o argumento.

Las r e g a s d e t r ans formac ión , dependen de l a a c o t a c i ó n o l i b e r t a d d e l a s v a r i a b l e s . E s t a s r e g l a s , se denominan : a-conversldn, P-COfIVerSfon y

i ) -conversidn

Unaa-conversidnpermite cambiar nombres d e v a r i a b l e s p a r a e v i t a r c o n f l i c t o s d e nombres. Se u s a r á l a n o t a c i ó n [y/xlE p a r a i n d i c a r S u s t i t u y e y p a r e toda o c u r r e n c i a l ibre de x en l a expresión E.

donde y no es l i b r e e n E.

Unap-comemidnpermite a p l i c a r una func ión , A-absiraccidn, a argumentos p a r t i c u l a r e s . Por ejemplo, l a e x p r e s i ó n : ( ( k . + x 1) 4 ) se reduce a ( + 4 1) . La r e g l a es :

( A x . E l ) Ea< - > WJXI E, P

a-conversión: Ax.E <-> Ay. [ y / x l E a

q -conversidn Una permi te , a veces , remover A-abstracciones i n n e c e s a r i a s . Por ejemplo :

( A x . + 1x1 i-> ( + 1) i1

Ejemplo. Se d e s e a r e d u c i r l a e x p r e s i ó n : ( A x . [LT. + ( - x 1) 1 x 3) 9. ( A x . [ A x . + ( - x i)] x 3 ) 9 -> [h. + ( - x i ) ] 9 3) -> + ( - 9 1) 3 -> + 8 3 -> 11

A c o n t i n u a c i ó n , se p r e s e n t a n t res f u n c i o n e s d e L i s p , y como pueden ser r e p r e s e n t a d a s con A-Abstracciones.

(CAR = Ac.c (Aa.Ab. a ) ) (CDR = Ac.c (Aa.Ab. b ) ) (CONS Aa.Ab.v.f a b)

En L isp , l a S-Expresión (CDR (CONS head lyst)) produce lyst, u t i l i z a n d o e l Cá lcu lo Lambda:

Page 82: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

I

APENüIcE A. C á l c ~ l o Lambda.

(CDR (CONS head &st) = (Ac.c (Aa.Ab. b)) ( d O N S h e ~ d l y s t ) -+(CONS headlyst) (Aü.Ab.6) I1

->(Af.f ad lM) (Aa.Ab.6) = (Aa.Ab.A f a b) headls t (Aa.'Ab.b) ->(Ab.A&ffad b) lyst (1a.Ab.b) ->(Aa.Ab.b) head lyst -tiAb.bi lvst

D e l a misma forma, l a S-Expresión (CAR (CONS head l y s t ) ) produce head, u t i l i z a n d o e l Cá lcu lo Lambda:

->(Aa.a) head . ->head

Y

E l Cá lcu lo Lambda t i e n e o t r a s v e n t a j a s , una d e e s a s v e n t a j a s es que c u a l q u i e r función r e c u r s i v a es e q u i v a l e n t e a una no r e c u r s i v a . O t r a v e n t a j a es que l a eva luac ión del-erpresfonesse puede r e a l i z a r en c u a l q u i e r orden , s i n a f e c t a r e l r e s u l t a d o d e l a func ión .

. . - i

Page 83: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Implamentaci6n de los algoritmos de diseno de redes

APENDICE B. Algoritmos de diseño de redes.

Implementacibn en LISP de 1.0s algoritmos de resol.uci6n de problemas de Redes.

; Funciones pa ra l e c t u r a d e natos (defuti READ-OPCION I )

(SETQ tempo ( read- byte ) I (cond

I(< tempo 481 O) I ( > teiopo 5'1) 01 it ( - tempo 48))

I I

( de fun read- rpe ( d a t o activo1 ISHOW-MOUSE) (cond

( a c t i v o

(t ( s e t q tmp (read1 1 ) I (hide-mouse1 I ( m i l i Imp1 ( S o t q Tnip dato1 I tinpi

; Permi te d e f i n i r el area de "tia ven tana (DEFUN ven tana i x l y1 x2 y21

(MAKE-WINDOW y1 xl y2 X21 (MOUSE-BOX ( * ( 4 . X 1 1) 8 ) I* I+ Y1 11 U1 ( * i- X2 11 U1 í * ( - Y2 1.1 811 1

( s e t q tmp (CllnR-UPCA3F: (ascij. lccaid-i,yte) I I )

IDEFUN VIDEO-NORMAL I 1 (BACKGROUND-COLOR 01 (FOIIEGROUND-COLOR 151 I

(DEFUN VENTANA0 1 ) ; ven tana p o r Omisihn iventana O O B O 2611

; ~ o r r a una s e c c i h n r e c t a n g u l a r de l a p a n t a l l a (DEFUN Dorra-Area ( X i Y 1 X2 Y2)

(MAKE-WINDOW Y 1 X 1 I- Y2 Y11 ( - X2 X l l l

IDEFUN VIDEO-INVERSO I 1 i Coloco en Video Tnverso l a p a n t R l l , a

; C o l o c a el cursor en reng lhn y , col.umna X . Modo t e x t o IDEFUN G o t o X Y I X Y1

(BACKGROUND-COLOR I ) I

(SF.'P-CUIISOR Y X) I

I ( A t o m M e r t s a j o l i en e l IcrigIOn Y ( ( s e t q x 1- ( - xi XI) ( I . , ISNG~I I mensaje11 1

i C e n t r a un M e n s a j e entre la.? col.i.imnas X 1 X i (Defun Centra (mensaje X I Y X 2 )

(((ODDP X I (SETQ X (.f. Y. 1 1 1 1 1 ( ( > x O) ((SET- CURSOR Y I 4 I/ X 2) XI11

( ~ ~ 1 N C , m ~ n c a j e 1 1 1 1 1 ) i ~ n v l a u n mensaje y e s p e r a que se pi i lse t e s o (DEFUN PAUSA0

I G o t o X Y O 221

IREAD-op~ioill 1 ( P R I N C "l?resiorie Uria Tec1.a p a r a con t in i i a r . . .")

( D E R J N MARCO (x1 Y1 x i Y2 mensaje) i Xmpr i rne ,un m a r c 3 s imple

~

71

Page 84: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

1mp1ementaci6n de los algoritmos de diseno de redes

(MOUSE-BOX I * I+ X1 1) 81 If I+ Y1 (GotoXY X1 Y11 (PRINC (ASCII 7.18)) (DOTlMES ( I I- X2 X1 1))

(PRINC (ASCII 1961) 1 (PRINC (ASCII 1911) (WTIMES ( I í- Y2 I + Y1 I. ) I )

(GotoXY X1 I+ Y1 I 1)) (PRINC (ASCII 11911 (GotoXY X2 It Y1 1 1 1 ) (PRINC (ASCII 1 1 9 1 ) 1

(GotoXY X1 Y 2 1 IPRINC (ASCII 1921) (DOTIMES I1 I - X2 I + XI. 1 ) I 1

(PRINC (ASCII 21711 ( (not (NULL mensaje) 1

(PRINC (ASCII 1.961 1 )

( (VIDEO-INVERSO) (centra mensaje

11 a )

x1 Y1

I *

XZ)

I I- Y2 11 8 ) )

I1

-NORMAL1

.. .A,

(DEFUN TOTAL-MEMBER (CAMPO LISTA) (COND ((NULL LISTA) NIL)

i ESTA FUNCiON ENCUENTIIA COMPONTNTES BE l..ISTAS EN CUALQUIER NIVEL

((EQUAL CAMPO (first LISTA)) LISTA1 ( (AND (LISTP (fi.rst LISTA)) ('TOTAL-MEMBER CAMPO (CAR .LISTA) 1 1 LISTA) ( T (TOTAL-MEMBER CAMPO ICDR LXSTA) 1 ) 1 1

( D E F " lee-Num-Nodos 1 1 : Def ine Numero de Nodos (BORPA-AREA 20 10 GO 16) (GotoXY 24 13) IPRINC "Numero de Nodos 1 (SetQ 'NumNodos' (read-rpe 'NumNodoa+l) (VIDEO-NORMAL) I

(MARCO 20 10 60 161 IVTiiFO-INVERSO)

(DEFüN lee-Rango-Costos I) : Defino Li.mite Superior Cosios (BORRA-AREA 20 10 KO 16) (MARCO 20 1.0 6 0 1 6 ) (GOtoXY 21 12) IPRINC "Limite I~níerior De Costos I (SetQ 'LimInfCosto' (read-rpe * l . , im' l nfCosto'1~ (GotoXY 21 141 (PRTNC "Limite Siiperjor I)e Cost0.s ' I )

(SetQ *LimSupCosto* (read-rpe *I..¡ mSupCosto") i (VIDEO-NOFWU) I

lViD~O-'INVI.RSOl

(DEfiJN lee-Capacidad-Linea I 1 : Capacidad de l a Línea (BORRA-AREA 20 10 60 161 (GOtOXY 24 131 IPRINC "Capacidad de La Llnea 1

(VIDEO-NORMAL) I

IMARCO 20 10 6 0 16) !VIi)kX-lNYEHSO)

IsetQ 'CapLinea* (read-rpe 'Capi.inea*))

(DE" lee-Num-Max-Nodos 1 1 i Capacidad de la i i lnaa ' (BORRR-AREA 20 10 60 161 IMARCO 20 10 60 161 IVlBEO-INVERSO) lGOtoXY 24 131 lPRINC "Numero Maxim0 de Nodos : * ' I

I (SetQ * N W - ~ - N O D O S * (read-rpe "UM-MAX-NODOS') 1 (VIDEO-NORMRLI )

IDEE" lee-Iter ii : Grado Interior de1 A r b o l . (BORRA-AREA 20 10 GU 16) (GotoXY 2 4 13) (PRI.NC "Numero d o ,Il:eraciolies 2" FaSri : ) (SetQ 'Num-Iter' (read-rpe 'Num-l ter*) i I VI DEO-NOIWL 1 1

IMAIICCO 211 10 60 16) IVl.I)EO-INV~I1SO)

ldefun acumula (va lo r renolon col iuinnal i Actual.< 7.0 los co51:os acumulados en 1.a (setq costo-t 'O1 (if I > columna O) lsetq Costo-t laref *AMPLIAüA* ceriglori I - columna 11 7 . ) ) ) (sustituye-n-k-r 'AMPLIADA' I+ val .or costo-tl renglon ;columna 2 ) )

: Tabla ampli.ada

1 2

Page 85: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Implementaci6n de lo4 algoritmos de diseno de redes

IdeLun s ig-Pos lrcriglon) i D e t e m i n a c u a l es l a s i g u i e n t e p o s i c i ó n 011 l a m a t r i z nmpliadñ (IF IEQ l a r e f *AMl'LIADA* rengl.on I - 'N~imNorios' 11 0 ) NI L )

lsnta sia-tmr' l a r c f "íPI.TRDA' renoloi i 1 - *NklmNodo.q'* 1 I n i I í s e t f laref *nMPLInDn* rerigion 1- *twmNodos+ 1 1 o ) 011

ldefun costo (enlace1 ; devue lve el. costo d e un enlace

ldefun v e r t i c e l 1en:Lacei ; devunlve e). pj5me.r v é r t i c e de:i enlace

ldefun v e r t i c e 2 lenl.ace1 ; devue lve e l segundo v é r t i c e de l enlace

( f i r s t enlace))

laccond e n l a c e ) )

( t h i r d enlacel)

ldefun menor-costo-n l m a t r i i "1) i menor costo de

i r eg re sa e l menor costo de l a fami l . ia da g rado n l a r e f m a t r i z ril 0 01)

l s e t q menor 999999999999) IDaTimes (cn *NumNodos*l

(defun menor- costo- familia-" ( m a t r i z nl

( s e t q costo l a r e f m a t r i z cn I- n 1.) 211 lcond

I(< costo menor) l s e t q menor costo1 l s e t q 'nodo' I+ cn 1 1 1 1 1 )

d e nl

menor) i S u s t i t u y e e l vai.or de un elemento d e un arreglo (defun sus t i t uye- n- k- r ( a r r e g l o v a l o r n k r )

ldefun i n s e r t a - d a t o - m a t r i z (costo-t v e r t i . c e - l ve r t i ce -21 i i n s e r t a el v a l o r de un e n l a c e

( s e t f l a r e f a r r eg lo n k rl valor))

i ncmuLA-~o~~o- i 1- verti~ce-i i i s ig -pos - t i i : I n s e r t a los v a l o r e s de e n l a c e s en l a m a t r i z (defuri i n se r t a -ma t r i . 2 ( l i s t a 1

( ( n i ~ l l l j . s t a 1 t l (SETQ DATO If! E t l i s t a ) 1 ( i n s e r t a- d a t o- m a t r i z (COSTO UATO) (verticel DATO) l v e c t i c e 2 DATO) I (j.s..ta-dato-ioatrií! (COSTO DATO) (verticrZ UA'CO) ( v e r t i c e l i>A!Oi ) ( i ,nser t ;a -matr iz l c d r 1 . i c to ) 1 1

. ( de fun GENEM-TABlA-AMPl.IADA lcostos) : Generar una tebl.8 d e t r a b a j o i cada nodo posee : IcoJto num nodo S l l m a i i : Suma corresDonde a l a cuma d e l o s anteriores costos de e s t e ' i r i d i c e ' nodo

Costo corresponde a l a l i g a ae nun-riodo Con e1 nodo ' i n d i c o '

( suma- t raf iCos ' t r a i i c o ' ~ ( s c t q *I\MPLIADA* IMAKE-ARRAY (list +NUmNodos* 'NumNodos' 3 1 ) ) (crea-control. I ( i n s e r t a - m a t r i z costos) (genera-aem *cos tos-ord*i ( s e t q *Mojor-Arbol+ n i l ) i Conf igu rac ion d e l mejor a r t n l l .ocalizado1

(DEFIIN Genera-Tabla (NumNOdOs LiinSilpCoatO LiminfCosto LimSupTrofi CO I.iinlnTTrafiC01 l s e t q 'costos' n i l ) ( J n t q 'TMFTCO' n j I I (DO I ( C l i l 1 I t <:!>I 1) 1 )

1 (> cii1 Ni1iiiN<x:Ios) I

I (SetQ 'TRAFICO' (Append *'I'RAFICO' ( l is t tempo) 1 I ( D o ( ( c n 2 I t c n l 1) (1. ci i2 1) ) 1

( ( > cn2 NumNodos))

(seto. 'costos' (Append *costos' ( l i s t I

73

I.

Page 86: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

~mpi-ntacibn de 10s algoritmos de diseno de redes

(l.ist l i LirnInfcosto (random-mimber l e 1 ( - i.jmStipcosi:o LimIníCosto) 1 ) 1 cn2 c n l i 1 1 1

1 ) ) ) (ordeiial

(set9 *capLinea* (suma-traticos *trafico*))) ( GENEIIA-TAl3l.A-AMPI:lAl)A "cos l:os-o rd') 'I

IDEFUN MENU0 (MAKE-WINDOW O O 2 6 8 0 ) (CLENI-SCREEN) (MARCO O O 79 231 (VIDEO-I NVERSO) ( c e n t r a *CENlDET* O 1 801

( c e n t r a 'PROGRRMA' O 3 80) (cent ra 'OPCION' O 4 80) (VIDEO-NORMAL) IGOtoXY 6 5 ) (GotoXY 26 61 (GotoXY 1 20) I G o t o X Y 1 21)

(GotoXY 2 9 8 ) (PRINC "1.- Definir P a r a m e t r o s " )

( c e n t r a *MAESTRIA* o 2 a o i

(MARCO 27 6 53 1 7 " M E N 11 " ) : (VIDEO-INVERSO] (centra " M E N U " O 6 BO) (VIDEO-NORMAL) I'

(GOtoXY 2 9 9) IPRINC "2. - Ver Parametros ''I (GotoXY 29 I O ) IPRlNC " 3 . - G e n e r a r Tab1.a *' 1 (GotoXY 29 11) (PRINC " 4 . - G e n e r a r Red " I

(GotoXY 2 9 131 (PRINC "6.- Cargar Datos O m i s . " ) (GotoXY 2 9 1 4 1 IPRINC "7.- Ver T a b l a "1 IGOtoXY 29 151 IPRlNC " 0 . - salir ' * I (centra "Opcion : " O 16 001)

(GotoXY 2 9 121 IPRINC "5.- A r b o l de Expansion")

(DEFUN NP-COMPLETOS 11 : PROGRAMh PRINClPAL (SEMILLA) (inicializa) . (DO l(OPCI0N 0 ) )

IMFNUI ~,

(SETQ OPCION IREAD-OPCIONI ) (CONI) IIEQ OPCION 1.1 1defi.rie-parsmet:ros) 1 : I IEQ OPCION 21 (ver-parametros) 1 I IEQ OPCION 31 ( G e n e r a - T a b 1 . a 'NumNodos' *i,imsupCosto*

I (EO OPCiON 4 1 ICalcula-Red *COSTOS*I I *LimIiifCon to* 'i.i,mSupTra fico* *LimInfTrafi col'l )

. .. i (EQ OPCION 5 ) (AEM *COSTOS-ORD') I

((EQ opcion 01 n i l ) ( (eq opcion 9 ("Chandy") 1

I IEQ OPCION 6) (VRLOR-DEFAULT] 1 IIEQ opcion 7 ) limp-costos))

!I (T (SETQ OPCION 01 1

((EQ OPCION 01 1 1 (CLEAR-SCREEN) 1

1: ldefun define-parametros 1 ) : p a c a m e t r o s IBOIIIUI-AREA 35 '9 60 20) (MARCO 35 9 60 20 *' PARAMETROS " ) IGOtoXY 37 11) (princ "1.- Numero de Nodos " 1 : II de Nodos de 15 Red IGOtoXY 37 121 lprinc "2.- Rango de Costos " 1 : Rango de Costos IGotoXY 37 131 lprj.nc " 3 . - Rango de T r a f i c o " ) : IIíingo CIE 'Ti-ai.ic:o IGOtoXY 37 1 4 1 IGotoXY 31 151 lprinc "5.- Num. Max. Nodos 1 : Numero Maxim0 de Nodo5 Conect.ado.5 a O t r o Nodo IGotoXY 37 161 lprinc "6.- G r a d o Interior " I ; Grado I n t e r i o r del A r b o l IGotoXY 3'1 171 1p;j.nc " 7 . - Nim. i t e r . Fase") : Numero tie iteraciones liase 2 ( c e n t r a "Opcion : 37 19 601 lse tq opcioii (READ-OPCIONI lcond

(print " 4 . - Capacidad de Line:,") : Capacidad de i.lr,ea

( (EQ OPCION 11 (lee-Num-Nodos)) : Define Num. Nodos d e l a Red ( IEQ OPClON 21 (lee-Rango-Costos)) ; Uefine ¡Am. Superior Costos ((EQ OPCION 3 ) (lee-Rango-Trafico)) : Uef ine Tango trafico ((EQ OPCION 4 ) (lee-Capacidad-Lineal) : Capacidad d e las l i n e ñ s I (EQ OPCION 5 ) ll.ee-Num-Max-Nodosl 1 : Nim. Max. Nodos Conectados

I

74

Page 87: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

1mplementaci6n de los algorirmos de diseno de red00

( (EQ OPCION'6) ( l e e - G r a d o ) ) I (EQ OPCION 1 1 ( l e e- I t e r ) )

1 1 i Num. Max. Nodos C o n e c t a d o s i Num. Max. N o d o s C o n e c t a d o s

( d e f i l i i v e r - p a c a m e t r o s i l i p r e s e n t a .Los Dararrtetros a c t i i ñ l (UORRA-RREA 20 Y 60 20) (MARCO 20 9 60 20 " PARAMETROS "1 ( G o t o x y 22 1 1 ) ( p r inc '* N u m e r o de Nodos : " I (pri.riri ~ G O ~ O X Y 22 121 ( p r i n c I' Rango de costos : " I ( p r . i n c

(GotoXY 22 13) l p r i n c '' Rango de T r a f i . c o : "1 ( p . c i n c

IGotoXY 22 1 4 1 l p r i n c " C a p a c i d a d de Linea : " I l p r i n c IGotoXY 22 151 l p r i n c 'I Num. Max. N o d o s : "1 ( p r i ~ ~ c (GotoXY 2 2 161 (Prilic " G r a d o i n t . del A r b o l : " I i p r i r i c IGotoXY 22 17) í p r i n c '' Suma de T r a f i c o : " I (pri,nc iGotoXY 22 181 (print *' # de I t e r . 2" Fase : " I i p r i r w ( c e n t r a "<Esc> ... 20 1 9 601 ( r e a d - o p c i o n ) l

(PRINC ( A S C I I 196) I ( p r i m *i,imSupCc.iato*)

(PRINC ( A S C I I 196) I i p r i n c ' L i m S u p T r a f i c o * )

es en l a pontal1.a

+NiimNodos* ) * L i m l . n f c o s t o * ]

+ L i m T n f T r a fj.co* 1

* C a p L i n e a * ) 'NUM-MAX-NODOS" I ' G r a d o - I n t e r i o r * ) ' S u m- T r a f i c o ' ) 'Num-I te r*)

(DEFUN I N I C I A L I Z A [ I (SETU *CENIDET* "CENTRO NACIONAL DE INVESTIGACION Y DESAMOLI..O TECNOT.OG'ICO") (SI(I'Q *MAESTRIA* "MN?STRIA EN CIENCIAS COMPUTACIONA1,ES") (SE'PQ 'PROGRAMA' "SO1,UCION A PROBLEMnS NP-COMPI.I:TOS"] ISETQ *OPCION* "DJSEAO DE REDI'.S"] (SEIQ +NumNodos* 20) i por omi.siori, 20 nodos i S W Q * L i m s u p C o s t o ' 1001 i L i m i t e siiperj.or de costos 1 0 0 ISETQ * L i n i . I n f C o s t o * 2 0 ) i L i m i t o I n f e r i o r de C o s t o s 20 ISETQ ' L i m S u p T r a f i c o * 201 ; L i m i t e S u p e r i o r de T r a f i c o 20 ISE'iQ * L i m l n f T r a f i c o + 101 i L i m i t e I n f e r i o r de T r a f i c o 1 0 (SETQ * C a p L i n e a * I* * L i m S U p T r a f i c o * *NumNodos*I 1 (SETQ 'AEM' N I L ) ; Arbol de E x p a n s i o n M i n i m a (setq +CONTROL+ N I L ) (SETQ 'COSTOS' NIL1 i l i s t a de C o s t o s (SETQ 'COSTOS-ORD' N I L 1 i L i s t a de C o s t o s o r d e n a d a (SETQ *AMPLI.ADA* N I L ) : L i s t a de C o s t o s o r d e n a d a i s e t q *TRAFICO' n i l l i Li.5t.a de T r a f i c o ( s e t q *TRAFICO-ORD' n i l l ; L i s t a de T r a f i c o O r d e n a d a ( s e t q ' u n i r - r a m a s ' TI ; I n d i c a d o r , para u n i r r a m a s (setq ' tam- rama' O) ; Tamaño Máximo de una rama ( se tq 'SUM-TRAFICO' O ) i S u m a t o r i a de l 'Trafico G e n e r a d o por todos los n o d o s (SETQ 'FACTOR' 0 . 7 0 ) i F a c t o r p a r a p o r c e n t a j e de R e d . (se tq ' G r a d o - I n t e r i o r ' 1 1 i G r a d o I n t e r i o r de l A r b o l lsetq ' N u m - I t e r ' 11 i N u m e r o de I t e r a c i o n e s S e g u n d a Fase 1setq ' M e j o r - A r b o l * n i l l ; C o n f i g u r a c i o n del mejor a r b o l loca l izado (se tq *MENSAJE-NODOS' "TRAFICO NODO") b e t q 'NUM-MiC-NODOS* *NumNodos*l i N u m e r o M a x i m 0 d e n o d o s coriectados a otro n o d o

i C a p a c i d a d de 1.1 L.iriea 20

I (DEFUN RANDOM-NUMBER (m) ; G e n e r a N ú m e r o s P s e u d o - a l e a t o r i o s

(SETQ *SEED* (REM (4- 2113233 I* *SEED' 2718211 I 9999991) I ( E M 'SEED' NUM))

( d e f u n s e m i l l a (1 ' i n i c i a l i z a l a generación de N ú m e r o s Aleatorios (SETQ *SEED' IAUDi (MOD (TIME) 1001 I 1 1

(DERIN C> (1.1 1 ,2 ) (> (FIRST L11 (CAR 1.21 1 ) IIIEIUN C< lL1 12) ( C ( F I R S T L11 (CAR LZ) I ) l d e f u n o r d e n a ( 1

(SE1'Q "COS1'OS-ORD'. (COPY-LIST 'COSTOS') I ISETQ *TIU\FICO-ORD' (COPY-LIST + T R A ~ l C O ' ] 1

(SEI'Q *'TW\F'lCO-ORlS (SORT 'TRAFICO-ORD' ' C < 1 ) ) iswQ *COSTOS-OIII>+ isow *COS~OS-OIID* * C C I 1

i d e f u n genera-aem l l i i t i l l i A u x i . l i o r en l a g e n e r a c i h n (cr~a-co,i t :roll (SEI'Q captempo + C a p L i n e a + l ( se tq *CapL.ir iea* ( s u m a - t r a f i c o s *TRAFICO1) ) I S e t Q NurnTempo ' N ~ m - M a ~ - N o d o s + l ( S e t Q Num-Max-Nodos *NumNodo~*) (SetQ ' un i r- ramas ' t ) (setq *sig-rama' 1) (SETQ L i s t a - T (copy- l is t L i ~ s t a l )

A i b d de E x p a n c i 611 M í n i m a

75

Page 88: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Inplementaoi6n de loo algoritmos de diseno de redes

(SETO *AEM' NIL1 icaliuia-grados * a e m * ~ IAEM-AUX Lista-TI (SetQ +CapLinea' captempo1 (SetQ Num-Max-Nodos NumTempo)l

(genera-aem lista1 limp-tabla 'AEM*l I (gotoxy 10 2 0 ) (PRINC "COSTO : '"I (print (COSTO-ARBOL + p M * l I (READ-Ipe T 1'1 I

; Invoca la generación del AEM y io desplego en pantalla (DEFUN AEM (lista)

(DEFUN AEM-AUX lI.ista1 i Calcula el Arb01 de Expsnsi.6n Mínimo. ICOND

I (NULL Listal *AI:M*l

1 lNO-I:AZOl (FIRST Lista11 ( (COMPLETO 'AEM'I 'AEM'I

(.SETQ *AEM* (APPEND *AEM* (list (FIRST L i s t a l 1 ) I IAEM-AUX (REST Lista) I

1 IT IAEM-AUX IREST Lista) 1 ) I I

IDEFUN NO-IAZO (NODO ARB01.1 i Verifica si no s e forma un lazo con NODO en ARBOI. I (NULL ARBDLI TI ISETQ INDICE (NODOS-EN-ARBOL NODO AFIBOI.1 1 ICOMI, .__. -

I I = INDICE 1) TI i PUEDE CONECTARSE

ltIND-P' ISetQ 'PRIORIDAD' (Append *PRIORIDIU>' (list NODO111 NIL1 ; PENDIENTE DE ANALIZAR IT NIL1 I I 11- INDICE 2) NIL); CICLO t

(defun rama-verti,ce (vertice control I i Determina a que rama pertocene i ln Vécl:.ice

(defun pon-rama lvertico rama) ; Asigna Una rama a un vbrtice.

ldefun cambia-rama (anterior nuevo1 i Fusiona dos ramas del. árbol

larof control I- vortice 11 I I

lsetf (aref *Control* I- vertice 11) rama11 I

IDoTimes l c n 'NumNodos'l (if (equal laref *'control+ cnl anterior)

lsetf laref 'control' cn l nuevo) I I I (defun no-lazo1 (nodo) ; Verifica si no se forma un lazo con NODO en.A[tBOL

lsetq set-veiticsl (rama-vectice (verticel nodo) 'conti:pl*ll i r a m a del vertice 1 Isetq set-verti .ce2 irama-vertice (vereice2 nodol *~~ilti:oL*l I ; r a m a del "artice 2 lsetq trafica-tmpl (obtiene-trafico-vertice (verticel nodol *trafico*) 1 lsetq trafico-tmp2 (obtiene-trafico-vertice IverticeZ nodol 'trafico')) I (null nodol (print "NODO NULO ! " I I (cond

I land (null set-ve'rticell lniill set-vertice21 I i nueva r a m a <-""A

I I<= It trafico-tmpl. trafico-kmpZ) *CapJ.inea*l (pon-rama (verticel nodol *sig-ramo'l (pon-rama lvertice2 nodo,) 's ig-ram*) (agrega-trafico-rama 'sig-rama' I t tra'fico-tmpl trafico-tmp?) I i Control del

(setq 'sig-rama' It 'sig-rama' 11 T r a f i c o de las Ramas

it i (print *' nueva rama. exceso 'de trafico") nil1

1 (AND ieq set-verticel nil) (ver-otr-restric ivertiCei nodol 1 )

set-vertice2 111 i verticel <- rama de vertice 2 l?""Ci

I I<= I+ trafico-tmpl (trafico-en-rama I f set-vertice2 1.1 I I +CapLiriea*l (pon-rama (verticel. nodol set-vertice2) (agrega-trafico-rama I t set-vertice2 11 trafico-tmpl) i Control. del Trafico de

lsetq 'caso' 11 (Act-Grado lverticc2 nodol 1.1

las Ramas

+! -, It i ( p r i n t "Veitice Dos en Arbol, Uno exceso de Trafico") nil)

. . . .

76

Page 89: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Impiementación de los algoritmos de diseRo d e ,

1 ) í (AND ieq set-verti.ce2 n i I ) (ver-otr - iect r ic ( v e r t i c e l nndo)

se t- ver t icel 11) i ver t i ce i c- r a m a de v e r t i c e 1 1 r n r i r l , - -. , .-

i I < = 1.1 trafico-tmp2 (trafico-oil-rñina (.I. s c t - v e r t i c e l I I 1 ) . y : a p i . i ~ ~ e a * ) (pon-rama ( u e r t j c e 2 tnodo) net-verticel1 iaqreqa-t~rafico-rñm8 ( I . set- ver t icel 1) trofi,co-tinp%i i Control d c l 'rcafi.co do

la ,? Ramas ( s e t s *caso+ 2) (Act-Grado ( v e r t i c e l nodo1 11

+ I I.,

í! i ( p r i n t "Vertice U n o en Arhol.. Dos li.xcaso de Trafico") 1111 I

I ) (i= set -vnr t icel set-vertice21 i c ic lo

i (p r in t " C i c l o ! ! ! " ) í se tq 'caco* 4 1 n i l )

( t i Union de dos ramas icond

í (not *unir-ramas*) n i l ) í (AND I < - (.t (trafico-en-rama í+ set- ver t icel 11 I itrafi.co-eii-rñiil? ( e set- ver t icea 1 1 1 )

*Capr.inea*l (ver-otr - res t r ic ( v e r t i c e l nodo) se t- ver t icel

(cambia-rama set-vertice2 se t- ver t i ce l ) (agrega-trafico-rama I + s e t- ver t i ce l 11 ( i . set-verticoz 1 1 i i Control de l T r a f i . c a

15etq *caso* 3 ) (Act-Grado (verticel . nodo1 1.1 (Act-Grado ( v e r t i c e i nodol 1 ) t l

(nodos-en-rama set-vertice2) (vertice2 nodo)ll

de l a s Ramas

( t ; ( p r i n t "Uni.on de Dos Ramas, Exeso de 'Trafico") ni 1 I

) I ) )

lDEF1.W NODOS-EN-A!lBOL (NODO AllBOl.1 i Dntncmi na cllant0.s v6ri:ices da NOI>ü ristaii an ARBOI, (SE1'Q CONI'ADOR O ) ( I F (NODO-EN-NIIBOI, (ver t icel NOW1 RRROILI (SETQ CONTAWR 1.1. CONTAIX>R 1) 1 1 (IF (NODO-EN-ARBOL lvertice2 NODO1 ARBOI.) ISETQ CONTADOR i+ CONTN>OR I.) 1 1 (IF (AND 'IND-PI (= CONTADOII 2 ) (RT:MOVT NODO ARBOI. EQIJAL) 1 i CICI..O

CONTADOR1

(DEFIJN NODO-EN-RRBOI. (NODO NIBOL) i Determina 5.i los v6rt ices de NODO w e a n en ARBOT. (COND

( (NULL NIBOL) NIL) ( ( O R (- NODO ( v e r t i c e l (first NIBOJ~.l 1 I i- NODO ivert ice i l f , i r 6 t ARIKJL) 1 ) I T I (T (NODO-EN-ARBOL N O W IREST M O L 1 1 )

I 1

(DEFIJN NlM-NODOS-CONECTAWS IMATRIEI i detnrmi.iia c u a n t o s riodon posee AlTM (se tq cwentñ 01 ( W T I M E S (CN *NumNodos'l

cuontai

( i f (not (nu1.i loref matriz cn)]) (Seta cuenta (+ C U O n t a 11 I I I

ldefun actualiza-control (nodo) ; Isctí l ace f ~'CONPROI..' I - ( i econd nodo) 1 ) ) 1.1 l se t f l a r e f +CON1'ROL* ( - ( t h i r d nodo) 1 1 ) 1) i V E R I F I C M LA LISTA DE PRIORII>AOES I (NO'T NULL tPRIORTDAD*)

(SETO 'IND-P'* T) IAEM-AUX * P H l O R I DAD') ISETQ 'IND-P* N I J . . l l )

(defui, completo (arholl i VeriCica s i el ARM está completo (= (LENGTH RRBOL) ( - *NumNodos* 1) I )

Ideíun imp-costos 0 i impcj.me I n s listas de costos (BORRA-AREA 2 0 . 9 60 191 (MRIICO 20 9 60 1 9 '* VER DATOS " I

"^

77

Page 90: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Implementacibn de los algoritmos de diseno 'de redes

(ORIGINAL1 " I (ORDENADO) " ) (POR NODO1 " ) ( O R I G I N A L ) ''1 1 ORDENADO1 " 1

1"1 .r...

( se tQ OPC (read-opcion) ) (VIDEO-NORMAL1

(bond ((AND I > = temp0 costo-sol) (> COStO-SOl 0 1 ) (gomxy (4 * X " ( * 6 (t cn 1))) (t 'y+ 'NurnNodos'' 10)) lpr i r ic ( a s c i i 451 I I i I

I t e r p r i ) (p r i i i c "Costo R E M " I ( p r i . n t costo-aeml icond

( p r i m '' " I , ( read-cpe T TI)

( (>= costo-sol costo-aem) (p r i r i c "costo so iuc ion ''1 ( p r i n t costo-sol) 1 )

; Prepara l a impresión de l . a tab1.a ampliada.

( ( n u l l l i s t a l t l t s e t q * z * (+ * z * 1)) (Imp-Amp (rest ( f i r s t l i s t a l ) +z* 2) lpre-imp-amp irest l i s t a l 1 )

ldefun pre-imp-amp (lista)

(defun Imp-Amp l l . i s t a x cuantos) : Imprime l a tabla ampliada ( l o r (null l i s t a 1 ( n u l l (second ( f i r s t l i s t a l l l ) t) ( a s t q nodo (second ( f i r s t l i s t a l ) I ( s e t q costo ( t h i r d ( f i r s t listal) I (GotoXY ( t 'x' ( + 6 I - Cuantos 1))) +y*) lpr inc cuantos1 I G o t o X Y O I + *y' XI) ( p r i n c XI (GotoXY í + *xi í * 6 i- c u a n t o s 1 1 i I (+ *y+ X I I ipr i .nc costo1 (Imp-Amp (REST lista1 x (+ Cuantos 11))

; Invoca la impresitin d e la tabla de Costos (defun imp- tabla (listal

15et0 " X " 21 ( se t< '*y* 31 I V 1 DEO-NOIIMAl.1 (clear-screen1 ( imD-Ord listal (prir ic '* *'I (read-rpe T T I 1

(defun imp-Ord ( l i s t a 1 ; Imprime l a t a b l a de Costos ( ( n u l l l i s t a l t l (GotoXY I + 'x* i* 6 ( - (second ( f i r s t listal) 1 1 1 1 '+y*]

( p r i n c (second ( f i r s t l i s t a ) I I ( G o t o X Y O 11. *y' ( t h i r d ( f i r s t lista1)Il lprinc ( t h i r d ( f i r s t ( G o t o X Y (+ *x* I * 6 I - (second ( f i r s t l i s t a ) ) 1 1 ) )

lista)))

Page 91: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

6L

Page 92: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Implementaoión de los algoritmos de diseno de redes

1s:tq *COStOS* ( ( 2 6 1 21 161 1 31 166 1 4 1 I 5 9 1 51 160 1 61 I 9 9 I. 71 134 1 81 I 5 9 1 91 199 1 101

( 4 4 2 31 I 8 8 2 4 1 192 2 51 I 9 0 2 61 130 2 7 1 143 2 81 177 2 91 127 2 101 ( 9 9 3 4 ) (99 3 5) 172 3 6) ( 6 9 3 7 ) I 9 4 3 R ) ( 0 3 3 91 163 3 1.01

182 4 51 153 4 61 173 4 71 I10 4 81 1 4 4 4 9) O 0 4 101 151 5 61 I 9 0 5 71 135 5 81 I 8 1 5 91 197 5 I01

1 4 4 6 71 I 0 2 6 81 103 6 91 132 6 101 155 7 81 126 7 91 160 7 101

106 8 91 I 7 9 B 1.01 , 173 9 10)))

ISetq (CETQ ISETQ ISETQ ISETQ ISETQ ISETQ ISETQ 15eto ;SET; *COSTOS~ORO* N T L I : Lista de Costos ordenada ~

ISETQ 'AMPLIADA' NII.1 : Lista de Costo5 ordenada lsetq *TRAliICO-ORD* nill ; Lista de Tratico Ordenada Iseta 'NUM-NAX-NOWS' 'NumNodos') ; Niiniern Maxim0 de nodos C O I ~ C Iord8nal '

(GENERA-TAüi.4-AMPLIADA *costos-ord*l I

115 01

de la

tados

1 1 4 9 ) I 1 4 10111

I,i

(defun suma-traficos (lista-trafico) lcond

1 (null lista-trafico1 lsetq *s.um-trafi.co* 01 01 It l s e t q 'SUM-TRAFICO' I+ lcaar lista-trafico1 (suma-traficos Irest 1i.sta-trafj.co1 I I I

'SUM-TRAFICO' I I ; Calcula el numero Mlnimo de Hijos del Nodo R a l z ldetun calcula-hijos (sum-trafico CapLinea) llriull CapLineal 'Num-Max-Nodos'l : No definido. No Rostricci'," lleq CapLinea 01 *Num-Max-Nodos'l ; No definido, No Rastricci"n liound I/ sum-trafico Capi.i.nea1) I : Entero Mayor

'I IDEFUN Calcula-Red lcostosl

lsetq 'mejor-costo' 999999991 lsetq n~evo-~osto 999999991 llnull *'aem'l (genera-aem 'costos-ord*)) lsetq costo-aem-local (COSTO-MOL *AEM*)) ll> *Num-Max-NOdo5* 'NumNodos'I ISETQ *Num-Max-Nodos* 'NumNodos*)) lsetq num-hijos (calcula-hi.jos 'sum-trafico' +CapLi,nea+,) 1 (BORRA-AREA 27 6 54 101 lcond

lI> num-hijos +Nu-Max-Nodos'l : Tiene So1uci"n ? ' (print "El sistema No tiene Solucion el trafico requiere que") Iprinc '* (print *Num-Max-Nodos+l IPRINc 'I debe ser mínimo : "1 (print num-hijos1 Iread-rpe T TI

el nodo concentrador tenga un grado m a y o r a " I

I

; Posiblemente tenga so1uci"n ; Ciclo desde Grado = Num-Hijos. Hasta NUm-Max-Nodos. laetq ' tam- rama' O) (calcula-manimo-grado Irest 'trafico-ord*l Icñar *trafico-ord*)) l s e t q cn 01 lsetq *num-arboles& 01 lsetq cual-iteraiion O) lsetq cn2 01 lsetq 'unir-ramas' nill IDO l l c n O It cn 1)))

It

I I O R I>= cn *tam-rama*) I>= cn I- 'Num-Max-Nodos' Num-Hijos11 I<= nuevo-costo costo-aem-local)))

ll< 'CapLinea' 'Sum-Trafico') ; I Restricci"" poi tr fico 7

I

lcond

lsetq padre 11 (genera-arbol-par padre It cn Num-Hijos1 I : Nodo Concentrador

80

Page 93: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

. . . ,Implementacibn de los algoritmos de diseRo de !des ~.

. . It

(Setq tempo (menor-costo-familia-" *RMPLIADA* It cn Num-Hijos1 ) 1 lsetq padre *nodo*l lyonera-arbol-par *nodo* I+ cn Nuin-lij.jos) 1 1

I lsetq arbol-teinporal +arbol-par') (Do llcn2 'Grado-Interior' (+ cn2 1 1 1 )

I i>= cn2 'Taiii-Rama') I<= nuevo-costo costo-aem-I ocas) I>= tempo 'Mejor-Costo*ll (setq *costos-trabajo* nil1 lgeriera-costos-trabajo *COSTOS-ORD' padre) (crea-control) lsetq +sig-rama* 1) (prepara-control 'arbol-par') lsetq 'costo-anterior* O! (forma-red *~ostos-traba]o* *NUm-Iter* (t cn (: Nilm-Hjjos 1 ) ) (- cn2 11) (agrega-faitantes 'costos-trabajo*) lsetq nuevo-costo (COSTO-ARBOL *arbol.-par*) "

(setq *num-arbolec+ (+ 'num-arboles* 1 1 1 (read-byte) icond

i Costo Aprox. de Fam. > Cota Superior ?

I I< nuevo-costo *mejor-costo*I icetq 'Tam-Roma* ldeterrnina-inaYo~-fJmiiia nuevo-costo) 1 icetq *mejor-costo* nuevo-costo) (setq 'mejor-grado-i' cii21 (setq 'mejor-f.amj.14a' 1.1. cn Niim-i i i jos l I

. (sotq *mejor-arbol* +arbol-par*l (setq cual-iteracion (+ cn 11) . . ísetq cual-arbol *num-arboles*l (GotoXy 5 9) (princ I' 9 Error : (GotoXy 19 9) (prink I/ i * I- *Major-Costo' costo-am-local) 1.001 *Mojor-Costo*)) IGotoXy 5 101 (princ Costo AFN : " I (print Costo-Rem-Local1 (GotoXy 5 11) (princ "Menor Costo : " I ,)print *Mejor-Costo') iGotoXY 5 81 (princ Grado P. : I (GotoXY 1 9 8 ) (print I+ cn Niirn-ttijos)) . . (GotoXY 5 7 ) (princ ">F.im. a eco.: " ) (FtoxY 1 9 1 ) (print *Tsm-Hama*))l

(GotoXy 5 1 2 ) (princ "Procesando : G.Padre : I (print I+ cn 111

IGotoXY 21 13) ipri.nt cn21 (GOtoXY 5 1 4 ) (princ "Familia : " I (print 1.t cn Num-Hijos)) (GotoXY 5 1.4) (print blancos) IGotoXY 5 1 4 1 (pij.nt *arboi-par*) (setq *arbol-par* arbol-temporal) (read-byte1

( (<= nuevo-costo costo-aem-l.ocal1) I (princ "voy en l a iteracion " I lprinc cnl lprinc " De : " ) (print *tam-rama*l I(<= nuevo-costo costo-aem-local)

" )

(GotoXY 5 13) (priy "Grado interno : " I

(>= cn +tam-rama*) (print cn) (print *tñm-rama+ll

;prim "Arboles Analizados : "1 (prim cual-arbol,l lprinc " / " I (princ "Costo/CmM : " I lpiinc *mejor-co~to*i iprinc " /") lprini: costo-aem-local) (princ "En la Iteracion : I (print cual-itoracion) (princ "Grado P / I : " I (princ *mejor-familia*) (princ "I".) (print 'mejor-grado-i'l

(print +num-arboles*)

( b r i m "Tamario de Rama Calculado : " I (print 'tam-rama*l (princ "Mejor Arbol : " I (print 'mejor-arbole) , (read-rpe T T )

1 1 )

ldefun genera-arbol-par (padre grado) i Genera e1 Arbol Parcial, Grado lsetq 'arbol-par' n i l ) (DoTimes lcn grado1

lsetq ~051.0 l are f 'AMPLlAllA* ( - padre 1) cn O ) ) (setq nodo (are f 'AMPI.T~ADA* ( - padre 1.1 cri 11) l se tQ *arbol-par* (Append *arbol-par* I L I S r (list costo padre nodo1 1 1 1 ) )

ldefun genera-costos-trabajo (costos-1 padrol lcond

( ( n u l l costos-11 *costos-trabajo') (t lcond

((or i= (cadar costos-1) padre) I= icaddar costos-11 padre11 (genera-costos-tiabajo (rest costos-11 padre))

81

Page 94: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Implementñcibn de los algoritmos de diseño de redes

It (setq *costos-trnhajo' (append 'costoi-tcahñjo+ (1 ¡.sp (cnr coitos-I 1 ) 1 ) (genera-costos-trabajo irest costos-11 padre)ilIl)

(defun menor-enlace-de (nodo costos costo) i Localiza el enlace de Menor Costo de Nodo lcond

( ( n u l l costos) nil) ( I > ( m a r costos) costo) nil) ( l o r (= icadar costos1 nodo) 1 - (caddar costos) nodo)) i Involucra a l Nodo 7 (If (NO-LAZO1 (first COStOSI) (SETQ *arbol-par' (APPEND *arbol-par' (list (f1TSt cOSt0s)))J

(menor-enlace-de nodo (rest castos1 coctol~l it (menor-enlace-de nodo (rest costos1 costo1)J)

(dafun prepara-control larbol) lcond ( ( n u l l arbol) t) ,- < L (pre-ini-aux (verticel. (fi.rst arbol) I )

(prepara-control (rest arbollll~l (pre-ini-aux (vertice2 (fi.rst arb011 1 ) I

i Costos <- Relacion de Costos i iteraciones <- Numero de Iteraciones en esta fase ; x <-- Grado de l a Famil.ia B a s e para l a s conexiones de esta f a se ; y <- es el y-avo costo del nodo de menor costo de esa familia

ídafun forma-red ICoStoS iteraciones x y ) 'arbol-pac*i LOO) I - 'NumNodos' 1 1 1 ) ((null C05tOS) 'arbol-Dar*)

1

(lcompieto 'arbol-par'\ *arbol-par*) ( I = x O 1 *arbol-par*) ( T o l a *coceo-anterior' O) ( b T i m e s (cn iteraciones)

licompleto 'arbol-par') *arbol-pat+l (set! 'costo-anterior' (familia-costo-menor-a +'AMPLIADA' x 'costo-anterior+))

(cond (print * ' I i (rQad-rpe T T)

I (NODO-EN-ARBOL +nodo-si.g* 'arb01 -par*) i V9tjce en el rbol~ ? CoriecI:ar (sets Costo laref *WPLIAUA* i- 'nodo-siq* 1) y o ) ) (setq nodo laref *MPLImA* i- *nodo-sig* 11 y 11) i Conecta el Nodo Recia Procesado ISetQ nuevo (list costo 'nodo-sia' nodo)l I

I (NO-LAZO1 nuevo) ISETQ +arbol-par' (APPEND *arbol-par' (list nuevo))) (ICOmPletO *arbol-~ar*l *arbOl-Dar*l i Conecta un enlace de menor coito asociado a l nodo recia conectado (menor-enlace-de nodo costos costo))))))

It 'arhol-par'll)

i regresa el l a familia de grado n.,con menor costo, pero no menor a costo-lim

ldnfun fami1.ia-costo-menoi-a (matriz n costo-lim) 11 !I lsetq menor 999999999999) lsetq *nodo-siq+ (t cn 1))

IDoTimes (padre 'NumNodos*) (setq costo laref matriz padre I - n 11 211 lCOIld

(land ~ ( < = cost0 menor) I > = Costo costo-1i.m) (aref *CONTROL2* padre 1 ) lsetq menor costo) (setq 'nodo-sig. I + padre 11 I I ) 1

lif (< menor 999999999999)

menor) lsetf iacef 'CONTROL2* i- 'nodo-sjg' 1 ~ ) ) N I L ) )

Ideftin obtiene-trafico-vnrtice (vertice trafico) (cond

((null trafico) O) ( I = vertice icadar trafico) 1 icaar trafico) 1 It (obtiene-trafico-vertice vertice (rest trafico)))

1 )

icetf (aref *CONTROL-T' i- rama 1 1 1 it laref *CONTROL.-T+ ( - r a m a 1 1 trafico) 1 ) idefun agrega-trafico-rama irama trafi.co)

, .

8 2

Page 95: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Implementa=ión Se los aigorit-a de dimno da rei8

ldefun trafico-en-rama (ramal lsetq tempo laref *CONTROL-T* I- rama 1 ) ) ) tempo1

ldefun pre-ini-aux (nodo) : lsetq set-verticel (rama-vertice nodo *control'l~) i cama del vertice 1 lsetq trafico-tmpl (obtiene-trafico-vertice nodo 'trafico*)) icond

lleq set-verticel nil1 i nueva rama (pon-rama nodo I- 'sig-rama' I.)) (agrega-trafico-rama +sig-rama' trafico-tmpii : control del Trafico de ias Ramas l3etq *sis-rama* I+ 'sig-rama' 11) I

Controi del Trafico de las Ramas I 1

i Numero M ximo dQ Nodos que se Pueden Conectar en una Rama : i En 1unci"n del tr fico Generado por cada nodo. ldefun calcula-maximo-grad? (trafico auxiliar)

I (null trafico) lsetq *tam-rama* 01) i (<= (+ lcaar trafico) auxiliar) *CapLinea*) (calcula-maximo-grado (rest trafico) It auxiliar lcaar trafico) I I (setq *tam-rama* I+ *tam-rama* '11) I (t (calcu1.a-maximo-grado (rest trafico) auxiliar)

lcond

I 1

lcond idefu~g agrega-faltantes (costos)

I (OR ( n u l l costos1 lcoinpleto 'arbol-par') I

lt lseta nodo-tmo (first costos11 * a rbol-par* I

. . . . icon:

( (OR (Nodo-En-Arbol (verticel nodo-tmpl *arbol-par') (Nodo-Eri-Arbol lvertice2 nodo-tmpl *arbol-par'))

íaüZeQa-falt.9nteSz nodo-tm~)ll (agrega-faitantes (rest COS~OSI~) I I

ldefun agrega-faltantesz (nodo1 lcond lino-lazo1 nodol

(SET9 *arbol-par' (APPEND 'arbol-par* (list nodo) ) ) ((completo *arbol-par*l *arbol-par*) : Conecta un enlace de menor costo asociado a l nodo reciCm conectado fC""d

( ( = *caso* 11 (menor-enlace-de (verticel nodo) *costos-ord* (car nodo) I I (I= 'caso' 21 (menor-enlace-de (vertice2 nodol 'costos-ocd' (car nodo)))

1 1 ) )

(setq tempo 999999999) 1set-q cn2 O) Ido

l l c n O It cn 11)) ( (>= cn I- *NumNodoS* 11) I> tempo valor) I

(defun determina-mayor-familia lvalorl

(setq tempo (menor-costo-familia-n *AMPLIAQA' 11 cn 1))) ( ( > tempo valor1 1sotq en2 cn11

( I> tempo valor1 ) I (4. cn2 1 1 1

(defun genera-sol- aem (lista1 i icrea-control) (setq 'sig-rama' 11 (SETQ Lista-'r (copy-list Lista) I ISETQ *AEM' NIL) IAEM-AUX Lista-TI)

: Determina si hay cupo en una rama - Pendiente : Verifica La restriccion por Grado. ; Nodo-AUX : Cuando 5 8 unen dos ramas

(defun ver-otr-iestric (nodo rama incremento nodo-aux)

83

Page 96: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Implementacibn de los algorituos de diseno de redes . ~ ~ ... . . . . ...

(AND (Ver-Rest-Grado nodo nodo-aux) (cupo-en-rama rama incrnmnntol ) I , , ,.. . ,

(Defun Ver-Rest-Grado (nodo nodo-aux) (setq cuantos1 (aref 'control-g' I- nodo 1))) ; Grado de'un Nodo (if (not ( n u l l nodo-aux)) ; Fusion de Dos ramas 7 , , ' .

(setq cuantos2 (aref ,*control;g* , I - nodo-aux 11 1 ) , .... . . . , , ,

(cetq cuantos2 O 1 1 (<= ( c cuantos1 cuantos2) 'Num-Max-Nodos')

I , .

(defun cupo-en-rama (nodo rama incremento nodo-aux) , . . . . t )

[Defun Act-Grado (nodo incremento1 . . l s e t f (aref *control-g* I- nodo 1)) I t laref *control-g* 1- nodo 1)) incrementol) ; Grado de Un Nodo1

I

(defun nodos-en-rama (ramal

1

(NP-COMPLETOS)

t

Page 97: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Implementación de los algoritmos de Matemática Combinatoria

APENDICE C . Algoritmos del problema de matemática combinatoria.

Implementación en LISP de los algori.tmos de resolución de problemas de Matemática Combinatoria de 1.a Planificación.

i 9:42am Oct 21.1.933 i Solucion a problemas NP-Completos i Ing. Raul Pinto ELias

i Matemática Combinatoria de la Planificacion

(load common) (load mouse1 i librerias para manejo del mouse (load array) : librerias para el manejo de Arreglos (load irratnal) (LOAD FUNCO4)

ldefuii READ-OPCION (SETQ tempo (read-byte)) (cona

I . (< tempo 48) O ) ( ( > tempo 5 1 ) 01 it í - tempo 4 8 ) ) ) )

(defun read-rpe (dato activo) (SHOW-MOUSE1 lcond (activo (setq tmp (CHAR-UPCASE (ascii (read-byteiil)

I It (setq tmp Iread)) I

(hide-mouse) í (null tmp) (Setq Tmp dato) i t"ip

)

(DEFüN ventana (xl y1 x2 y21 i Permite definir el area de una ventana lMN<E-WINDOW yi x 1 y2 X2) (MOUSE-BOX ( * (+ xi 11 a i ( * I+ YI 1) 81 ( * 1- xz I ) 8 ) ( + (- Y Z 1 ) a ) ) ,

(DEFUN VIDEO-NORMAL ( 1 i Coloca los colores normales para la ipantalla

1

IBACKGROUND-COLOR O) i Fondo Negro/Lctras Blancas (FOREGROUND-COLOR 151

(DEFUN VENTANA0 0

I (ventana O O B O 26)

i Ventana por Omisión

(DE" Borra-Area 1x1 Y1 XZ Y21 i Borra Una sección rectangular de la pantalla (MAKE-WINDOW Y 1 X1 ( - Y2 Y11 í - X2 X1)) (CLEAR-SCREEN1 (VENTANA01

I

(DEFUN VIDEO-INVERSO O ; Coloca'en Video Inverso la pantalla

)

(DEFUN GotoXY (X Y1 i Coloca el cursor en renglón y, columna X . Modo texto

I

(BACKGROUND-COLOR 1)

[SET-CURSOR Y XI

( D e f u n Centra (mensaje X1 Y X21 i Centra un Mensaje entre las columnas XI X2 ((Atom Mensaje) ; en el reng16n Y,

Page 98: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

~mplementacidn 10s algoritmos de Materoátioa Combinatorla

((setq x I - ( - X2 X11 (LENGTH mensaje))) !I ( ( IODDP X) (SETQ X (+ X 1) I ) 1 ( ( > x O) ((SET-CURSOR Y I + ( / X 2 ) X11)

(PRINC mensaje1))I)l

I DE FUN PAUSA I I ; Envía un mensaje y espera que s e pulse <eso IGotoXY O 22) (PRINC "Presione <ES=> para continuar ..." ) (READ-opcionl

I

(DE" MARCO 1x1 Y1 XZ Y2 mensaje) ; Imprime un marco simple IMOUSE-BOX I * (1% X1 1) O ) I * It Y1 1) 8 ) I* ( - X2 1) 01 I f I - Y2 IGOtoXY X1 Y1) (PRINC IASCII 210)) INTIMES (I I - XZ X1 111

IPRINC (ASCII 1961)

(PRTNC (ASCII 19111 i (DOTIMES I1 I - Y2 (+ Y1 1 1 1 1

IGotoXY X1 (+ Y1 I 1)) (PRINC (ASCII 17911 (GotoXY XZ It Y1 I 111 (PRINC (ASCII 179))

(PRTNC (ASCII 19111 i (DOTIMES I1 I - Y2 (+ Y1 1 1 1 1

IGotoXY X1 (+ Y1 I 1)) (PRINC (ASCII 17911 (GotoXY XZ It Y1 I 111 (PRINC (ASCII 179))

(GotoXY X1 Y2) (PRINC (ASCII 192)) (DOTIMES (I I - XZ (t X1 1 I I )

(PRINC (ASCII 196)) 1 (PRINC (ASCII 217)) I (not (NULL mensaje))

I lVTDEO-1NvERSOl (Centra mensaje X1 Y1 X21 IVIDEO-NOWI,) 1 ) I

ILI 8 ) )

(DE" TOTAL-MEMBER (CAMPO LISTA1 i ESTA RMCION ENCUENTRA COMPONENTES DE LISTAS EN ClJALQUTER NIVEL ICOND ((NULL LISTA) NIL) !

I (EQUAL CAMPO (first: LISTA) I LISTA) I (AND ILISTP (first LT.STA1) (TOTAL-MEMBER CAMPO ICNI LISTA) 1 ) LISTA) I T (TOTAL-MEMBER CAMPO (CDR LISTA))) I

I

IDEFUN lee-Num-Objetos I 1 i Define Numero de Objetos IBORN-AREA 20 10 60 16) IGotoXY 24 131 IPRINC "Numero de Objetos )

(VIDEO-NORMAL1

(MARCO 20 10 60 16) (VIDEO-INVERSO)

ISetQ +NumObjetos+ (read-rpe 'NumObjetos*l) I

I

IDENN lee-Capacidad-Cajas 1) i Capacidad de la Linea (BORN-AREA 20 10 60 161 (MARCO 20 10 60 161 IVIDEO-INVERSO1 IGotoXY 24 13) IPRINC "Capacidad de Las Cajas ") (SetQ *Capcaja* (read-rpe 'CapCaja*)I (VIDEO-NORMAL1

)

(defun peso (lista) ; devuelve el peso de UD Objeto

) (first lista)

IDEEVN Genera-Tabla INumObj LimSupPeso LimInfPeso) lsetq 'pesas* nil) (Do llcnl 1 It cnl 1)) 1

( I > cnl NumObjl) (SetQ +pesos' (Append *Pesos* (list

86

Page 99: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Implementación de l o s a lgor i t inos de Matemática Combinatoria

(DEFUPI MENU ( 1 (MIU<E-WINI>OW O O 2 6 R O ) (CLEAR-SCREEN) fMARCO O O 1 9 731 (VIDEO- INVERSO)^ ' (centra *CENII)ET* n 1 80) ( c e n t r a *MAF,STHSA* O 2 B O ) ( c e n t r a +PROGRN+A* O 3 D O ) ( c en t r a 'OPCION' o 4 80) (VIDEO-NORMAL1 (MARCO 27 6 53 1 7 *' M F. N U " ) (GotoXY 2 9 8 ) (PRINC "1.- D e f i n i r P a r ñ m e t r o s " ) (Go toXY 2 9 9) (PIIINC "2.- Ver P a r a m e t r o s " I (GotoXY 2 9 1 0 1 IPRINC "3.- G e n e r a r 'l'ab1.a " I (GotoXY 2 9 11) IPRTNC "4.- G e n e r a r soli,cion "1 (GOtoXY 29 1.2) (PII INC "5.- Cargar 1)ato i O m i s . " l I G O t o X Y 79 1.31 (PRTNC " 6 .- O t r o Metodos " I (GotoXY 2 9 1.41 (PII INC " ' 1 . - V e r 'Tabla '*I

(centra O p c i o n : '' O 1 6 D O ) (GotoXY 19 15) (PRINC " 8 . - S a 1 . i c *I 1

)

(DEFUN NP-COMPLETOS 1) i PROGMMA PRSNCSPAI. (SEMILLA1

(SETQ OPCION ( R E A D - o p c i o n ) ) (COND ( (EQ OPCTON I ) ( d s f i n 8 - p a r a m s t r o s ) I i ( (EQ o ~ c l o l d 21 (ver-parametrosl i ( (Ea OPCION 3) (Gcncra-Tabla + i d u i n O b j e t o s * '1,imSiipPtso' * L i m I n f Peso' ) 1 ( ( E a OPCTON 4 )

I ( C a l cu1a-opt 'PESOS'I ) ( ( E Q OPCION 5) (VALOR-DEFAULT)) ( (EQ OPCTON GI ( o t r o s - m e t o d o s 'PESOS' * p e s o s - o r d ' l l

( (EQ opcion 1 ) (imp-costos) i l i i ' ~ opcioii O ) n i l 1

(SETQ OPCION O))

( (EQ OPCION 8 ) ) I (CLEAR-SCREEN)

i (TERPRl I I F I N ) )

(defun define-parametros (1 i p a r a m e t r o s (BORRA-AREA 35 9 60 2 0 ) (MARCO 35 9 G O 20 PARAMETROS "1 (GotoXY 3 7 11) (pr inc "1.- Numero de Objetos ''1 I N l l i n ~ r o de N O i l ~ n d5 (OotoXY 3'1 13) (pr!nc "2.- Rango de Pesos -0 i R8n(Jo de Paso5 (GotoXY 3 7 15) ( p r i n c "3.- C a p a c i d a d de C a j a s " ) i C a p a c i d a d de Linea

(sets o p c i o n (read-op<:.ioril ) (cond

( c e n t r a "Opcio" :,' 3 7 19 GO)

( (EO OPClON 1) ( l e e - N u - O b j e t o s ) 1 i D e f i n e Num. Nodos de l a Red ( (EQ OPCTON 21 ( l e e - R a n g o - P e s o s ) 1 i D e f i n e 1.i.m. S u p e r i o r Pf::o ( (ISQ OPCJON 3 ) ( l e e - C J p a c i d a d - C a j a s )

(ca lcula-opt ) I i C a p a c i d a d de l a s lineas 1

)

(defun v e r - p a r a m e t r o s 1 ) i p r e s e n t a los p a c a m e t r o s actuales en l a panlalla (BORW-AREA 2 0 9 G O 201 (MARCO 20 9 G O 2 0 I' PARAMETROS " ) ,

87

Page 100: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Implementaaión 10s algoritmos de M a t d t i c a Combinatoria

( G o t o x y 2 2 11) ( p r i n c '* N u m e r o de objetos : " ) ( p r i n c *Numobjetos*) ( G o t o x y 2 2 121 l p r i i i c " Rango de Pesos : " ) ( p r i n c *Ll.ininfl'eso+)

(GotoXY 2 2 13) lpr jnc *' C a p a c i d a d de C a j a : *'I IpI ' jnC ' C a p C a j a " ) ( G o t o x Y 22 1.4) Ipcjnc '* Suma de P e s o s : **I (pi:inC 'SII~I-PRIOS'I (GOtoXY 2 % 15) (cent ra "<ESC> ... 2 0 1 9 ó01 (read-opcionl

(PRINC (ASCII 1 9 6 1 1 (p i i r i c * l . imSi i~Peso* l

I p r i y '' N u m e r o O p t h o C a j a s : " 1 i p r i n c ' 1 1 0 ~ ~ 1

I

IDEFUN I N J C I A L I Z A ( 1 (SETQ 'CONTROL-P" (MAKE-ARRAY (1 i 5 t + N u m O b j e t o s * l : TNITIAL-ELEMENT O ) ) (SETQ *CONTROL-L~ (MAKE-ARRAY ( l i s t *Ni lmObje to s* l : INITIN,- ELEMENT n i l . ) I

(SETQ 'CENIDET' "CENTRO NACIONAL DE INVESTIGACION Y DESARROLLO 'PECNOLOGJCO") (SETQ 'MAESTRIA* "MAES7'RIA EN ClENCIAS COMPUTACIONALES"! (SETQ 'PROGR?MA' "SOLUClON A PROBLEMAS NP-COMPLETOS") (SETQ 'OPCIONI "MATEMATICA COMBINATORIA DE LA PLANIFICACION"1 ISETQ 'NumObje to s ' 201 ; por omision, 2 0 objetos (SETQ *LimSupPeso' 1 0 0 1 ; L i . m i t e superior de P e s o 1 0 0 (SETQ ' L i m I n f P e s o ' 2 0 ) ; L i m i t e Infer ior de P e s o 2 0 : (SETQ + C a p c a j a * ( * *I,imSupPeso' * N u m O b j c t o s * l ) i C a p a c i d a d de l a c a j a (SETQ ' N W * N I L ) ; N u m e r o optimo d e C a j a s

(SEPQ *PESOS-ORD' NIL1 ; I . i . s tn de Pesos o r d e n a d a '1 ( s e t q 'SüM"PES0S' 01 ; S u m a t o r i ñ de l T r a f i c o Generado poi todos 1.0s nodo:; ( s e t q *FF-MSG* " P r i m e r Espacio : " ) lsetq *BF-MSG* " M a y o r E s p a c i o : ") i s e t q 'FIWD-MSG' "Pri.mer E s p a c i . 0 Pesos Uecrocientes : " I (SETO *BEWD-MSG' I' M a y o r E s p a c i o Pesos D e c r e c i e n t e s : " ) (SETQ 'WF-MSG' " Menor E s p a c i o : " I ( S e t Q *WEWD-MSG* 'I Menor E s p a c i o Pesos Decrecientes : " 1

. .

(SETQ 'PESOS' N1L) ; I . j s t a de Pesos ¡I

(SETQ *PRECJSION' 4 1 1

(DEFUN RANDOM-NUMBER INUM) ; G e n e r a Ni i ioeros P s e u d o - a l eatorios ISETQ *SEED* (REM ¡+ 2 1 1 . 3 2 3 3 ( * *'SEED" 2 7 1 f l 2 1 1 ) 9 9 9 9 9 9 1 ) I (REM 'SEED' NUMI )

( d n f u n s e m j l i a ( 1 : i r i i c i n l i z a l a g e n e r a c i ó n de ~(irneros A l e a t o r i o s

I (SETO * ' S F X I S (ADD1 (MOT) (T IME) 1001 ) I I

idefun o r d e n a I 1 ISETQ '*PESOS-ORD* (COPY-LIST 'PESOS') I ISETQ *pesos-ORD' (SORT *peso~-ORD+ ' C > l l

I

( d e f u n c a l c u l a - O p t ( l i s t a ) ; l s e t q 'SUM-PESOS" ( suma- PESOS 'PESOS") I (SETQ TEMPO ( r o u n d ( / *SW-PESOS* ' C a p C a j a * ) l l (coiid

I ISETQ 'NW' TEMPO)

I I < TEMPO i/ 'SIN-PFSOS' *CAPCAJA*) I ISEtq tempo I + , tempo 1 I ) I

; lgotoxy 1 0 201 IPRINC " U Optimo de C a j a s : " ) ( p r i n t *NO€*) lREAD-OPCT.ON) I

l d e f u i i imp-costos ( 1 ; imprimo IR.? 1i.sI:as de ii)otiim-nnEn 20 9 60 1 9 1 ( m i i c o 2 0 9 G O 1 9 '7 VER myos " 1 ( V I U C O - I NVEIISOI IGotOXY 2 2 1.1) IPRINC "1.- PESOS IORJGSNAL)") IGOLOXY 2 2 1 2 ) (PRINC "2.- PESOS ( O R D E N A W ) " ) IGotoXY 22 13) (PRINC " 3 . - CAJAS ASIGNADAS ''1 ( c e n t r a "Option : '* 20 113 601 ISetQ OPC ( r e a d - o p c i o n l )

(corid lVlOEO-NORMI\L)

I ( E a OPC 11 (Imp-PESOS 'PESOS')) i l E Q OPC 21 l imp-pesos * p e s o s - o r d + l )

COS1

Page 101: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Irnplementación de l o s algoritmos de Matemática Combinatoria

i d o f u n imp-pesos i J i n L r 7 1 i invoca 1.a imlirnsión de 1 3 1 i . s t o de pesos ( c l e a r - s c r e e n 1 (Go toXY 3 31 ipri.nc "p<uso 0 b j a t 0 ' ~ ) ( i m p - t r a l i s t a 1) ( p r i n c I' " I ( r e a d - o p c i o n l

I

i d e f u r i imp-tra ( 1 i s f . a c o n t a d o r ) i I m p r i m e l a S. is ta do P ~ R O R i("Ul1 l i n t a 1 t ) (Go toXY 5 i , t 1 c o n t a d o r 1 1 (p.riric ( c a r l i . ~ t a I i ( i m p - t r a (cdr l . . i s t a l i+ 1 contador))

I

( n p - c o m p l e t o s )

i E 'üNC02 . l sp i 1 2 : 1 7 p m sep n 9 , i m ; Ing., Raúl P i n t o E l l a s .

Solución a Problemas N P- C o m p l e t o s

(DEFUN VALOR-DEFAü1.T ( 1 i V a l o r e s para u n problem$ po i i m i . s i ó n (Se tq "PESOS" ' f

(13 11 (52 21 ( 6 7 31 113 4 1 (36 SI (4n 61 (36 71 (15 a i (66 9) ( 2 1 101 ( 3 7 111 ( 5 7 121 (62 131 ( 5 8 1 4 1 1 1

(SETQ * N u m O b j e t o s * 1 4 1 ' ; por o m i s i o n , 14 Objetos ( S e t Q *L imSi ipPeco* 100) ; L i m i t e S u p w i o r del Peso ( S e t Q ' L i m I n f P e s o ' 201 ; L i m i t e iiiCeri.or del P ~ S O (SETQ ' C a p c a j a ' ( s u m a- p e s o s ' t r a f i c o ' l l ; C a p a c i d a d l a s (SETQ *NOC' NIL1 i Nume¡-O O p t i r n o de C a j a s (setq *CONTROL* N I L ) ( S E i Q 'PESOS-ORD' NIL1 ; L i s t a de P e s o s o r d e n a d a (ordena1 ( S E T Q 'CONTRO1.-P* (MAPiKF.-ARRAY ( l i s t * N i ~ m O h j e t o ~ ' l :INITSAl,-Ei,EMEWi (SETQ *CONTROL-L* (MAKE-ARWY ( l is t * N u m O h j e t o s * l :INI'TSAL-EI.EMFNT

I Idefun suma-Desos i l . i s t a 1

c a j a s

01 I , , i . . l I l

I (DEFUN Calculn-Sol l C o s t 0 . e ) I ldcfun l i m p i a - v a l o r e 8 ( 1

i s e t q *'sig-caja* 01 (SETQ 'CONTRO1.-P* (MAKE-ARRAY ( l is t *NumOl> jo tos* l : J.NITS.AL-ELEMENT 01 I (SETQ *CONTROL-L* (MAKE-ARRAY ( l is t * N i m O h j e t o s i ) : JNITIAL-ELEMENT n i . l) I

(Set0 * l i s ta-soJ* ni.11

I iDEFüN OTROS-METODOS ( l i s t a l i s t a - o r d l ; C a l c u l a por otros m e t o d o c

( l i m p i a - v a l o r e s 1 (borra-area 27 G 54 181 (GotoXY 4 3 61 (Pr j t ic " # C a j a s " ) (GotoXY 53 61 ( P r i i i c "ü-l+"I (GotoXY 63 61 ( P r i r i c " # - l - " l

8 9

Page 102: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Inplementac16n los algoritmos de Matemátiaa Combinatoria

(calcuia-opt *PESOS'l ( t e r p r i ) ( S e t q *SOl,-FF* IFF l i s t a ) 1 (GOtoXY 5 O ) lprj.nc 'FF-MSG'I (GotoXY 4 3 O ) ( p r i n c (cuenta- ca jas 'SOL-FF'I I (GotoxY 53 0 ) ( p i i n c ( po r- e r ro r (cuenta-cajas *SOL-FF'I *NOC*ll IGOtoXY 63 01 lorinc I- (cuenta-cajas *SOI.-FF*) 'noc'il

i

i

i

, .

1

(read-opcioiil ( l impia- va lores1 ISetq 'SOL-BF' IBF listail (GotoXY 5 9 ) (pcinc 'SF-MSG') (Gotoxy 43 9) ( p c i n c (cuenta-cajas *SOi.-BF'i I (GotoXY 53 9 ) ( p r i m lporc-error (cuenta-cajas *SOL-BF*i "NOC'I I (GOtoXY 63 9 ) lprinc I - (cuenta-cajas 'SOL-BF') *noc*li Iread-opcion)

ilimpi a-val.ores1 ( S c t q 'SOL-FEPU" IFF lista-ordl1 IGotoXY 5 101 l p r i n c *FEWD-MSG+! IGotoXY 4 3 l o ) ( p r i m (cuenta-calas *SOL-FFPD*l) (GotoXY 53 10) ( p r i n c lporc-error ic i re 'nta-cajas 'kSOL-FFPO*l 'NO€*) I (GotoXY 63 10) lpri .nc I - (cuenta- caja.? 'SOL-FFPD*I 'not''] I

( road-opcionl ( l impia- va lores ) ISetq +SOI,-HEPD* IBF lista-ordl1 IGotoXY 5 1.11 ( p i i n c 'BFWD-MSG") IGotoXY 43 111 lprinc (cuenta-cajas +SOl,-RFPD*l 1 IGotoXY 53 11) [ p r i n t (porc-error (cuenta- cajas *SOL-BFPO'I *NOC*l 1 (Gotoxu 63 11) l p r i n c I - ( c u e n t a- c a j a s *SOL-BFPD*l *not*)) (read-opcionl

llinipia-valores) ISETQ *SOI,-WF* I W f listal 1 IGotoXY 5 131 lpri.nc *WF-MSG*)

IGotoXY 53 131 ( p r i n t lporc-error lcuenta-ca,as +SOL-WF"I *Noc*) I IGotoXY 63 131 lprjnc I - (Cuenta-cajas 'SOl.-WF+I *not+)) (read-opcionl

l l . impia-valores) ISEI'Q 'SOL-WfPU' IWF l i s t a - o r d l 1

IGotoXY 43 141 l p r i n c ( c u e n t o - c a j a s *SOI.-WEPD*) 1 IGotoXY 53 141 ( p r i n t lporc-error ( c u e n t a- c a j a s "SOL-WFPD") ~'Noc+)l (GotoXY 63 141 lpriric I - Ic lmlta-CajaR *SOI.-WFPD*l *noc'I 1

(GOtoXY 43 131 l p r i n c (cuenta-cajas :SOl.-WF*I,l 8;

IGOtoXY '5 141 ( p r i n c *WFWD-MSG*)

IGotoXY 30 161 l p r inc " Optimo : "1 (print *NOC') ( rend-opcionl

ldefiin FF ( l i s t a 1 ; First f i t i ( p r i n t (car lista)) (read-byte1

I I I i u l l lista) lcadr 'control-1') 1 lsetq objeto (car lista)) (coloca-en-caja'ff objeto) IFF (rest listall

1

l d e f r i n BF I l . i s t a 1 i Rest Fi.t: ( ( n u l l lista) l cadr 'control-I*11 lsetq obje to (car lista)) (coloca-en-caja-bf objeto n i l ) IFF (rest J i ~ t a l l

L ldefiin WF (lista1 i Wors F i t ?

ll11u1.1 listal lcadr '~ont~ol-l*ll lsetci objeto (car l i s t a 1 1 (coloca-en-caja-wf objeto n i l . ) IWF (rest lista))

1

ldefun coloca-en-caja-ff Iobjeiio) i localiza la pr imera c a j a que tenga un peso que permita agregar el i peso d e l obieto lsetq encontrádo n i l ) I DO

90

Page 103: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Implementación de l o s algoritmos de Matemática Combinatoria

I l c n O (i cn 1 1 1 1 1 (OR I > = Cn *NumOhjetos*l e n c o n t r a d o ) ) lcond

I lcupo-ei>-caja cn (car o b j n t o i I ; cabe en ? (seiq etrcüntrado 1:) 1poii-ob:ieLo-aii-aa-ja <:,I oiljetoi 1 1 1 I

ldefun coloca-en-caja-t>f (objet.0 teinpr,) ; 1ocal . iza l a c a j a que tenga el menor peco y que permita ag.cegar el. ; peso del o b j e t o i s e t q tempo 99gg99999) l s e t q mejor- caja n i l . ) l s e t q ' s ig-caja* 01 ,I,,- \""

11cn 0 I + cn 1 1 ) ) I I > = cn +NumObje tos*) 1 (se tq cupo I - *Capcaja* (peso-aciimillado-caja c n ) I I : Icorid

l (n i ! l . l tempol ; Nueva c a j a

I I A N D I > = cupo ( c a r ob je to11 ; Cabe en 1ñ c a j a ? (pon-objeto- en- caja cn o b j e t o ) ti

I < cupo tcmpol) i sc lq mcjoi:-caja cnj ( s c t q t:*mpo CUPÜI I I I

I (defun co1,oca-en-caja-wf l o b j o t o tempo) ; peor

(pon-obj eto-eii-ca j a mejor-ca j a o b j et01

; localiza l a c a j a . q u e tsiiga el menor peso y que permi ta agregar eI ; peso del o b j e t o 1cetq tempo O ) l s e t q t e rminar n i l . ) ( s e t q mejor- caja nil1

. ca ja CI71 I I

lc&d I I A N D I > = ciipo (car obje to11 ; Cabe ~n l a c a j a ?

I > CUDO t e m D o l 1 ise'tq mejor- caja c n ~ 1se tq telnpo CiiPOI I I I

i l p r i n c *'Mejor Rama : " I iF r i . n t mejor- caja1 (read- byte1 lcond

l l n u l l mejor- caja1 (pori-objeto-eii-caja *sig-ca j a * obj01:o) i s e t q 'sig-caja' I + I s i g - c a j a l 1 1 1 1 ,+

\ -

(pon-ohj eto-en-ca j a mejor-ca j a o h j et01 I I

I

l de fun pon-objeto- en-caja ( c a j a o b j e t o 1

; (GotoXY 5 (t. 3 ca ja11 i ( p r i n c i a r < ? r +CON'I'ROI.-I.* C I I I I I

Idefun peso-ac<imul ado-co j a lca j a l

I

idefun cupo-en-caja ( c a j a peso1 l s e t q tempo (peso-acumulado-caja caja11 lcond ( n u l l tempo) ( s e t q tempo O 1 1 (<= I + tempo peso) *Capcaja*]

lsetf laref *CONTROl.-L* c a j a 1 (append la ref 'COEPI<ROL-I,* c a j a 1 i I i . ~ t : n b j e t o l ) I

1suuwpe:ios l a r e f 'CONTROI,-L* c a j a 1 I

I

91

Page 104: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

1mplementaci6n los algoriixcos de Matemática Combinatoria

(defun cuenta-cajas (lista) ((null lista1 O) (setq algo (first listail ; (atom (car lista)) O1 ( ( n u l l algo) 01

(+ 1 (cuenta-cajas (rest listall) ; (print lista)

I (defun porc-error (dato opti.mo)

( / (* 1- dato optimol 100) optimo)

(DE" PRESENTA-ASIGNACION 11 (CLEAR-SCREEN1 (PRINT *FF-MSG*) (Pmsmta-Una-Caja 'SOL-FF* 1) (READ-OPCIONI (PRINT WF-MSG') (Presenta-Una-Caja *SOL-ñF* 1) (READ-OPCION) (PRINT' 'FEWD-MSG*) (Presenta-una-Caja 'SOL-FFPD' 1) (WAD-OPCION) (PRINT 'BFWD-MSG') (Presenta-Una-Caja 'SOL-UFPD* 1) (READ-OPCION) (PRINT *WF-MSG+) (Presenta-Una-Caja *SOL-WF' 1) (READ-OPCION) (PRINT 'WEWD-MSG*) (Presenta-Una-Caja 'SOL-WFPD* 1 1 (READ-OPCION)

I ldefun presenta-una-caja (1j.sta CAJA1

((null lista) nil1 lsetq algo (first listal) ((null algo1 nil) IPRINC CAJA1 IPRINC '' " I (print (first lista)) (presenta-una-caja (rest lista) I + caja 11)

. .

92

Page 105: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

Lista de Autores 1

LISTA DE ATJTORES

Tur ing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Stephen A. Cook . . . . . . . . . . . . . . . . . . : . 27 John Von Neumann JohnMcCarthy 271. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AionzoChurch 68'' . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . S t i r l i n g ,: . . . . . . 58**$ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

I

'>

j 'ii? . . . . .

, . LI f :,

!

1

.I

.... - 1 .

93

Page 106: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

. . . . . . . . . , f

Indice lnd i ce

INDICE ALFABETICO

A* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29. . 31 . . . . AEM . . . . . . . . . . . . iv. 33. 3 6 . 4 I . , 4 % . 46. 17. 19. 50. 54. 73-81. . 83:: Algoritmos.de diseño de redes . . . . . . . . . . . . . . . . . . . . . . . . . 71:'

AlgoritmodeJTJ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 6 . . Algoritmos . i. ii. 3. 4. 1%. 1.4 , 17. 26. 31. 32! . 36. 37. I]., 56. 64 . 65..71. 85 '

Algoritmos del problema de matemática combinatoria . . . . . . . . . . . . :85 Análisis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

. .

Base de Conocimiento . . . . Branch and Bound . . . . . . Búsqueda de soluciones . . . . CAEM . . . . . . . . . . . . Cálculo Lambda . . . . . . . Car . . . . . . . . . . . . Cdr . . . . . . . . . . . . . CEF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iv. 9. 13 CH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . j.v, 26 Complejidad de Tiempo . . . . . . . . . . . . . . . . . . . . 3. 4. 1.2-15, 20 Completo . . . . . . . . . . . . . . . . 3. 16. 1.9, 25. 56. 65. '76. 77. 82. 83 Computacionalmente Manejables Computadora . . . . . . . . Cond . . . . . . . . . . . . Cons . . . . . . . . . . . . Contenido . . . . . . . . . Crecimiento ExDonencia1 . .

. .

. . . . . . . . . . . . . . . . . . . . . . . . . . 28 . . . . . . . . . . . . . . . . . . . . . . . . . 29 . . . . . . . . . . . . . . . . . . . . . . 28, 29 . . . . . . . . . . . . . . . i.v, 40-42, 44, 54, 81 . . . . . . . . . . . . . . . . . . . ii . iii . 68-70 . . . . . . . . 70. 72. 75. 79. 82. 83. 86; 88-92 . . . . . . . . . . . . . . 69 . 72 . 73. 79 . 86 . 89

. . . . . . . . . . . . . . . . . . / . . . . . . 3 . . . . . . . . . . . . . . . . . . . . 27-29, 39 . . . . . . . . . . 71-74, 76.78, 80-83, 85.89, 91 . . . . . . . . . . . . . . . . . . . . . . 69. 70 . . . . . . . . . . . . . . I., 20. 21. 53. 54. 62 . . . . . . . . . . . . . . . . . . . . . . . . 3 CV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iv. 25. 26. 36

Eficiente . . . . . . . . . . . . . . . . . . . . , . . . . . . . . . . . 3 . 27 . 31 Diseño de Redes . . . . . . . i. ii. iv. 5. 26. 36. 37. 53. 54. 64. 65. 71. 75 ~~ . .... . ~structura . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6, 13; 15. 32

Función' . i. 3. 4 . 8. 9. 12-14. 16.20. 22. 24-28. 30. 31. 33. 36. 39. 54. 59. 62. 64. 68. 69. 70. 72. 86

Funciones . . . . . . . . . . . . . .- . . . . , . . . . 3. 5. 6. 17. 68. 69. '/I GradodeComDleiidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 . . Grafo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8, 31, 38 Heuristicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5. 37. 64 HillClimbing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 IA . . . . . . . . . . . . . . . . . . . . . . ' . . . . . . . . . . . iv. 27-29 Ineficientes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

John McCart'hv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Inteligencia Artificial . . . . . . . 1. ii. iv. 5. 26-20. 32. 39. ' 6 4 . 66. 67

. Kruskal . . . . . . . Limite Superior . . . Lisp . . . . . . . . . Listas . . . . . . . . Lógica . . . . . . . . Matemática Combinatoria MDT . . . . . . . . . Métodos . . i. ii. 3. MNDP . . . . . . . . . MT . . . . . . . . . . muLISP . . . . . . . . Notación . . . . . . . Np-Completos . . 1. i.

O Grande . . . . . . . Omega . . . . . . . . P3D . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29. 31. 32. 36. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii. 3. 5. 6. 18.

. . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .36.37. 4 2 . . . . . 3. 72. 75. 79. 80 . 86. 88. 89 1 . i. ii. 27. 51. 64. 66. 67. 69. 71. 85 . . . . . . . . . 58. 65. 72. 77. 86. 88 . . . . . . . . . . . . . . . . .19. 28 . . i. ;;I.I, 5. 26. 32. 56. 65. 66. 85. 88 . . . . . . . . . . . . . . iv. 9-11. 13 37. 39. I]., 54-57 . 6 0 . 62-65/67 . 87. R9 . . . . . . . i.V, I O . :1,3-1.6, 20. 25. 64 . . . . . . . . . . iV. 10. 12-14. 16. 17

. .

. . . . . . . . . . . . . . . . . i.ii . . . . . . . . . . . ii. 3. 10. 68. 69 25. 26. 32. 56. 64. 71. 74. 75. 84 . 85.

87-89 . . . . . . . . . . . . . . . . . . . . 3 . . . . . . . . . . . . . . . . . . . . 3 . . . . . . . . . . . . . . . . . . . iv, 25

94

Page 107: DIRECCION GENERAL DE INSTITUTOS TECNOLOGICOS · 2014-02-13 · CAEM costo del Arbol de ExpansiOn Minha CEF Contcol de Estado Finito. CH Ciclo de Hamilton. cv Cobertura de Vertices.

. .

Polinómico . . . . . . . . . . 3. 4. 1.4-1.7, 19. 20. 22. 25. 26. 32. 36. 59. 64 PRIM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 Problemas Intratables . . . . . . . . . . . . . . . . . . . . . . . . . 3. 64 Procedimiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29. 3 0 i 32 Procesamiento del Lenguaje Natural . . . . . . . . . . . . . . . . . . . . ::28 Razonamiento espacial . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Reconocimiento de Modelos . . . . . . . . . . . . . . . . . . . . . . . . . 28 Red . . . . . . . . . . 33. 35. 39. 4 4 . 50. 51., 53. 54. 64. 74. 75. 73-82. 87 Redes Neuronales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Robótica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 SAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iv. 19. 20. 25 Setq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71-32 Simbologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii Sistema experto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Soluciones Aproximadas . . . . . . . . . . . . . . . . . . . . . 5. 32. 57. 64 Soluciones Eficientes . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Teoria Básica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii

Tiempo Razonable . . . . . . . . . . . . . . . . . . . . . . . . . . 5. 36. 64

Velocidad de Crecimiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Vértice . . . . . . . . . . . . . . . . . . . . . . 8. 36. 73. 76. 77. 82. 83

Tiempo . . . . . . i. 3-6. 12-23. 25-27. 29. 30. 32. 36. 33. 54-56. 59. 62-64

Unidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

95