75

Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

Embed Size (px)

Citation preview

Page 1: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 1/75

Page 2: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 2/75

 

Inteligencia Artificial (IA)

Resolucion de problemasAlgoritmos de busqueda

J a v i e r B é j a r  

D e p a r t a m e n t d e L l e n g u a t g e s i S i s t e m e s I n f o r m à t i c s  

E n g i n y e r i a e n i n f o r m à t i c a  

erC u a t r i m e s t r e - c u r s o 2 0 0 6 / 2 0 0 7  

BY: $       \ C

Page 3: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 3/75

 

T h i s w o r k i s l i c e n s e d u n d e r t h e C r e a t i v e C o m m o n s  

A t t r i b u t i o n - N o n C o m m e r c i a l - S h a r e A l i k e L i c e n s e .  

BY:

$       \ 

C

T o v i e w a c o p y o f t h i s l i c e n s e , v i s i t  

h t t p : / / c r e a t i v e c o m m o n s . o r g / l i c e n s e s / b y - n c - s a / 2 . 0 /   o r s e n d a l e t t e r t o :  

C r e a t i v e C o m m o n s ,  

5 5 9 N a t h a n A b b o t t W a y , S t a n f o r d ,  

C a l i f o r n i a 9 4 3 0 5 ,  

U S A .  

Page 4: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 4/75

 

Í n d i c e g e n e r a l    

1 . R e s o l u c i ó n d e p r o b l e m a s 1  

1 . 1 . ¾ Q u é e s u n p r o b l e m a ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1  

1 . 2 . E l e s p a c i o d e e s t a d o s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2  

1 . 3 . A l g o r i t m o s d e b ú s q u e d a e n e l e s p a c i o d e e s t a d o s . . . . . . . . . . . . . . . 6  

2 . B ú s q u e d a n o i n f o r m a d a 1 1  

2 . 1 . B ú s q u e d a i n d e p e n d i e n t e d e l p r o b l e m a . . . . . . . . . . . . . . . . . . . . . 1 1  

2 . 2 . B ú s q u e d a e n a n c h u r a p r i o r i t a r i a . . . . . . . . . . . . . . . . . . . . . . . . 1 1  

2 . 3 . B ú s q u e d a e n p r o f u n d i d a p r i o r i t a r i a . . . . . . . . . . . . . . . . . . . . . . 1 2  

2 . 4 . B ú s q u e d a e n p r o f u n d i d a d i t e r a t i v a . . . . . . . . . . . . . . . . . . . . . . 1 5  

3 . B ú s q u e d a h e u r í s t i c a 1 7  

3 . 1 . E l c o n o c i m i e n t o i m p o r t a . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 7  

3 . 2 . E l ó p t i m o e s t á e n e l c a m i n o . . . . . . . . . . . . . . . . . . . . . . . . . . 1 7  

3 . 3 . T ú p r i m e r o y t ú d e s p u é s . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 8  

3 . 4 . E l a l g o r i t m o A  

∗. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 9  

3 . 5 . P e r o , ¾ e n c o n t r a r é e l ó p t i m o ? . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2  

3 . 5 . 1 . A d m i s i b i l i d a d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2  

3 . 5 . 2 . C o n s i s t e n c i a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 4  

3 . 5 . 3 . H e u r í s t i c o m á s i n f o r m a d o . . . . . . . . . . . . . . . . . . . . . . . 2 5  

3 . 6 . M i m e m o r i a s e a c a b a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 5  

3 . 6 . 1 . E l a l g o r i t m o I D A  

∗. . . . . . . . . . . . . . . . . . . . . . . . . . . 2 5  

3 . 6 . 2 . O t r a s a l t e r n a t i v a s . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 6  

4 . B ú s q u e d a l o c a l 3 1  

4 . 1 . E l t a m a ñ o i m p o r t a , a v e c e s . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1  

Page 5: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 5/75

 

4  Í N D I C E G E N E R A L  

4 . 2 . T u s í , v o s o t r o s n o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2  

4 . 3 . D e m a s i a d o c a l o r , d e m a s i a d o f r í o . . . . . . . . . . . . . . . . . . . . . . . . 3 5  

4 . 4 . C a d a o v e j a c o n s u p a r e j a . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 7  

4 . 4 . 1 . C o d i c a c i ó n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 8  

4 . 4 . 2 . O p e r a d o r e s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 9  

4 . 4 . 3 . C o m b i n a c i ó n d e i n d i v i d u o s . . . . . . . . . . . . . . . . . . . . . . . 4 0  

4 . 4 . 4 . E l a l g o r i t m o g e n é t i c o c a n ó n i c o . . . . . . . . . . . . . . . . . . . . . 4 1  

4 . 4 . 5 . C u a n d o u s a r l o s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2  

5 . B ú s q u e d a c o n a d v e r s a r i o 4 3  

5 . 1 . T ú c o n t r a m i o y o c o n t r a t i . . . . . . . . . . . . . . . . . . . . . . . . . . 4 3  

5 . 2 . U n a a p r o x i m a c i ó n t r i v i a l . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4  

5 . 3 . S e a m o s u n p o c o m á s i n t e l i g e n t e s . . . . . . . . . . . . . . . . . . . . . . . 4 6  

5 . 4 . S e a m o s a ú n m á s i n t e l i g e n t e s . . . . . . . . . . . . . . . . . . . . . . . . . . 4 8  

6 . S a t i s f a c c i ó n d e r e s t r i c c i o n e s 5 1  

6 . 1 . D e v a r i a b l e s y v a l o r e s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1  

6 . 2 . B u s c a n d o d e m a n e r a d i f e r e n t e . . . . . . . . . . . . . . . . . . . . . . . . . 5 2  

6 . 2 . 1 . B ú s q u e d a c o n b a c k t r a c k i n g . . . . . . . . . . . . . . . . . . . . . . 5 3  

6 . 2 . 2 . P r o p a g a c i ó n d e r e s t r i c c i o n e s . . . . . . . . . . . . . . . . . . . . . . 5 4  

6 . 2 . 3 . C o m b i n a n d o b ú s q u e d a y p r o p a g a c i ó n . . . . . . . . . . . . . . . . . 5 7  

6 . 3 . O t r a v u e l t a d e t u e r c a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 8  

7 . P r o b l e m a s r e s u e l t o s 6 1  

7 . 1 . B ú s q u e d a h e u r í s t i c a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1  

7 . 2 . B ú s q u e d a l o c a l . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 3  

7 . 3 . J u e g o s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6  

7 . 4 . S a t i s f a c c i ó n d e r e s t r i c c i o n e s . . . . . . . . . . . . . . . . . . . . . . . . . . 6 8  

Page 6: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 6/75

 

C a p í t u l o 1    

R e s o l u c i ó n d e p r o b l e m a s    

1 . 1 . ¾ Q u é e s u n p r o b l e m a ?      

U n a d e l a s p r i n c i p a l e s c a p a c i d a d e s d e l a i n t e l i g e n c i a h u m a n a e s s u c a p a c i d a d p a r a  

r e s o l v e r p r o b l e m a s . L a h a b i l i d a d p a r a a n a l i z a r l o s e l e m e n t o s e s e n c i a l e s d e c a d a p r o b l e m a ,  

a b s t r a y é n d o l o s , e l i d e n t i c a r l a s a c c i o n e s q u e s o n n e c e s a r i a s p a r a r e s o l v e r l o s y e l d e t e r m i n a r  

c u a l e s l a e s t r a t e g i a m á s a c e r t a d a p a r a a t a c a r l o s , s o n r a s g o s f u n d a m e n t a l e s q u e d e b e t e n e r  

c u a l q u i e r e n t i d a d i n t e l i g e n t e . E s p o r e s o p o r l o q u e l a r e s o l u c i ó n d e p r o b l e m a s e s u n o d e  

l o s t e m a s b á s i c o s e n i n t e l i g e n c i a a r t i c i a l .  

P o d e m o s d e n i r l a r e s o l u c i ó n d e p r o b l e m a s c o m o e l p r o c e s o q u e p a r t i e n d o d e u n o s  

d a t o s i n i c i a l e s y u t i l i z a n d o u n c o n j u n t o d e p r o c e d i m i e n t o s e s c o g i d o s a p r i o r i , e s c a p a z d e  

d e t e r m i n a r e l c o n j u n t o d e p a s o s o e l e m e n t o s q u e n o s l l e v a n a l o q u e d e n o m i n a r e m o s u n a  

s o l u c i ó n . E s t a s o l u c i ó n p u e d e s e r , p o r e j e m p l o , e l c o n j u n t o d e a c c i o n e s q u e n o s l l e v a n a  

c u m p l i r c i e r t a p r o p i e d a d o c o m o d e b e n c o m b i n a r s e l o s e l e m e n t o s q u e f o r m a n l o s d a t o s  

i n i c i a l e s p a r a c u m p l i r c i e r t a s r e s t r i c c i o n e s .  

E v i d e n t e m e n t e , e x i s t e n m u c h o s t i p o s d i f e r e n t e s d e p r o b l e m a s , p e r o t o d o s e l l o s t i e n e n  

e l e m e n t o s c o m u n e s q u e n o s p e r m i t e n c l a s i c a r l o s y e s t r u c t u r a r l o s . P o r l o t a n t o , n o e s d e s c a -  

b e l l a d a l a i d e a d e p o d e r r e s o l v e r l o s d e m a n e r a a u t o m á t i c a , s i s o m o s c a p a c e s d e e x p r e s a r l o s  

d e l a m a n e r a a d e c u a d a .  

P a r a q u e p o d a m o s r e s o l v e r p r o b l e m a s d e u n a m a n e r a a u t o m a t i z a d a e s n e c e s a r i o , e n  

p r i m e r l u g a r , q u e p o d a m o s e x p r e s a r l a s c a r a c t e r í s t i c a s d e l o s p r o b l e m a s d e u n a m a n e r a  

f o r m a l y e s t r u c t u r a d a . E s o n o s o b l i g a r á a e n c o n t r a r u n l e n g u a j e c o m ú n q u e n o s p e r m i t a  

d e n i r p r o b l e m a s .  

E n s e g u n d o l u g a r , h e m o s d e d e n i r a l g o r i t m o s q u e r e p r e s e n t e n e s t r a t e g i a s q u e n o s  

p e r m i t a n h a l l a r l a s o l u c i ó n d e e s o s p r o b l e m a s , q u e t r a b a j e n a p a r t i r d e e s e l e n g u a j e d e  

r e p r e s e n t a c i ó n y q u e n o s g a r a n t i c e n h a s t a c i e r t a m e d i d a q u e l a s o l u c i ó n q u e b u s c a m o s s e r á  

h a l l a d a .  

S i a b s t r a e m o s l o s e l e m e n t o s q u e d e s c r i b e n u n p r o b l e m a p o d e m o s i d e n t i c a r l o s s i g u i e n -  

Page 7: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 7/75

 

2  C A P Í T U L O 1 . R E S O L U C I Ó N D E P R O B L E M A S  

t e s e l e m e n t o s :  

1 . U n p u n t o d e p a r t i d a , l o s e l e m e n t o s q u e d e n e n l a s c a r a c t e r í s t i c a s d e l p r o b l e m a .  

2 . U n o b j e t i v o a a l c a n z a r , q u é q u e r e m o s o b t e n e r c o n l a r e s o l u c i ó n .  

3 . A c c i o n e s a n u e s t r a d i s p o s i c i ó n p a r a r e s o l v e r e l p r o b l e m a , d e q u é h e r r a m i e n t a s d i s p o -  

n e m o s p a r a m a n i p u l a r l o s e l e m e n t o s d e l p r o b l e m a .  

4 . R e s t r i c c i o n e s s o b r e e l o b j e t i v o , q u é c a r a c t e r í s t i c a s d e b e t e n e r l a s o l u c i ó n  

5 . E l e m e n t o s q u e s o n r e l e v a n t e s e n e l p r o b l e m a d e n i d o s p o r e l d o m i n i o c o n c r e t o , q u é  

c o n o c i m i e n t o t e n e m o s q u e n o s p u e d e a y u d a r a r e s o l v e r e l p r o b l e m a d e u n a m a n e r a  

e c i e n t e .  

E s c o g i e n d o e s t o s e l e m e n t o s c o m o b a s e d e l a r e p r e s e n t a c i ó n d e u n p r o b l e m a p o d e m o s  

l l e g a r a d i f e r e n t e s a p r o x i m a c i o n e s , a l g u n a s g e n e r a l e s , o t r a s m á s e s p e c í c a s . D e e n t r e l o s  

t i p o s d e a p r o x i m a c i o n e s p o d e m o s c i t a r :  

E s p a c i o d e e s t a d o s :   S e t r a t a d e l a a p r o x i m a c i ó n m á s g e n e r a l , u n p r o b l e m a s e d i v i d e e n  

u n c o n j u n t o d e p a s o s d e r e s o l u c i ó n q u e e n l a z a n l o s e l e m e n t o s i n i c i a l e s c o n l o s e l e m e n -  

t o s q u e d e s c r i b e n l a s o l u c i ó n , d o n d e e n c a d a p a s o p o d e m o s v e r c o m o s e t r a n s f o r m a  

e l p r o b l e m a .  

R e d u c c i ó n a s u b p r o b l e m a s :   E n e s t a a p r o x i m a c i ó n s u p o n e m o s q u e p o d e m o s d e s c o m -  

p o n e r e l p r o b l e m a g l o b a l e n p r o b l e m a s m á s p e q u e ñ o s d e m a n e r a r e c u r s i v a h a s t a  

l l e g a r a p r o b l e m a s s i m p l e s . E s n e c e s a r i o q u e e x i s t a l a p o s i b i l i d a d d e r e a l i z a r e s t a  

d e s c o m p o s i c i ó n .  

S a t i s f a c c i ó n d e r e s t r i c c i o n e s :   E s t a a p r o x i m a c i ó n e s e s p e c í c a p a r a p r o b l e m a s q u e s e  

p u e d a n p l a n t e a r c o m o u n c o n j u n t o d e v a r i a b l e s a l a s q u e s e h a n d e a s i g n a r v a l o r e s  

c u m p l i e n d o c i e r t a s r e s t r i c c i o n e s .  

J u e g o s :   T a m b i é n e s u n a a p r o x i m a c i ó n e s p e c í c a , e n l a q u e e l p r o b l e m a s e p l a n t e a c o m o  

l a c o m p e t i c i ó n e n t r e d o s o m a s a g e n t e s  

1 . 2 . E l e s p a c i o d e e s t a d o s    

L a a p r o x i m a c i ó n m á s g e n e r a l y m á s s e n c i l l a e s l a q u e h e m o s d e n o m i n a d o   e s p a c i o d e  

e s t a d o s  . D e b e r e m o s s u p o n e r q u e p o d e m o s d e n i r u n p r o b l e m a a p a r t i r d e l o s e l e m e n t o s  

q u e i n t e r v i e n e n e n é l y s u s r e l a c i o n e s . E n c a d a i n s t a n t e d e l a r e s o l u c i ó n d e u n p r o b l e m a  

e s t o s e l e m e n t o s t e n d r á n u n a s c a r a c t e r í s t i c a s y r e l a c i o n e s e s p e c í c a s .  

D e n o m i n a r e m o s   e s t a d o   a l a r e p r e s e n t a c i ó n d e l o s e l e m e n t o s q u e d e s c r i b e n e l p r o b l e m a  

e n u n m o m e n t o d a d o . D i s t i n g u i r e m o s d o s e s t a d o s e s p e c i a l e s , e l   e s t a d o i n i c i a l   ( p u n t o d e  

Page 8: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 8/75

 

1 . 2 . E L E S P A C I O D E E S T A D O S   3 

p a r t i d a ) y e l  e s t a d o n a l  ( o b j e t i v o d e l p r o b l e m a ) . L a c u e s t i ó n p r i n c i p a l q u e n o s d e b e r e m o s  

p l a n t e a r s e r á q u é d e b e m o s i n c l u i r e n e l e s t a d o . N o e x i s t e n u n a s d i r e c t r i c e s q u e n o s r e s u e l v a n  

e s t a c u e s t i ó n , p e r o p o d e m o s t o m a r c o m o l í n e a g e n e r a l q u e d e b e m o s i n c l u i r l o s u c i e n t e p a r a  

q u e , c u a n d o o b t e n g a m o s l a s o l u c i ó n , é s t a p u e d a t r a s l a d a r s e a l p r o b l e m a r e a l , y a q u e u n a  

s i m p l i c a c i ó n e x c e s i v a n o s l l e v a r á a s o l u c i o n e s i n s e r v i b l e s . E n e l o t r o e x t r e m o , r e p r e s e n t a r  

e l e m e n t o s d e e s t a d o q u e s e a n i r r e l e v a n t e s o s u p e r u o s l o ú n i c o q u e c o n s e g u i r á e s a u m e n t a r  

e l c o s t e c o m p u t a c i o n a l d e l a r e s o l u c i ó n .  

P a r a p o d e r m o v e r n o s e n t r e l o s d i f e r e n t e s e s t a d o s q u e d e n e n e l p r o b l e m a , n e c e s i t a r e m o s  

l o q u e d e n o m i n a r e m o s   o p e r a d o r e s d e t r a n s f o r m a c i ó n   . U n o p e r a d o r e s u n a f u n c i ó n d e  

t r a n s f o r m a c i ó n s o b r e l a r e p r e s e n t a c i ó n d e u n e s t a d o q u e l o c o n v i e r t e e n o t r o e s t a d o . L o s  

o p e r a d o r e s d e n i r á n u n a r e l a c i ó n d e a c c e s i b i l i d a d e n t r e e s t a d o s .  

L o s e l e m e n t o s q u e d e n e n u n o p e r a d o r s o n :  

1 .  C o n d i c i o n e s d e a p l i c a b i l i d a d   , e s d e c i r , l a s c o n d i c i o n e s q u e d e b e c u m p l i r u n e s t a d o  

p a r a q u e p o d a m o s a p l i c á r s e l o .  

2 .  F u n c i ó n d e t r a n s f o r m a c i ó n   , e s d e c i r , l a t r a n s f o r m a c i ó n q u e h a d e a p l i c a r s e a l  

e s t a d o p a r a c o n s e g u i r o t r o .  

I g u a l q u e c o n l a e l e c c i ó n d e l o s e l e m e n t o s q u e f o r m a n p a r t e d e l e s t a d o , t a m p o c o e x i s t e n  

u n a s d i r e c t r i c e s q u e n o s p e r m i t a n d e c i d i r , d e m a n e r a g e n e r a l , q u e o p e r a d o r e s s e r á n n e c e -  

s a r i o s p a r a r e s o l v e r e l p r o b l e m a , c u a n t o s s e r á n n e c e s a r i o s , o q u e n i v e l d e g r a n u l a r i d a d h a n  

d e t e n e r ( c o m o d e d i f e r e n t e e s e l e s t a d o t r a n s f o r m a d o r e s p e c t o a l o r i g i n a l ) . S e p u e d e d a r e l  

m i s m o c o n s e j o q u e c o n l o s e s t a d o s , p o c o s o p e r a d o r e s p u e d e n h a c e r q u e n u e s t r o p r o b l e m a  

s e a i r r e s o l u b l e , o q u e l a s o l u c i ó n n o n o s s i r v a e n e l p r o b l e m a r e a l , d e m a s i a d o s o p e r a d o r e s  

p u e d e n h a c e r q u e e l c o s t e d e l a r e s o l u c i ó n s e a p r o h i b i t i v o .  

L o s e s t a d o s y s u r e l a c i ó n d e a c c e s i b i l i d a d c o n f o r m a n l o q u e s e d e n o m i n a e l   e s p a c i o  

d e e s t a d o s  . É s t e r e p r e s e n t a t o d o s l o s c a m i n o s q u e h a y e n t r e t o d o s l o s e s t a d o s p o s i b l e s d e  

u n p r o b l e m a . P o d r í a a s i m i l a r s e c o n u n m a p a d e c a r r e t e r a s d e u n p r o b l e m a , l a s o l u c i ó n d e  

n u e s t r o p r o b l e m a e s t a d e n t r o d e e s e m a p a , s ó l o n o s f a l t a h a l l a r e l c a m i n o a d e c u a d o .  

E l ú l t i m o e l e m e n t o q u e n o s q u e d a p o r d e n i r e s l a   s o l u c i ó n   . L a d e n i r e m o s d e d o s  

m a n e r a s , c o m o l a s e c u e n c i a d e p a s o s q u e l l e v a n d e l e s t a d o i n i c i a l a l n a l ( s e c u e n c i a d e  

o p e r a d o r e s ) o e l e s t a d o n a l d e l p r o b l e m a . E x i s t e n p r o b l e m a s e n l o s q u e l a s e c u e n c i a d e  

o p e r a d o r e s e s e l o b j e t i v o d e l a s o l u c i ó n , e n é s t o s , p o r l o g e n e r a l , s a b e m o s c o m o e s l a s o l u -  

c i ó n , p e r o n o s a b e m o s c o m o c o n s t r u i r l a , y e x i s t e n t a m b i e n p r o b l e m a s e n l o s q u e q u e r e m o s  

s a b e r s i e s p o s i b l e c o m b i n a r l o s e l e m e n t o s d e l p r o b l e m a c u m p l i e n d o c i e r t a s r e s t r i c c i o n e s ,  

p e r o l a f o r m a d e a v e r i g u a r l o n o e s i m p o r t a n t e .  

A d e m á s , p o d r e m o s c a t a l o g a r d i f e r e n t e s t i p o s p r o b l e m a s e g ú n e l t i p o d e s o l u c i ó n q u e  

b u s q u e m o s , d e p e n d i e n d o d e s i n o s b a s t a c o n u n a c u a l q u i e r a , q u e r e m o s l a m e j o r o b u s c a m o s  

t o d a s l a s s o l u c i o n e s p o s i b l e s . E v i d e n t e m e n t e e l c o s t e c o m p u t a c i o n a l d e c a d a u n o d e e s t o s  

t i p o s e s m u y d i f e r e n t e .  

Page 9: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 9/75

 

4  C A P Í T U L O 1 . R E S O L U C I Ó N D E P R O B L E M A S  

E n e l c a s o d e p l a n t e a r n o s e l   c o s t e d e u n a s o l u c i ó n  , d e b e r e m o s i n t r o d u c i r o t r o s e l e -  

m e n t o s e n l a r e p r e s e n t a c i ó n d e l p r o b l e m a . D e n i r e m o s e l c o s t e d e u n a s o l u c i ó n c o m o e l  

g a s t o e n r e c u r s o s d e l a a p l i c a c i ó n d e l o s o p e r a d o r e s a l o s e s t a d o s , p o r l o q u e c a d a o p e r a d o r  

t e n d r á t a m b i é n a s o c i a d o u n c o s t e .  

V a m o s a v e r d o s e j e m p l o s d e c o m o d e n i r p r o b l e m a s c o m o e s p a c i o d e e s t a d o s :  

E j e m p l o 1 . 1   E l o c h o p u z z l e e s u n p r o b l e m a c l á s i c o q u e c o n s i s t e e n u n t a b l e r o d e 9 p o s i -  

c i o n e s d i s p u e s t o c o m o u n a m a t r i z d e 3  × 3 e n e l q u e h a y 8 p o s i c i o n e s o c u p a d a s p o r c h a s  

n u m e r a d a s d e l 1 a l 8 y u n a p o s i c i ó n v a c í a . L a s c h a s s e p u e d e n m o v e r o c u p a n d o l a p o -  

s i c i ó n v a c í a , s i l a t i e n e n a d y a c e n t e . E l o b j e t i v o e s p a r t i r d e u n a d i s p o s i c i ó n c u a l q u i e r a  

d e l a s c h a s , p a r a o b t e n e r u n a d i s p o s i c i ó n d e é s t a s e n u n o r d e n e s p e c í c o . T e n e m o s u n a  

r e p r e s e n t a c i ó n d e l p r o b l e m a e n l a s i g u i e n t e g u r a :  

7 8

65

321

4

L a d e n i c i ó n d e l o s e l e m e n t o s d e l p r o b l e m a p a r a p l a n t e a r l o e n e l e s p a c i o d e e s t a d o s  

s e r í a l a s i g u i e n t e :  

E s p a c i o d e e s t a d o s : C o n g u r a c i o n e s d e 8 c h a s e n e l t a b l e r o  

E s t a d o i n i c i a l : C u a l q u i e r c o n g u r a c i ó n  

E s t a d o n a l : F i c h a s e n u n o r d e n e s p e c í c o  

O p e r a d o r e s : M o v e r e l h u e c o  

•C o n d i c i o n e s : E l m o v i m i e n t o e s t á d e n t r o d e l t a b l e r o  

• T r a n s f o r m a c i ó n : I n t e r c a m b i o e n t r e e l h u e c o y l a c h a e n l a p o s i c i ó n d e l m o v i -  

m i e n t o  

S o l u c i ó n : Q u e m o v i m i e n t o s h a y q u e h a c e r p a r a l l e g a r a l e s t a d o n a l , p o s i b l e m e n t e  

n o s i n t e r e s a l a s o l u c i ó n c o n e l m e n o r n ú m e r o d e p a s o s  

E n e s t a d e n i c i ó n h e m o s e s c o g i d o c o m o o p e r a d o r m o v e r e l h u e c o , e v i d e n t e m e n t e , e n e l  

p r o b l e m a r e a l l o q u e s e m u e v e n s o n l a s c h a s , p e r o e l e g i r e l m o v i m i e n t o d e u n a c h a c o m o  

Page 10: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 10/75

 

1 . 2 . E L E S P A C I O D E E S T A D O S   5 

o p e r a d o r n o s h a b r í a d a d o 8 p o s i b l e s a p l i c a c i o n e s c o n 4 d i r e c c i o n e s p o s i b l e s p a r a c a d a u n a .  

A l e l e g i r e l m o v e r h u e c o c o m o o p e r a d o r t e n e m o s u n a ú n i c a a p l i c a c i ó n c o n 4 d i r e c c i o n e s  

p o s i b l e s .  

E s t e t i p o d e e l e c c i o n e s p u e d e n h a c e r q u e u n p r o b l e m a s e a c o m p u t a c i o n a l m e n t e m á s o  

m e n o s c o s t o s o d e r e s o l v e r .  

E j e m p l o 1 . 2   E l p r o b l e m a d e l a s N r e i n a s e s t a m b i é n u n p r o b l e m a c l á s i c o , e n e s t e c a s o  

e l p r o b l e m a s e t r a t a d e c o l o c a r N r e i n a s e n u n t a b l e r o d e a j e d r e z d e N  ×

N d e m a n e r a q u e  

n o s e m a t e n e n t r e s i . E n e s t e p r o b l e m a n o n o s i n t e r e s a l a m a n e r a d e h a l l a r l a s o l u c i ó n ,  

s i n o e l e s t a d o n a l . E n l a g u r a t e n e m o s r e p r e s e n t a d a l a s o l u c i ó n p a r a u n p r o b l e m a c o n  

d i m e n s i ó n 4 :  

E s p a c i o d e e s t a d o s : C o n g u r a c i o n e s d e 0 a n r e i n a s e n e l t a b l e r o c o n s ó l o u n a p o r  

  l a y c o l u m n a  

E s t a d o i n i c i a l : C o n g u r a c i ó n s i n r e i n a s e n e l t a b l e r o  

E s t a d o n a l : C o n g u r a c i ó n e n l a q u e n i n g u n a r e i n a s e m a t a e n t r e s i  

O p e r a d o r e s : C o l o c a r u n a r e i n a e n u n a l a y c o l u m n a  

• C o n d i c i o n e s : L a r e i n a n o e s m a t a d a p o r n i n g u n a o t r a y a c o l o c a d a  

• T r a n s f o r m a c i ó n : C o l o c a r u n a r e i n a m á s e n e l t a b l e r o e n u n a l a y c o l u m n a  

d e t e r m i n a d a  

S o l u c i ó n : U n a s o l u c i ó n , p e r o n o n o s i m p o r t a n l o s p a s o s  

T a m b i é n p o d r í a m o s h a b e r h e c h o o t r a s e l e c c i o n e s c o m o p o r e j e m p l o q u e e l e s t a d o i n i c i a l  

t u v i e r a l a s N r e i n a s c o l o c a d a s , o q u e e l o p e r a d o r p e r m i t i e r a m o v e r l a s r e i n a s a u n a c e l d a  

a d y a c e n t e . T o d a s e s t a s a l t e r n a t i v a s s u p o n d r í a n u n c o s t e d e s o l u c i ó n m á s e l e v a d o .  

Page 11: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 11/75

 

6  C A P Í T U L O 1 . R E S O L U C I Ó N D E P R O B L E M A S  

U n e l e m e n t o q u e s e r á i m p o r t a n t e a l a h o r a d e a n a l i z a r l o s p r o b l e m a s q u e v a m o s a  

s o l u c i o n a r , y q u e n o s p e r m i t i r á t o m a r d e c i s i o n e s , e s e l   t a m a ñ o d e l e s p a c i o d e b ú s q u e d a  

y s u  c o n e c t i v i d a d   . E s t e t a m a ñ o i n u i r á s o b r e e l t i p o d e s o l u c i ó n q u e p o d e m o s e s p e r a r  

( p o r e j e m p l o , s i e l t a m a ñ o e s d e m a s i a d o g r a n d e , e n c o n t r a r l a s o l u c i ó n ó p t i m a p u e d e s e r  

i r r e a l i z a b l e ) , e l t i p o d e a l g o r i t m o q u e e s m á s a d e c u a d o , ( p o r e j e m p l o , h a b r á a l g o r i t m o s  

m á s a p t o s p a r a s o l u c i o n e s q u e e s t á n m á s l e j o s d e l e s t a d o i n i c i a l ) , y c u a l s e r á e l c o s t e  

c o m p u t a c i o n a l q u e i m p l i c a r á l a r e s o l u c i ó n d e l p r o b l e m a .  

E s e s e n c i a l , a l a h o r a d e p l a n t e a r u n p r o b l e m a , e s t i m a r c u a l e s e l n ú m e r o d e e s t a d o s  

q u e c o n t i e n e . P o r e j e m p l o , e n e l c a s o d e l o c h o p u z z l e t e n e m o s t a n t a s c o m b i n a c i o n e s c o m o  

p o s i b l e s o r d e n e s p o d e m o s h a c e r d e l a s 9 p i e z a s m a s e l h u e c o , e s t o s i g n i c a 9 ! e s t a d o s  

p o s i b l e s ( 3 6 2 8 8 0 e s t a d o s ) . P r o b a b l e m e n t e n o t e n d r e m o s q u e r e c o r r e r t o d o s l o s e s t a d o s  

p o s i b l e s d e l p r o b l e m a , p e r o n o s p u e d e d a r u n a i d e a d e s i e l p r o b l e m a s e r á m a s o m e n o s  

d i f í c i l d e r e s o l v e r  

O t r o e l e m e n t o a c o n s i d e r a r e s l a c o n e c t i v i d a d e n t r e l o s e s t a d o s , q u e s e p u e d e c a l c u l a r  

a p a r t i r d e l f a c t o r d e r a m i c a c i ó n d e l o s o p e r a d o r e s q u e p o d e m o s u t i l i z a r . N o e s l o m i s m o  

r e c o r r e r u n e s p a c i o d e e s t a d o s e n e l q u e d e u n e s t a d o p o d e m o s m o v e r n o s a u n o s p o c o s  

e s t a d o s s u c e s o r e s , q u e u n e s p a c i o d e e s t a d o s e n l o s q u e c a d a e s t a d o e s t a c o n e c t a d o c o n c a s i  

t o d o s l o s e s t a d o s p o s i b l e s .  

E s t a e s l a r a z ó n p o r l a q u e e l e g i r o p e r a d o r e s c o n u n f a c t o r d e r a m i c a c i ó n n o m u y  

g r a n d e e s i m p o r t a n t e . P e r o d e b e m o s t e n e r e n c u e n t a u n a c o s a , u n f a c t o r d e r a m i c a c i ó n  

p e q u e ñ o p u e d e h a c e r q u e e l c a m i n o h a s t a l a s o l u c i ó n s e a m á s l a r g o . C o m o s i e m p r e , h e m o s  

d e b u s c a r e l c o m p r o m i s o , t e n e r m u c h a c o n e c t i v i d a d e s m a l o , p e r o m u y p o c a t a m b i é n p u e d e  

s e r m a l o .  

E n e l c a s o d e l o c h o p u z z l e , e l f a c t o r d e r a m i c a c i ó n e s 4 e n e l p e o r d e l o s c a s o s , p e r o  

e n m e d i a p o d e m o s c o n s i d e r a r q u e e s t a r á a l r e d e d o r d e 2 .  

1 . 3 . A l g o r i t m o s d e b ú s q u e d a e n e l e s p a c i o d e e s t a d o s    

L a r e s o l u c i ó n d e u n p r o b l e m a p l a n t e a d o c o m o u n e s p a c i o d e e s t a d o s p a s a p o r s u e x p l o -  

r a c i ó n . D e b e m o s p a r t i r d e l e s t a d o i n i c i a l m a r c a d o p o r e l p r o b l e m a , e v a l u a n d o c a d a p a s o  

p o s i b l e y a v a n z a n d o h a s t a e n c o n t r a r u n e s t a d o n a l . E n e l c a s o p e o r d e b e r e m o s e x p l o r a r  

t o d o s l o s p o s i b l e s c a m i n o s d e s d e e l e s t a d o i n i c i a l h a s t a p o d e r l l e g a r a u n e s t a d o q u e c u m p l a  

l a s c o n d i c i o n e s d e l e s t a d o n a l .  

P a r a p o d e r i m p l e m e n t a r u n a l g o r i t m o c a p a z d e e x p l o r a r e l e s p a c i o d e e s t a d o s e n b u s c a  

d e u n a s o l u c i ó n p r i m e r o d e b e m o s d e n i r u n a r e p r e s e n t a c i ó n a d e c u a d a d e é s t e . L a s e s t r u c -  

t u r a s d e d a t o s m á s a d e c u a d a s p a r a r e p r e s e n t a r e l e s p a c i o d e e s t a d o s s o n l o s g r a f o s y l o s  

á r b o l e s . E n e s t a s e s t r u c t u r a s c a d a n o d o d e r e p r e s e n t a r á u n e s t a d o d e l p r o b l e m a y l o s o p e -  

S e s o l í a c o m e n t a r h a c e u n o s a ñ o s q u e p r o b l e m a s q u e t e n g a n m e n o s d e   232

e s t a d o s e r a n l a f r o n t e r a d e  

l o s p r o b l e m a s s e n c i l l o s y q u e s e p u e d e n r e s o l v e r p o r f u e r z a b r u t a s i m p l e m e n t e e n u m e r á n d o l o s t o d o s , c o n  

l a c a p a c i d a d d e c á l c u l o a c t u a l p r o b a b l e m e n t e a h o r a e s e n ú m e r o m í n i m o d e e s t a d o s s e a b a s t a n t e m a y o r .  

Page 12: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 12/75

 

1 . 3 . A L G O R I T M O S D E B Ú S Q U E D A E N E L E S P A C I O D E E S T A D O S   7 

r a d o r e s d e c a m b i o d e e s t a d o e s t a r á n r e p r e s e n t a d o s p o r l o s a r c o s . L a e l e c c i ó n d e u n á r b o l  

o u n g r a f o l a d e t e r m i n a r á l a p o s i b i l i d a d d e q u e a u n e s t a d o s ó l o s e p u e d a l l e g a r a t r a v é s  

d e u n c a m i n o ( á r b o l ) o q u e h a y a d i f e r e n t e s c a m i n o s q u e p u e d a n l l e v a r a l m i s m o e s t a d o  

( g r a f o ) .  

L o s g r a f o s s o b r e l o s q u e t r a b a j a r á n l o s a l g o r i t m o s d e r e s o l u c i ó n d e p r o b l e m a s s o n d i f e -  

r e n t e s d e l o s a l g o r i t m o s h a b i t u a l e s s o b r e g r a f o s . L a c a r a c t e r í s t i c a p r i n c i p a l e s q u e e l g r a f o  

s e c o n s t r u i r á a m e d i d a q u e s e h a g a l a e x p l o r a c i ó n , d a d o q u e e l t a m a ñ o q u e p u e d e t e n e r  

h a c e i m p o s i b l e q u e s e p u e d a a l m a c e n a r e n m e m o r í a ( e l g r a f o p u e d e s e r i n c l u s o i n n i t o ) .  

E s t o h a c e q u e , p o r e j e m p l o , l o s a l g o r i t m o s h a b i t u a l e s d e c a m i n o s m í n i m o s e n g r a f o s n o  

s i r v a n e n e s t e t i p o d e p r o b l e m a s .  

N o s o t r o s n o s v a m o s a c e n t r a r e n l o s a l g o r i t m o s q u e e n c u e n t r a n u n a s o l u c i ó n , p e r o  

e v i d e n t e m e n t e e x t e n d e r l o a t o d a s l a s s o l u c i o n e s e s b a s t a n t e s e n c i l l o . E s t e s e r í a u n e s q u e m a  

a a l t o n i v e l d e u n a l g o r i t m o q u e h a l l a u n a s o l u c i ó n d e u n p r o b l e m a e n e l e s p a c i o d e e s t a d o s :  

f u n c i o n   B u s q u e d a _ e n _ e s p a c i o _ d e _ e s t a d o s   r e t o r n a   s o l u c i o n  

S e l e c c i o n a r e l p r i m e r e s t a d o c o m o e l e s t a d o a c t u a l  

m i e n t r a s   e l e s t a d o a c t u a l   n o e s   e l e s t a d o f i n a l   h a c e r  

G e n e r a r   y  g u a r d a r s u c e s o r e s d e l e s t a d o a c t u a l ( e x p a n s i o n )  

E s c o g e r e l s i g u i e n t e e s t a d o e n t r e l o s p e n d i e n t e s ( s e l e c c i o n )  

f m i e n t r a s  

r e t o r n a   s o l u c i o n  

f f u n c i o n  

E n e s t e a l g o r i t m o t e n e m o s v a r i a s d e c i s i o n e s q u e n o s p e r m i t i r á n o b t e n e r d i f e r e n t e s v a -  

r i a n t e s q u e s e c o m p o r t a r á n d e d i s t i n t a m a n e r a y q u e t e n d r á n p r o p i e d a d e s e s p e c í c a s . L a  

p r i m e r a d e c i s i ó n e s e l   o r d e n d e e x p a n s i ó n  , o l o q u e e s l o m i s m o , e l o r d e n e n e l q u e  

g e n e r a m o s l o s s u c e s o r e s d e u n n o d o . L a s e g u n d a d e c i s i ó n e s e l   o r d e n d e s e l e c c i ó n   , o s e a ,  

e l o r d e n e n e l q u e d e c i d i m o s e x p l o r a r l o s n o d o s q u e a ú n n o h e m o s v i s i t a d o .  

E n t r a n d o u n p o c o m á s e n l o s d e t a l l e s d e f u n c i o n a m i e n t o d e l a l g o r i t m o , p o d r e m o s d i s -  

t i n g u i r d o s t i p o s d e n o d o s , l o s   n o d o s a b i e r t o s  , q u e r e p r e s e n t a r á n a l o s e s t a d o s g e n e r a d o s  

p e r o a ú n n o v i s i t a d o s y l o s   n o d o s c e r r a d o s  , q u e c o r r e s p o n d e r á n a l o s e s t a d o s v i s i t a d o s y  

q u e y a s e h a n e x p a n d i d o .  

N u e s t r o a l g o r i t m o s i e m p r e t e n d r á u n a e s t r u c t u r a q u e a l m a c e n a r á l o s n o d o s a b i e r t o s .  

L a s d i f e r e n t e s p o l í t i c a s d e i n s e r c i ó n d e e s t a e s t r u c t u r a s e r á n l a s q u e t e n g a n u n a i n u e n c i a  

d e t e r m i n a n t e s o b r e e l t i p o d e b ú s q u e d a q u e h a r á e l a l g o r i t m o .  

D a d o q u e e s t a r e m o s e x p l o r a n d o g r a f o s , y q u e p o r l o t a n t o d u r a n t e l a e x p l o r a c i ó n n o s  

e n c o n t r a r e m o s c o n e s t a d o s y a v i s i t a d o s , p u e d e s e r n e c e s a r i o t e n e r u n a e s t r u c t u r a p a r a  

a l m a c e n a r l o s n o d o s c e r r a d o s . M e r e c e r á l a p e n a s i e l n ú m e r o d e n o d o s d i f e r e n t e s e s p e q u e ñ o  

r e s p e c t o a l n ú m e r o d e c a m i n o s , p e r o p u e d e s e r p r o h i b i t i v o p a r a e s p a c i o s d e b ú s q u e d a m u y  

g r a n d e s .  

A c o n t i n u a c i ó n t e n e m o s u n a l g o r i t m o a l g o m á s d e t a l l a d o q u e n o s v a a s e r v i r c o m o  

Page 13: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 13/75

 

8  C A P Í T U L O 1 . R E S O L U C I Ó N D E P R O B L E M A S  

e s q u e m a g e n e r a l p a r a l a m a y o r í a d e l o s a l g o r i t m o s q u e i r e m o s v i e n d o :  

A l g o r i t m o   B u s q u e d a G e n e r a l  

E s t _ a b i e r t o s . i n s e r t a r ( E s t a d o i n i c i a l )  

A c t u a l = E s t _ a b i e r t o s . p r i m e r o ( )  

m i e n t r a s n o   e s _ f i n a l ? ( A c t u a l )   y n o  E s t _ a b i e r t o s . v a c i a ? ( )   h a c e r  

E s t _ a b i e r t o s . b o r r a r _ p r i m e r o ( )  

E s t _ c e r r a d o s . i n s e r t a r ( A c t u a l )  

H i j o s = g e n e r a r _ s u c e s o r e s ( A c t u a l )  

H i j o s = t r a t a r _ r e p e t i d o s ( H i j o s , E s t _ c e r r a d o s , E s t _ a b i e r t o s )  

E s t _ a b i e r t o s . i n s e r t a r ( H i j o s )  

A c t u a l = E s t _ a b i e r t o s . p r i m e r o ( )  

f m i e n t r a s  

f A l g o r i t m o  

V a r i a n d o l a e s t r u c t u r a d e a b i e r t o s v a r i a m o s e l c o m p o r t a m i e n t o d e l a l g o r i t m o ( o r d e n  

d e v i s i t a d e l o s n o d o s ) . L a f u n c i ó n   g e n e r a r _ s u c e s o r e s   s e g u i r á e l o r d e n d e g e n e r a c i ó n  

d e s u c e s o r e s d e n i d o e n e l p r o b l e m a . E l t r a t a m i e n t o d e r e p e t i d o s d e p e n d e r á d e c ó m o s e  

v i s i t e n l o s n o d o s , e n f u n c i ó n d e l a e s t r a t e g i a d e v i s i t a s p u e d e s e r i n n e c e s a r i o .  

P a r a p o d e r c l a s i c a r y a n a l i z a r l o s a l g o r i t m o s q u e v a m o s a t r a t a r , e s c o g e r e m o s u n a s  

p r o p i e d a d e s q u e n o s p e r m i t i r á n c a r a c t e r i z a r l o s . E s t a s p r o p i e d a d e s s e r á n :  

C o m p l e t i t u d :   S i u n a l g o r i t m o e s c o m p l e t o t e n e m o s l a g a r a n t í a d e q u e h a l l a r á l a  

s o l u c i ó n , s i n o l o e s , e s p o s i b l e q u e a l g o r i t m o n o a c a b e o q u e s e a i n c a p a z d e e n c o n -  

t r a r l a .  

C o m p l e j i d a d t e m p o r a l :   N o s i n d i c a r á e l c o s t e t e m p o r a l d e l a b ú s q u e d a e n f u n -  

c i ó n d e l t a m a ñ o d e l p r o b l e m a , g e n e r a l m e n t e a p a r t i r d e l f a c t o r d e r a m i c a c i ó n y l a  

p r o f u n d i d a d a l a q u e s e e n c u e n t r a l a s o l u c i ó n .  

C o m p l e j i d a d e s p a c i a l :   E s p a c i o r e q u e r i d o p a r a a l m a c e n a r l o s n o d o s p e n d i e n t e s d e  

e x p l o r a r . T a m b i é n s e p u e d e t e n e r e n c u e n t a e l e s p a c i o p a r a a l m a c e n a r l o s n o d o s y a  

e x p l o r a d o s s i e s n e c e s a r i o p a r a e l a l g o r i t m o  

O p t i m a l i d a d :   S i e s c a p a z d e e n c o n t r a r l a m e j o r s o l u c i ó n s e g ú n a l g ú n c r i t e r i o d e  

p r e f e r e n c i a o c o s t e .  

A t e n d i e n d o a e s t o s c r i t e r i o s p o d e m o s c l a s i c a r l o s a l g o r i t m o s p r i n c i p a l e s q u e e s t u d i a -  

r e m o s e n :  

A l g o r i t m o s d e b ú s q u e d a n o i n f o r m a d a :  E s t o s a l g o r i t m o s n o t i e n e n e n c u e n t a e l  

c o s t e d e l a s o l u c i ó n d u r a n t e l a b ú s q u e d a . S u f u n c i o n a m i e n t o e s s i s t e m á t i c o , s i g u e n  

u n o r d e n d e v i s i t a s d e n o d o s j o , e s t a b l e c i d o p o r l a e s t r u c t u r a d e l e s p a c i o d e b ú s -  

q u e d a . L o s p r i n c i p a l e s e j e m p l o s d e e s t o s a l g o r i t m o s s o n e l d e a n c h u r a p r i o r i t a r i a , e l  

d e p r o f u n d i d a d p r i o r i t a r i a y e l d e p r o f u n d i d a d i t e r a t i v a .  

Page 14: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 14/75

 

1 . 3 . A L G O R I T M O S D E B Ú S Q U E D A E N E L E S P A C I O D E E S T A D O S   9 

A l g o r i t m o s d e b ú s q u e d a h e u r í s t i c a y b ú s q u e d a l o c a l :  E s t o s a l g o r i t m o s u t i l i z a n  

u n a e s t i m a c i ó n d e l c o s t e o d e l a c a l i d a d d e l a s o l u c i ó n p a r a g u i a r l a b ú s q u e d a , d e  

m a n e r a q u e s e b a s a n e n a l g ú n c r i t e r i o h e u r í s t i c o d e p e n d i e n t e d e l p r o b l e m a . E s t o s  

a l g o r i t m o s n o s o n s i s t e m á t i c o s , d e m a n e r a q u e e l o r d e n d e e x p l o r a c i ó n n o l o d e t e r m i n a  

l a e s t r u c t u r a d e l e s p a c i o d e b ú s q u e d a s i n o e l c r i t e r i o h e u r í s t i c o . A l g u n o s d e e l l o s  

t a m p o c o s o n e x h a u s t i v o s y b a s a n s u m e n o r c o m p l e j i d a d c o m p u t a c i o n a l e n i g n o r a r  

p a r t e d e l e s p a c i o d e b ú s q u e d a .  

E x i s t e n b a s t a n t e s a l g o r i t m o s d e e s t e t i p o c o n f u n c i o n a m i e n t o s m u y d i f e r e n t e s , n o  

s i e m p r e g a r a n t i z a n e l e n c o n t r a r l a s o l u c i ó n ó p t i m a , n i t a n s i q u i e r a e l h a l l a r u n a  

s o l u c i ó n . L o s p r i n c i p a l e s e j e m p l o s d e e s t o s a l g o r i t m o s s o n A  

∗, I D A  

∗, B r a n c h & B o u n d ,  

H i l l - c l i m b i n g .  

Page 15: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 15/75

 

1 0  C A P Í T U L O 1 . R E S O L U C I Ó N D E P R O B L E M A S  

Page 16: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 16/75

 

C a p í t u l o 2    

B ú s q u e d a n o i n f o r m a d a      

2 . 1 . B ú s q u e d a i n d e p e n d i e n t e d e l p r o b l e m a      

L o s a l g o r i t m o s d e b ú s q u e d a n o i n f o r m a d a ( t a m b i é n c o n o c i d o s c o m o a l g o r i t m o s d e b ú s -  

q u e d a c i e g a ) , n o d e p e n d e n d e i n f o r m a c i ó n p r o p i a d e l p r o b l e m a a l a h o r a d e r e s o l v e r l o . E s t o  

q u i e r e d e c i r q u e s o n a l g o r i t m o s g e n e r a l e s y p o r l o t a n t o s e p u e d e n a p l i c a r e n c u a l q u i e r c i r -  

c u n s t a n c i a .  

E s t o s a l g o r i t m o s s e b a s a n e n l a e s t r u c t u r a d e l e s p a c i o d e e s t a d o s y d e t e r m i n a n e s t r a -  

t e g i a s s i s t e m á t i c a s p a r a s u e x p l o r a c i ó n . E s d e c i r , s i g u e n u n a e s t r a t e g i a j a a l a h o r a d e  

v i s i t a r l o s n o d o s q u e r e p r e s e n t a n l o s e s t a d o s d e l p r o b l e m a . S e t r a t a t a m b i é n d e a l g o r i t m o s  

e x h a u s t i v o s , d e m a n e r a q u e p u e d e n a c a b a r r e c o r r i e n d o t o d o s l o s n o d o s d e l p r o b l e m a p a r a  

h a l l a r l a s o l u c i ó n .  

E x i s t e n b á s i c a m e n t e d o s p o l í t i c a s d e r e c o r r i d o d e u n e s p a c i o d e b ú s q u e d a , e n a n c h u r a  

y e n p r o f u n d i d a d . T o d o s l o s a l g o r i t m o s q u e s e e x p l i c a r á n a c o n t i n u a c i ó n s e b a s a n e n u n a  

d e l a s d o s .  

A l s e r a l g o r i t m o s e x h a u s t i v o s y s i s t e m á t i c o s s u c o s t e p u e d e s e r p r o h i b i t i v o p a r a l a  

m a y o r í a d e l o s p r o b l e m a s r e a l e s , p o r l o t a n t o s ó l o s e r á a p l i c a b l e s e n p r o b l e m a s p e q u e ñ o s . S u  

v e n t a j a e s q u e n o n o s h a c e f a l t a o b t e n e r n i n g ú n c o n o c i m i e n t o a d i c i o n a l s o b r e e l p r o b l e m a ,  

p o r l o q u e s i e m p r e s o n a p l i c a b l e s .  

2 . 2 . B ú s q u e d a e n a n c h u r a p r i o r i t a r i a      

L a b ú s q u e d a e n a n c h u r a p r i o r i t a r i a i n t e n t a e x p l o r a r e l e s p a c i o d e b ú s q u e d a h a c i e n d o  

u n r e c o r r i d o p o r n i v e l e s , d e m a n e r a q u e u n n o d o s e v i s i t a s o l a m e n t e c u a n d o t o d o s s u s  

p r e d e c e s o r e s y s u s h e r m a n o s a n t e r i o r e s e n o r d e n d e g e n e r a c i ó n y a s e h a n v i s i t a d o .  

P a r a o b t e n e r e s t e a l g o r i t m o s o l o h e m o s d e i n s t a n c i a r l a e s t r u c t u r a q u e g u a r d a l o s n o d o s  

a b i e r t o s a u n a c o l a . E s t a e s t r u c t u r a n o s c o n s i g u e q u e e l a l g o r i t m o g e n e r a l v i s i t e l o s n o d o s  

1 1 

Page 17: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 17/75

 

1 2  C A P Í T U L O 2 . B Ú S Q U E D A N O I N F O R M A D A  

e n e l o r d e n q u e h e m o s e s t a b l e c i d o .  

S i n o s j a m o s e n l a s p r o p i e d a d e s q u e h e m o s e s c o g i d o p a r a c l a s i c a r l o s a l g o r i t m o s :  

C o m p l e t i t u d : E l a l g o r i t m o s i e m p r e e n c u e n t r a u n a s o l u c i ó n .  

C o m p l e j i d a d t e m p o r a l : E l c o s t e e s e x p o n e n c i a l r e s p e c t o a l f a c t o r d e r a m i c a c i ó n y  

l a p r o f u n d i d a d d e l a s o l u c i ó n   O(r p) . 

C o m p l e j i d a d e s p a c i a l : E l c o s t e e s e x p o n e n c i a l r e s p e c t o a l f a c t o r d e r a m i c a c i ó n y l a  

p r o f u n d i d a d d e l a s o l u c i ó n   O(r p) . 

O p t i m a l i d a d : L a s o l u c i ó n o b t e n i d a e s ó p t i m a r e s p e c t o a l n ú m e r o d e p a s o s d e s d e l a  

r a í z .  

R e s p e c t o a l t r a t a m i e n t o d e n o d o s r e p e t i d o s , s i n o s j a m o s e n l a g u r a q u e a p a r e c e a  

c o n t i n u a c i ó n :  

     ¡      ¡      

     ¡      ¡      

     ¡      ¡      

     ¡      ¡      

     ¡      ¡      

¢¡ ¢¡ ¢

¢¡ ¢¡ ¢

¢¡ ¢¡ ¢

¢¡ ¢¡ ¢

¢¡ ¢¡ ¢

£¡ £¡ £

£¡ £¡ £

£¡ £¡ £

£¡ £¡ £

£¡ £¡ £

¤¡ ¤¡ ¤

¤¡ ¤¡ ¤

¤¡ ¤¡ ¤

¤¡ ¤¡ ¤

¤¡ ¤¡ ¤

¥¡ ¥¡ ¥

¥¡ ¥¡ ¥

¥¡ ¥¡ ¥

¥¡ ¥¡ ¥

¥¡ ¥¡ ¥

¦¡ ¦¡ ¦

¦¡ ¦¡ ¦

¦¡ ¦¡ ¦

¦¡ ¦¡ ¦

¦¡ ¦¡ ¦

§¡ §¡ §

§¡ §¡ §

§¡ §¡ §

¡ ¡ ¨

¡ ¡ ¨

¡ ¡ ¨

©¡ ©¡ ©

©¡ ©¡ ©

©¡ ©¡ ©

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

!¡ !¡ !¡ !

!¡ !¡ !¡ !

!¡ !¡ !¡ !

!¡ !¡ !¡ !

!¡ !¡ !¡ !

!¡ !¡ !¡ !

!¡ !¡ !¡ !

"¡ "¡ "¡ "

"¡ "¡ "¡ "

"¡ "¡ "¡ "

"¡ "¡ "¡ "

"¡ "¡ "¡ "

"¡ "¡ "¡ "

"¡ "¡ "¡ "

E l n o d o d e c o l o r n e g r o s e r í a e l n o d o g e n e r a d o a c t u a l , l o s n o d o s e n c u a d r í c u l a s o n n o d o s  

c e r r a d o s y l o s n o d o s r a y a d o s s o n n o d o s a b i e r t o s . S i e l n o d o g e n e r a d o a c t u a l e s t á r e p e t i d o  

e n n i v e l e s s u p e r i o r e s ( m á s c e r c a d e l a r a í z ) , s u c o s t e s e r á p e o r y a q u e s u c a m i n o d e s d e l a  

r a í z e s m á s l a r g o , s i e s t á a l m i s m o n i v e l , s u c o s t e s e r á e l m i s m o . E s t o q u i e r e d e c i r q u e s u  

c o s t e s e r á p e o r o i g u a l q u e a l g ú n n o d o a n t e r i o r v i s i t a d o o n o , d e m a n e r a q u e l o p o d r e m o s  

d e s c a r t a r , y a q u e o l o h e m o s e x p a n d i d o y a o l o h a r e m o s p r ó x i m a m e n t e .  

E l c o s t e e s p a c i a l d e g u a r d a r l o s n o d o s c e r r a d o s p a r a e l t r a t a m i e n t o d e r e p e t i d o s e s  

O(r p) . 

2 . 3 . B ú s q u e d a e n p r o f u n d i d a p r i o r i t a r i a      

L a b ú s q u e d a e n p r o f u n d i d a d p r i o r i t a r i a i n t e n t a s e g u i r u n c a m i n o h a s t a l a m a y o r p r o -  

f u n d i d a d p o s i b l e , r e t r o c e d i e n d o c u a n d o a c a b a e l c a m i n o y r e t o m a n d o l a ú l t i m a p o s i b i l i d a d  

d e e l e c c i ó n d i s p o n i b l e .  

Page 18: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 18/75

 

2 . 3 . B Ú S Q U E D A E N P R O F U N D I D A P R I O R I T A R I A   1 3 

P a r a o b t e n e r e s t e a l g o r i t m o s o l o h e m o s d e i n s t a n c i a r l a e s t r u c t u r a q u e g u a r d a l o s n o d o s  

a b i e r t o s a u n a p i l a . E s t a e s t r u c t u r a n o s c o n s i g u e q u e e l a l g o r i t m o g e n e r a l v i s i t e l o s n o d o s  

e n e l o r d e n q u e h e m o s e s t a b l e c i d o .  

E l p r i n c i p a l p r o b l e m a d e e s t e a l g o r i t m o e s q u e n o a c a b a s i e x i s t e l a p o s i b i l i d a d d e  

q u e h a y a n c a m i n o s i n n i t o s . U n a v a r i a n t e d e e s t e a l g o r i t m o q u e e v i t a e s t e p r o b l e m a e s  

e l a l g o r i t m o d e   p r o f u n d i d a d l i m i t a d a   , é s t e i m p o n e u n l í m i t e m á x i m o d e p r o f u n d i d a d  

q u e i m p o n e l a l o n g i t u d m á x i m a d e l o s c a m i n o s r e c o r r i d o s . E s t a l i m i t a c i ó n g a r a n t i z a q u e e l  

a l g o r i t m o a c a b a , p e r o n o g a r a n t i z a l a s o l u c i ó n y a q u e e s t a p u e d e e s t a r a m a y o r p r o f u n d i d a d  

q u e e l l í m i t e i m p u e s t o .  

E l a l g o r i t m o d e p r o f u n d i d a d l i m i t a d a e s e l s i g u i e n t e :  

A l g o r i t m o   B u s q u e d a   e n  p r o f u n d i d a d l i m i t a d a ( l i m i t e : e n t e r o )  

E s t _ a b i e r t o s . i n s e r t a r ( E s t a d o i n i c i a l )  

A c t u a l = E s t _ a b i e r t o s . p r i m e r o ( )  

m i e n t r a s n o   e s _ f i n a l ? ( A c t u a l )   y n o  E s t _ a b i e r t o s . v a c i a ? ( )   h a c e r  

E s t _ a b i e r t o s . b o r r a r _ p r i m e r o ( )  

E s t _ c e r r a d o s . i n s e r t a r ( A c t u a l )  

s i  p r o f u n d i d a d ( A c t u a l ) < = l i m i t e   e n t o n c e s  

H i j o s = g e n e r a r _ s u c e s o r e s ( A c t u a l )  

H i j o s = t r a t a r _ r e p e t i d o s ( H i j o s , E s t _ c e r r a d o s , E s t _ a b i e r t o s )  

f s i 

E s t _ a b i e r t o s . i n s e r t a r ( H i j o s )  

A c t u a l = E s t _ a b i e r t o s . p r i m e r o ( )  

f m i e n t r a s  

f A l g o r i t m o  

L a ú n i c a d i f e r e n c i a c o n e l a l g o r i t m o g e n e r a l e s q u e s e d e j a n d e g e n e r a r s u c e s o r e s c u a n d o  

s e a l c a n z a l a p r o f u n d i d a d l í m i t e .  

S i n o s j a m o s e n l a s p r o p i e d a d e s q u e h e m o s e s c o g i d o p a r a c l a s i c a r l o s a l g o r i t m o s :  

C o m p l e t i t u d : E l a l g o r i t m o e n c u e n t r a u n a s o l u c i ó n s i s e i m p o n e u n a p r o f u n d i d a d  

l í m i t e y e x i s t e u n a s o l u c i ó n d e n t r o d e e s e l í m i t e .  

C o m p l e j i d a d t e m p o r a l : E l c o s t e e s e x p o n e n c i a l r e s p e c t o a l f a c t o r d e r a m i c a c i ó n y  

l a p r o f u n d i d a d d e l l í m i t e d e e x p l o r a c i ó n  

O(r p

). 

C o m p l e j i d a d e s p a c i a l : E l c o s t e e s l i n e a l r e s p e c t o a l f a c t o r d e r a m i c a c i ó n y e l l í m i t e d e  

p r o f u n d i d a d   O(rp) . S i h a c e m o s u n a i m p l e m e n t a c i ó n r e c u r s i v a d e l a l g o r i t m o e l c o s t e  

e s  O( p) , y a q u e n o n o s h a c e g e n e r a r t o d o s l o s s u c e s o r e s d e u n n o d o , p u d i é n d o l o s  

t r a t a r u n o a u n o . S i t r a t a m o s l o s n o d o s r e p e t i d o s e l c o s t e e s p a c i a l e s i g u a l q u e e n  

a n c h u r a y a q u e t e n d r e m o s q u e g u a r d a r t o d o s l o s n o d o s c e r r a d o s .  

O p t i m a l i d a d : N o s e g a r a n t i z a q u e l a s o l u c i ó n s e a ó p t i m a .  

Page 19: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 19/75

 

1 4  C A P Í T U L O 2 . B Ú S Q U E D A N O I N F O R M A D A  

R e s p e c t o a l t r a t a m i e n t o d e n o d o s r e p e t i d o s , s i n o s j a m o s e n l a g u r a q u e a p a r e c e a  

c o n t i n u a c i ó n :  

      ¡       ¡       

      ¡       ¡       

      ¡       ¡       

¢¡ ¢¡ ¢

¢¡ ¢¡ ¢

¢¡ ¢¡ ¢

£¡ £¡ £

£¡ £¡ £

£¡ £¡ £

¤¡ ¤¡ ¤

¤¡ ¤¡ ¤

¤¡ ¤¡ ¤

¥¡ ¥¡ ¥

¥¡ ¥¡ ¥

¥¡ ¥¡ ¥

¦¡ ¦¡ ¦

¦¡ ¦¡ ¦

¦¡ ¦¡ ¦

§¡ §¡ §¡ §

§¡ §¡ §¡ §

§¡ §¡ §¡ §

§¡ §¡ §¡ §

§¡ §¡ §¡ §

§¡ §¡ §¡ §

§¡ §¡ §¡ §

§¡ §¡ §¡ §

¡ ¡ ¡ ¨

¡ ¡ ¡ ¨

¡ ¡ ¡ ¨

¡ ¡ ¡ ¨

¡ ¡ ¡ ¨

¡ ¡ ¡ ¨

¡ ¡ ¡ ¨

¡ ¡ ¡ ¨

©¡ ©¡ ©¡ ©

©¡ ©¡ ©¡ ©

©¡ ©¡ ©¡ ©

©¡ ©¡ ©¡ ©

©¡ ©¡ ©¡ ©

©¡ ©¡ ©¡ ©

©¡ ©¡ ©¡ ©

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

¡ ¡ ¡

!¡ !¡ !

!¡ !¡ !

!¡ !¡ !

"¡ "¡ "

"¡ "¡ "

"¡ "¡ "

#¡ #¡ #

#¡ #¡ #

#¡ #¡ #

$¡ $¡ $

$¡ $¡ $

$¡ $¡ $

%¡ %¡ %

%¡ %¡ %

%¡ %¡ %

&¡ &¡ &

&¡ &¡ &

&¡ &¡ &

'¡ '¡ '

'¡ '¡ '

'¡ '¡ '

'¡ '¡ '

'¡ '¡ '

(¡ (¡ (

(¡ (¡ (

(¡ (¡ (

(¡ (¡ (

(¡ (¡ (

)¡ )¡ )¡ )¡ )¡ )¡ )¡ )

)¡ )¡ )¡ )¡ )¡ )¡ )¡ )

)¡ )¡ )¡ )¡ )¡ )¡ )¡ )

)¡ )¡ )¡ )¡ )¡ )¡ )¡ )

)¡ )¡ )¡ )¡ )¡ )¡ )¡ )

)¡ )¡ )¡ )¡ )¡ )¡ )¡ )

)¡ )¡ )¡ )¡ )¡ )¡ )¡ )

)¡ )¡ )¡ )¡ )¡ )¡ )¡ )

)¡ )¡ )¡ )¡ )¡ )¡ )¡ )

0¡ 0¡ 0¡ 0¡ 0¡ 0¡ 0¡ 0

0¡ 0¡ 0¡ 0¡ 0¡ 0¡ 0¡ 0

0¡ 0¡ 0¡ 0¡ 0¡ 0¡ 0¡ 0

0¡ 0¡ 0¡ 0¡ 0¡ 0¡ 0¡ 0

0¡ 0¡ 0¡ 0¡ 0¡ 0¡ 0¡ 0

0¡ 0¡ 0¡ 0¡ 0¡ 0¡ 0¡ 0

0¡ 0¡ 0¡ 0¡ 0¡ 0¡ 0¡ 0

0¡ 0¡ 0¡ 0¡ 0¡ 0¡ 0¡ 0

0¡ 0¡ 0¡ 0¡ 0¡ 0¡ 0¡ 0

1¡ 1¡ 1¡ 1¡ 1¡ 1¡ 1¡ 1

1¡ 1¡ 1¡ 1¡ 1¡ 1¡ 1¡ 1

1¡ 1¡ 1¡ 1¡ 1¡ 1¡ 1¡ 1

1¡ 1¡ 1¡ 1¡ 1¡ 1¡ 1¡ 1

1¡ 1¡ 1¡ 1¡ 1¡ 1¡ 1¡ 1

1¡ 1¡ 1¡ 1¡ 1¡ 1¡ 1¡ 1

1¡ 1¡ 1¡ 1¡ 1¡ 1¡ 1¡ 1

1¡ 1¡ 1¡ 1¡ 1¡ 1¡ 1¡ 1

1¡ 1¡ 1¡ 1¡ 1¡ 1¡ 1¡ 1

2     ¡ 2 ¡ 2          ¡ 2     ¡ 2     ¡ 2     ¡ 2     ¡ 2     

2     ¡ 2 ¡ 2          ¡ 2     ¡ 2     ¡ 2     ¡ 2     ¡ 2     

2     ¡ 2 ¡ 2          ¡ 2     ¡ 2     ¡ 2     ¡ 2     ¡ 2     

2     ¡ 2 ¡ 2          ¡ 2     ¡ 2     ¡ 2     ¡ 2     ¡ 2     

2     ¡ 2 ¡ 2          ¡ 2     ¡ 2     ¡ 2     ¡ 2     ¡ 2     

2     ¡ 2 ¡ 2          ¡ 2     ¡ 2     ¡ 2     ¡ 2     ¡ 2     

2     ¡ 2 ¡ 2          ¡ 2     ¡ 2     ¡ 2     ¡ 2     ¡ 2     

2     ¡ 2 ¡ 2          ¡ 2     ¡ 2     ¡ 2     ¡ 2     ¡ 2     

2     ¡ 2 ¡ 2          ¡ 2     ¡ 2     ¡ 2     ¡ 2     ¡ 2     

E l n o d o d e c o l o r n e g r o s e r í a e l n o d o g e n e r a d o a c t u a l , l o s n o d o s e n c u a d r í c u l a s o n n o d o s  

c e r r a d o s y l o s n o d o s r a y a d o s s o n n o d o s a b i e r t o s . S i e l n o d o g e n e r a d o a c t u a l e s t á r e p e t i d o  

e n n i v e l e s s u p e r i o r e s ( m á s c e r c a d e l a r a í z ) , s u c o s t e s e r á p e o r y a q u e s u c a m i n o d e s d e  

l a r a í z e s m á s l a r g o , s i e s t á a l m i s m o n i v e l , s u c o s t e s e r á e l m i s m o . E n e s t o s d o s c a s o s  

p o d e m o s o l v i d a r n o s d e e s t e n o d o .  

E n e l c a s o d e q u e e l r e p e t i d o c o r r e s p o n d a a u n n o d o d e p r o f u n d i d a d s u p e r i o r , s i g n i c a  

q u e h e m o s l l e g a d o a l m i s m o e s t a d o p o r u n c a m i n o m á s c o r t o , d e m a n e r a q u e d e b e r e m o s  

m a n t e n e r l o y c o n t i n u a r s u e x p l o r a c i ó n , y a q u e n o s p e r m i t i r á l l e g a r a m a y o r p r o f u n d i d a d  

q u e a n t e s .  

E n e l c a s o d e l a b ú s q u e d a e n p r o f u n d i d a d , e l t r a t a m i e n t o d e n o d o s r e p e t i d o s n o e s  

c r u c i a l y a q u e a l t e n e r u n l í m i t e e n p r o f u n d i d a d l o s c i c l o s n o l l e v a n a c a m i n o s i n n i t o s .  

A d e m á s , n o t r a t a n d o r e p e t i d o s m a n t e n e m o s e l c o s t e e s p a c i a l l i n e a l , l o c u a l e s u n a g r a n  

v e n t a j a .  

E l e v i t a r t e n e r q u e t r a t a r r e p e t i d o s y t e n e r u n c o s t e e s p a c i a l l i n e a l s u p o n e u n a c a r a c t e -  

r í s t i c a d i f e r e n c i a d o r a d e h a c e m u y v e n t a j o s a a l a b ú s q u e d a e n p r o f u n d i d a d . E s t e a l g o r i t m o  

s e r á c a p a z d e o b t e n e r s o l u c i o n e s q u e s e e n c u e n t r e n a g r a n p r o f u n d i d a d .  

E n u n p r o b l e m a c o n c r e t o , e l a l g o r i t m o d e b ú s q u e d a e n a n c h u r a t e n d r á u n a e s t r u c t u r a  

d e n o d o s a b i e r t o s d e t a m a ñ o   O(r p) , l o q u e a g o t a r á r á p i d a m e n t e l a m e m o r i a i m p i d i e n d o  

c o n t i n u a r l a b ú s q u e d a , p e r o s o l o h a b i e n d o a l c a n z a d o u n a p r o f u n d i d a d d e c a m i n o d e   p . E n 

c a m b i o e l a l g o r i t m o e n p r o f u n d i d a d s o l o t e n d r á   O(rp) n o d o s a b i e r t o s a l l l e g a r a e s a m i s m a  

p r o f u n d i d a d .  

E s t o q u i e r e d e c i r q u e e n p r o b l e m a s d i f í c i l e s l a e s t r a t e g i a e n p r o f u n d i d a d s e r á l a ú n i c a  

c a p a z d e h a l l a r u n a s o l u c i ó n c o n u n e s p a c i o d e m e m o r i a l i m i t a d o .  

Page 20: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 20/75

 

2 . 4 . B Ú S Q U E D A E N P R O F U N D I D A D I T E R A T I V A   1 5 

2 . 4 . B ú s q u e d a e n p r o f u n d i d a d i t e r a t i v a      

E s t e a l g o r i t m o i n t e n t a o b t e n e r l a s p r o p i e d a d e s v e n t a j o s a s d e l a b ú s q u e d a e n p r o f u n d i -  

d a d y e n a n c h u r a c o m b i n a d a s , e s d e c i r , u n c o s t e e s p a c i a l l i n e a l y a s e g u r a r q u e l a s o l u c i ó n  

s e r á ó p t i m a r e s p e c t o a l a l o n g i t u d d e l c a m i n o .  

P a r a o b t e n e r e s t e a l g o r i t m o l o q u e s e h a c e e s r e p e t i r s u c e s i v a m e n t e e l a l g o r i t m o d e  

p r o f u n d i d a d l i m i t a d a , a u m e n t a n d o a c a d a i t e r a c i ó n l a p r o f u n d i d a d m á x i m a a l a q u e p e r -  

m i t i m o s l l e g a r .  

E s t e a l g o r i t m o o b t e n d r í a e l m i s m o e f e c t o q u e e l r e c o r r i d o e n a n c h u r a e n c a d a i t e r a c i ó n ,  

y a q u e a c a d a p a s o r e c o r r e m o s u n n i v e l m á s d e l e s p a c i o d e b ú s q u e d a . E l c o s t e e s p a c i a l s e r á  

l i n e a l y a q u e c a d a i t e r a c i ó n e s u n r e c o r r i d o e n p r o f u n d i d a d . P a r a q u e e l a l g o r i t m o a c a b e  

e n e l c a s o d e q u e n o h a y a s o l u c i ó n s e p u e d e i m p o n e r u n l í m i t e m á x i m o d e p r o f u n d i d a d e n  

l a b ú s q u e d a .  

A p a r e n t e m e n t e p o d r í a p a r e c e r q u e e s t e a l g o r i t m o e s m á s c o s t o s o q u e l o s a n t e r i o r e s a l  

t e n e r q u e r e p e t i r e n c a d a i t e r a c i ó n l a b ú s q u e d a a n t e r i o r , p e r o s i p e n s a m o s e n e l n ú m e r o  

d e n o d o s n u e v o s q u e r e c o r r e m o s a c a d a i t e r a c i ó n , e s t o s s o n s i e m p r e m á s q u e t o d o s l o s q u e  

h e m o s r e c o r r i d o e n t o d a s l a s i t e r a c i o n e s a n t e r i o r e s , p o r l o q u e l a s r e p e t i c i o n e s s u p o n e n u n  

f a c t o r c o n s t a n t e r e s p e c t o a l o s q u e r e c o r r e r i a m o s h a c i e n d o s ó l o l a ú l t i m a i t e r a c i ó n .  

E l a l g o r i t m o d e p r o f u n d i d a d i t e r a t i v a e s e l s i g u i e n t e :  

A l g o r i t m o   B u s q u e d a   e n  p r o f u n d i d a d i t e r a t i v a ( l i m i t e : e n t e r o )  

p r o f = 1 ;  

E s t _ a b i e r t o s . i n i c i a l i z a r ( )  

m i e n t r a s   (  n o  e s _ f i n a l ? ( A c t u a l ) )   y  p r o f < l i m i t e   h a c e r  

E s t _ a b i e r t o s . i n s e r t a r ( E s t a d o i n i c i a l )  

A c t u a l = E s t _ a b i e r t o s . p r i m e r o ( )  

m i e n t r a s   (  n o  e s _ f i n a l ? ( A c t u a l ) )   y n o  E s t _ a b i e r t o s . v a c i a ? ( )   h a c e r  

E s t _ a b i e r t o s . b o r r a r _ p r i m e r o ( )  

E s t _ c e r r a d o s . i n s e r t a r ( A c t u a l )  

s i  p r o f u n d i d a d ( A c t u a l ) < = p r o f   e n t o n c e s  

H i j o s = g e n e r a r _ s u c e s o r e s ( A c t u a l )  

H i j o s = t r a t a r _ r e p e t i d o s ( H i j o s , E s t _ c e r r a d o s , E s t _ a b i e r t o s )  

f s i 

E s t _ a b i e r t o s . i n s e r t a r ( H i j o s )  

A c t u a l = E s t _ a b i e r t o s . p r i m e r o ( )  

f m i e n t r a s  

p r o f = p r o f + 1  

E s t _ a b i e r t o s . i n i c i a l i z a r ( )  

f m i e n t r a s  

f A l g o r i t m o  

S i n o s j a m o s e n l a s p r o p i e d a d e s q u e h e m o s e s c o g i d o p a r a c l a s i c a r l o s a l g o r i t m o s :  

Page 21: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 21/75

 

1 6  C A P Í T U L O 2 . B Ú S Q U E D A N O I N F O R M A D A  

C o m p l e t i t u d : E l a l g o r i t m o s i e m p r e e n c o n t r a r á l a s o l u c i ó n  

C o m p l e j i d a d t e m p o r a l : L a m i s m a q u e l a b ú s q u e d a e n a n c h u r a . E l r e g e n e r a r e l á r b o l  

e n c a d a i t e r a c i ó n s o l o a ñ a d e u n f a c t o r c o n s t a n t e a l a f u n c i ó n d e c o s t e  

O(r p

)

C o m p l e j i d a d e s p a c i a l : I g u a l q u e e n l a b ú s q u e d a e n p r o f u n d i d a d  

O p t i m a l i d a d : L a s o l u c i ó n e s ó p t i m a i g u a l q u e e n l a b ú s q u e d a e n a n c h u r a  

I g u a l q u e e n e l c a s o d e l a l g o r i t m o e n p r o f u n d i d a d , e l t r a t a r r e p e t i d o s a c a b a c o n t o d a s  

l a s v e n t a j a s e s p a c i a l e s d e l a l g o r i t m o , p o r l o q u e e s a c o n s e j a b l e n o h a c e r l o .  

S i e l a l g o r i t m o e n p r o f u n d i d a d l i m i t a d a e s c a p a z d e e n c o n t r a r s o l u c i o n e s a m a y o r p r o -  

f u n d i d a d , e s t e a l g o r i t m o a d e m á s n o s g a r a n t i z a r á q u e l a s o l u c i ó n s e r á ó p t i m a . P o r l o t a n t o  

e s t e e s e l a l g o r i t m o m á s v e n t a j o s o d e l o s t r e s .  

Page 22: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 22/75

 

C a p í t u l o 3    

B ú s q u e d a h e u r í s t i c a      

3 . 1 . E l c o n o c i m i e n t o i m p o r t a      

E s e v i d e n t e q u e l o s a l g o r i t m o s d e b ú s q u e d a n o i n f o r m a d a s e r á n i n c a p a c e s d e e n c o n t r a r  

s o l u c i o n e s e n p r o b l e m a s e n l o s q u e e l t a m a ñ o d e l e s p a c i o d e b ú s q u e d a s e a g r a n d e . T o d o s  

e s t o s a l g o r i t m o s t i e n e u n c o s t e t e m p o r a l q u e e s u n a f u n c i ó n e x p o n e n c i a l d e l t a m a ñ o d e  

l a e n t r a d a , p o r l o t a n t o e l t i e m p o p a r a e n c o n t r a r l a m e j o r s o l u c i ó n a u n p r o b l e m a n o e s  

a s u m i b l e e n p r o b l e m a s r e a l e s .  

L a m a n e r a d e c o n s e g u i r r e d u c i r e s t e t i e m p o d e b ú s q u e d a a a l g o r a z o n a b l e e s i n t e n t a r  

h a c e r i n t e r v e n i r c o n o c i m i e n t o s o b r e e l p r o b l e m a q u e q u e r e m o s r e s o l v e r d e n t r o d e l f u n c i o -  

n a m i e n t o d e l a l g o r i t m o d e b ú s q u e d a .  

E l p r o b l e m a q u e t e n d r e m o s e s q u e e s t e c o n o c i m i e n t o s e r á p a r t i c u l a r p a r a c a d a p r o b l e -  

m a , p o r l o t a n t o n o s e r á e x p o r t a b l e a o t r o s . P e r d e r e m o s e n g e n e r a l i d a d , p e r o p o d r e m o s  

g a n a r e n e c i e n c i a t e m p o r a l .  

E n e s t e c a p í t u l o n o s c e n t r a r e m o s e n l o s a l g o r i t m o s q u e b u s c a n l a s o l u c i ó n ó p t i m a . E s t e  

o b j e t i v o s o l o e s a b o r d a b l e h a s t a c i e r t o t a m a ñ o d e p r o b l e m a s , e x i s t i r á t o d o u n c o n j u n t o d e  

p r o b l e m a s e n l o s q u e l a b ú s q u e d a d e l ó p t i m o s e r á i m p o s i b l e g e n e r a l m e n t e p o r e l t a m a ñ o  

d e s u e s p a c i o d e b ú s q u e d a .  

3 . 2 . E l ó p t i m o e s t á e n e l c a m i n o      

P a r a p o d e r p l a n t e a r l a b ú s q u e d a d e l ó p t i m o s i e m p r e h e m o s q u e t e n e r a l g u n a m e d i d a  

d e l c o s t e d e o b t e n e r u n a s o l u c i ó n . E s t e c o s t e l o m e d i r e m o s s o b r e e l c a m i n o q u e n o s l l e v a  

d e s d e e l e s t a d o i n i c i a l d e l p r o b l e m a h a s t a e l e s t a d o n a l . N o t o d o s l o s p r o b l e m a s s e p u e d e n  

p l a n t e a r d e e s t a f o r m a t a l y c o m o v e r e m o s e n e l p r ó x i m o c a p í t u l o .  

P o r l o t a n t o , s u p o n d r e m o s q u e p o d e m o s p l a n t e a r n u e s t r a b ú s q u e d a c o m o l a b ú s q u e d a  

d e u n c a m i n o y q u e d e a l g u n a m a n e r a s o m o s c a p a c e s d e s a b e r o e s t i m a r c u a l e s l a l o n g i t u d o  

1 7 

Page 23: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 23/75

 

1 8  C A P Í T U L O 3 . B Ú S Q U E D A H E U R Í S T I C A  

c o s t e d e é s t e . P o r l o g e n e r a l t e n d r e m o s u n c o s t e a s o c i a d o a l o s o p e r a d o r e s q u e n o s p e r m i t e n  

p a s a r d e u n e s t a d o a o t r o , p o r l o q u e e s e c o s t e t e n d r á u n p a p e l f u n d a m e n t a l e n e l c á l c u l o  

d e l c o s t e d e l c a m i n o .  

L o s a l g o r i t m o s q u e v e r e m o s u t i l i z a r á n e l c á l c u l o d e l c o s t e d e e s t e c a m i n o p a r a s a b e r  

q u e n o d o s m e r e c e l a p e n a e x p l o r a r a n t e s . D e e s t a m a n e r a , p e r d e r e m o s l a s i s t e m a t i c i d a d d e  

l o s a l g o r i t m o s d e b ú s q u e d a n o i n f o r m a d a , y e l o r d e n d e v i s i t a d e l o s e s t a d o s d e b ú s q u e d a  

n o v e n d r á d e t e r m i n a d o p o r s u p o s i c i ó n e n e l g r a f o d e b ú s q u e d a , s i n o p o r s u c o s t e .  

D a d o q u e e l g r a f o v a s i e n d o g e n e r a d o a m e d i d a q u e l o e x p l o r a m o s , p o d e m o s v e r q u e  

t e n e m o s d o s e l e m e n t o s q u e i n t e r v i e n e n e n e l c o s t e d e l c a m i n o h a s t a l a s o l u c i ó n q u e b u s -  

c a m o s . E n p r i m e r l u g a r , t e n d r e m o s e l c o s t e d e l c a m i n o r e c o r r i d o , q u e p o d r e m o s c a l c u l a r  

s i m p l e m e n t e s u m a n d o l o s c o s t e s d e l o s o p e r a d o r e s a p l i c a d o s d e s d e e l e s t a d o i n i c i a l h a s t a  

e l n o d o a c t u a l . E n s e g u n d o l u g a r , t e n d r e m o s e l c o s t e m á s d i f í c i l , q u e e s e l d e l c a m i n o q u e  

n o s q u e d a p o r r e c o r r e r h a s t a e l e s t a d o n a l . D a d o q u e l o d e s c o n o c e m o s , t e n d r e m o s q u e  

u t i l i z a r e l c o n o c i m i e n t o d e l q u e d i s p o n e m o s d e l p r o b l e m a p a r a o b t e n e r u n a a p r o x i m a c i ó n .  

E v i d e n t e m e n t e , l a c a l i d a d d e e s e c o n o c i m i e n t o q u e n o s p e r m i t e p r e d e c i r e l c o s t e f u t u r o ,  

h a r á m á s o m e n o s e x i t o s a n u e s t r a b ú s q u e d a . S i n u e s t r o c o n o c i m i e n t o f u e r a p e r f e c t o , p o -  

d r í a m o s d i r i g i r n o s r á p i d a m e n t e h a c i a e l o b j e t i v o d e s c a r t a n d o t o d o s l o s c a m i n o s d e m a y o r  

c o s t e , e n e s t e e x t r e m o p o d r í a m o s e n c o n t r a r n u e s t r a s o l u c i ó n e n t i e m p o l i n e a l . E n e l o t r o  

e x t r e m o , s i e s t u v i é r a m o s e n l a t o t a l i g n o r a n c i a , t e n d r í a m o s q u e e x p l o r a r m u c h o s c a m i n o s  

a n t e s d e h a l l a r l a s o l u c i ó n ó p t i m a , t o d o s e n e l p e o r c a s o . E s t a ú l t i m a s i t u a c i ó n e s e n l a q u e  

s e e n c u e n t r a l a b ú s q u e d a n o i n f o r m a d a y d e s g r a c i a d a m e n t e l a p r i m e r a s i t u a c i ó n e s r a r a .  

Q u e d a r á p u e s c o m o l a b o r f u n d a m e n t a l e n c a d a p r o b l e m a , o b t e n e r u n a f u n c i ó n q u e n o s  

h a g a e l c á l c u l o d e l c o s t e f u t u r o d e s d e u n e s t a d o a l e s t a d o s o l u c i ó n . C u a n t o m á s p o d a m o s  

a j u s t a r l o a l c o s t e r e a l , m e j o r f u n c i o n a r á n l o s a l g o r i t m o s q u e v e r e m o s a c o n t i n u a c i ó n .  

3 . 3 . T ú p r i m e r o y t ú d e s p u é s    

E l f u n d a m e n t o d e l o s a l g o r i t m o s d e b ú s q u e d a h e u r í s t i c a s e r á e l c ó m o e l e g i r q u e n o d o  

e x p l o r a r p r i m e r o , p a r a e l l o p o d e m o s u t i l i z a r d i f e r e n t e s e s t r a t e g i a s q u e n o s d a r á n d i f e r e n t e s  

p r o p i e d a d e s .  

U n a p r i m e r a e s t r a t e g i a q u e s e n o s p u e d e o c u r r i r e s u t i l i z a r l a e s t i m a c i ó n d e l c o s t e f u t u r o  

p a r a d e c i d i r q u é n o d o s e x p l o r a r p r i m e r o . D e e s t a m a n e r a s u p o n d r e m o s q u e l o s n o d o s q u e  

a p a r e n t e m e n t e e s t á n m á s c e r c a d e l a s o l u c i ó n f o r m a r á n p a r t e d e l c a m i n o h a s t a l a s o l u c i ó n  

ó p t i m a y p o r l o t a n t o l a e n c o n t r a r e m o s a n t e s s i l o s e x p l o r a m o s e n p r i m e r l u g a r .  

E s t a e s t r a t e g i a s e t r a d u c e e n e l a l g o r i t m o   p r i m e r o e l m e j o r a v a r i c i o s o   (  g r e e d y b e s t  

r s t  ) . L a ú n i c a d i f e r e n c i a r e s p e c t o a l o s a l g o r i t m o s q u e h e m o s v i s t o e s e l u t i l i z a r c o m o  

e s t r u c t u r a p a r a a l m a c e n a r l o s n o d o s a b i e r t o s u n a c o l a c o n p r i o r i d a d . L a p r i o r i d a d d e l o s  

n o d o s l a m a r c a l a e s t i m a c i ó n d e l c o s t e d e l c a m i n o d e l n o d o h a s t a e l n o d o s o l u c i ó n .  

E l a l g o r i t m o e s e l s i g u i e n t e :  

Page 24: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 24/75

 

3 . 4 . E L A L G O R I T M O A  

∗1 9 

A l g o r i t m o   G r e e d y B e s t F i r s t  

E s t _ a b i e r t o s . i n s e r t a r ( E s t a d o i n i c i a l )  

A c t u a l = E s t _ a b i e r t o s . p r i m e r o ( )  

m i e n t r a s   (  n o  e s _ f i n a l ? ( A c t u a l ) )   y  (  n o  E s t _ a b i e r t o s . v a c i a ? ( ) )   h a c e r  

E s t _ a b i e r t o s . b o r r a r _ p r i m e r o ( )  

E s t _ c e r r a d o s . i n s e r t a r ( A c t u a l )  

h i j o s = g e n e r a r _ s u c e s o r e s ( A c t u a l )  

h i j o s = t r a t a r _ r e p e t i d o s ( H i j o s , E s t _ c e r r a d o s , E s t _ a b i e r t o s )  

E s t _ a b i e r t o s . i n s e r t a r ( H i j o s )  

A c t u a l = E s t _ a b i e r t o s . p r i m e r o ( )  

f m i e n t r a s  

f A l g o r i t m o  

E l e x p l o r a r a n t e s l o s n o d o s m á s c e r c a n o s a l a s o l u c i ó n p r o b a b l e m e n t e n o s h a r á e n -  

c o n t r a r l a a n t e s , p e r o e l n o t e n e r e n c u e n t a e l c o s t e d e l c a m i n o r e c o r r i d o h a c e q u e n o s e  

g a r a n t i c e l a s o l u c i ó n ó p t i m a .  

3 . 4 . E l a l g o r i t m o A        

D a d o q u e n u e s t r o o b j e t i v o n o e s s ó l o l l e g a r l o m a s r á p i d a m e n t e a l a s o l u c i ó n , s i n o  

e n c o n t r a r l a d e m e n o r c o s t e t e n d r e m o s q u e t e n e r e n c u e n t a e l c o s t e d e t o d o e l c a m i n o y n o  

s o l o e l c a m i n o p o r r e c o r r e r . P a r a p o d e r i n t r o d u c i r e l s i g u i e n t e a l g o r i t m o y e s t a b l e c e r s u s  

p r o p i e d a d e s t e n e m o s p r i m e r o q u e d a r u n a s e r i e d e d e n i c i o n e s .  

D e n o m i n a r e m o s e l  c o s t e d e u n a r c o   e n t r e d o s n o d o s   ni y  n j a l c o s t e d e l o p e r a d o r q u e  

n o s p e r m i t e p a s a r d e u n n o d o a l o t r o , y n o d e n o t a r e m o s c o m o   c(ni, n j) . 

D e n o m i n a r e m o s e l  c o s t e d e u n c a m i n o   e n t r e d o s n o d o s   ni y  n j a l a s u m a d e l o s c o s t e s  

d e t o d o s l o s a r c o s q u e l l e v a n d e s d e u n n o d o a l o t r o y l o d e n o t a r e m o s c o m o  

C (ni, n j) = j−1

x=i

c(nx, nx+1)

D e n o m i n a r e m o s e l   c o s t e d e l c a m i n o m í n i m o   e n t r e d o s n o d o s   ni y  n j a l c a m i n o d e  

m e n o r c o s t e d e e n t r e l o s q u e l l e v a n d e s d e u n n o d o a l o t r o y l o d e n o t a r e m o s c o m o  

K (ni, n j) =l

mınk=1

C k(ni, n j)

S i  n j e s u n n o d o t e r m i n a l , l l a m a r e m o s   h(ni) a  K (ni, n j) , e s d e c i r , e l c o s t e d e l c a m i n o  

m í n i m o d e s d e u n e s t a d o c u a l q u i e r a a u n e s t a d o s o l u c i ó n .  

S i  ni e s u n n o d o i n i c i a l , l l a m a r e m o s   g(n j) a  K (ni, n j) , e s d e c i r , e l c o s t e d e l c a m i n o  

m í n i m o d e s d e e l e s t a d o i n i c i a l a u n e s t a d o c u a l q u i e r a .  

Page 25: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 25/75

 

2 0  C A P Í T U L O 3 . B Ú S Q U E D A H E U R Í S T I C A  

E s t o n o s p e r m i t e d e n i r e l c o s t e d e l c a m i n o m í n i m o q u e p a s a p o r c u a l q u i e r n o d o c o m o  

u n a c o m b i n a c i ó n d e l c o s t e d e l c a m i n o m í n i m o d e s d e e l n o d o i n i c i a l a l n o d o m a s e l c o s t e  

d e l n o d o h a s t a e l n o d o n a l :  

f (n) = g(n) + h(n)

D a d o q u e e l v a l o r d e   h(n) l o d e s c o n o c e m o s , l o s u b s t i t u i r e m o s p o r u n a f u n c i ó n q u e n o s  

l o a p r o x i m a r á , a e s t a f u n c i ó n l a d e n o t a r e m o s   h(n) y l e d a r e m o s e l n o m b r e d e   f u n c i ó n  

h e u r í s t i c a   . D e e s t a m a n e r a t e n d r e m o s u n a e s t i m a c i ó n d e l c o s t e d e l c a m i n o m í n i m o q u e  

p a s a p o r c i e r t o n o d o :  

f (n) = g(n) + h(n)

S e r á e s t e v a l o r e l q u e u t i l i c e m o s p a r a d e c i d i r e n n u e s t r o a l g o r i t m o d e b ú s q u e d a c u a l e s  

e l s i g u i e n t e n o d o a e x p l o r a r d e e n t r e t o d o s l o s n o d o s a b i e r t o s d i s p o n i b l e s . P a r a r e a l i z a r e s a  

b ú s q u e d a u t i l i z a r e m o s e l a l g o r i t m o q u e d e n o m i n a r e m o s A  

∗: 

A l g o r i t m o   A  ∗E s t _ a b i e r t o s . i n s e r t a r ( E s t a d o i n i c i a l )  

A c t u a l = E s t _ a b i e r t o s . p r i m e r o ( )  

m i e n t r a s   (  n o  e s _ f i n a l ? ( A c t u a l ) )   y  (  n o  E s t _ a b i e r t o s . v a c i a ? ( ) )   h a c e r  

E s t _ a b i e r t o s . b o r r a r _ p r i m e r o ( )  

E s t _ c e r r a d o s . i n s e r t a r ( A c t u a l )  

h i j o s = g e n e r a r _ s u c e s o r e s ( A c t u a l )  

h i j o s = t r a t a r _ r e p e t i d o s ( H i j o s , E s t _ c e r r a d o s , E s t _ a b i e r t o s )  

E s t _ a b i e r t o s . i n s e r t a r ( H i j o s )  

A c t u a l = E s t _ a b i e r t o s . p r i m e r o ( )  

f m i e n t r a s  

f A l g o r i t m o  

C o m o s e o b s e r v a r á , e l a l g o r i t m o e s e l m i s m o q u e e l   p r i m e r o e l m e j o r a v a r i c i o s o  , 

l o ú n i c o q u e c a m b i a e s q u e a h o r a l a o r d e n a c i ó n d e l o s n o d o s s e r e a l i z a u t i l i z a n d o e l v a l o r  

d e  f  . C o m o c r i t e r i o d e o r d e n a c i ó n , c o n s i d e r a r e m o s q u e a i g u a l v a l o r d e   f  l o s n o d o s c o n  

hm á s p e q u e ñ a s e e x p l o r a r á n a n t e s ( s i m p l e m e n t e p o r q u e s i l a   h

e s m á s p e q u e ñ a e s q u e  

s o n n o d o s m a s c e r c a d e l a s o l u c i ó n ) , a i g u a l   hs e c o n s i d e r a r a n e n e l o r d e n e n e l q u e s e  

i n t r o d u j e r o n e n l a c o l a .  

N u n c a e s t á d e m á s e l r e m a r c a r q u e e l a l g o r i t m o s ó l o a c a b a c u a n d o s e   e x t r a e   u n a 

s o l u c i ó n d e l a c o l a . E s p o s i b l e q u e e n c i e r t o m o m e n t o y a h a y a n o d o s s o l u c i ó n , p e r o h a s t a q u e  

n o s e h a y a n e x p l o r a d o l o s n o d o s p o r d e l a n t e d e e l l o s , n o p o d e m o s a s e g u r a r q u e r e a l m e n t e  

s e a n s o l u c i o n e s b u e n a s . S i e m p r e h a y q u e t e n e r e n m e n t e q u e l o s n o d o s e s t á n o r d e n a d o s p o r  

e l c o s t e e s t i m a d o d e l c a m i n o t o t a l , s i l a e s t i m a c i ó n e s m e n o r e s q u e p o d r í a n p e r t e n e c e r a  

u n c a m i n o c o n u n a s o l u c i ó n m e j o r .  

Page 26: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 26/75

 

3 . 4 . E L A L G O R I T M O A  

∗2 1 

H a y q u e c o n s i d e r a r q u e e l c o s t e d e e s t e a l g o r i t m o e s t a m b i é n   O(r p) e n e l c a s o p e o r .  

S i p o r e j e m p l o , l a f u n c i ó n   h(n) f u e r a s i e m p r e 0 , e l a l g o r i t m o s e c o m p o r t a r í a c o m o u n a  

b ú s q u e d a e n a n c h u r a g o b e r n a d a p o r e l c o s t e d e l c a m i n o r e c o r r i d o .  

L o q u e h a c e q u e e s t e a l g o r i t m o p u e d a t e n e r u n c o s t e t e m p o r a l i n f e r i o r e s l a b o n d a d d e  

l a f u n c i ó n   h. D e h e c h o , p o d e m o s i n t e r p r e t a r l a s f u n c i o n e s   g y  h

c o m o l a s q u e g o b i e r n a n  

e l c o m p o r t a m i e n t o e n a n c h u r a o p r o f u n d i d a d d e l a l g o r i t m o .  

C u a n t o m á s c e r c a n a a l a r e a l i d a d s e a   h, m a y o r s e r á e l c o m p o r t a m i e n t o e n p r o f u n d i d a d  

d e l a l g o r i t m o , p u e s l o s n o d o s q u e a p a r e n t e m e n t e e s t á n m a s c e r c a d e l a s o l u c i ó n s e e x p l o r a n  

a n t e s . E n e l m o m e n t o e n e l q u e e s a i n f o r m a c i ó n d e j e d e s e r a b l e , e l c o s t e d e l c a m i n o y a  

e x p l o r a d o h a r á q u e o t r o s n o d o s m e n o s p r o f u n d o s t e n g a n u n c o s t e t o t a l m e j o r y p o r l o t a n t o  

s e a b r i r á l a b ú s q u e d a e n a n c h u r a .  

S i p e n s a m o s u n p o c o e n e l c o s t e e s p a c i a l q u e t e n d r á e l a l g o r i t m o p o d e m o s o b s e r v a r q u e  

c o m o é s t e p u e d e c o m p o r t a r s e c o m o u n a l g o r i t m o d e b ú s q u e d a e n a n c h u r a , e l c o s t e e s p a c i a l  

e n e l c a s o p e o r t a m b i é n s e r á   O(r p) . I g u a l q u e n o s p a s a c o n e l c o s t e t e m p o r a l , s i l a f u n c i ó n  

h e u r í s t i c a e s s u c i e n t e m e n t e b u e n a n o l l e g a r e m o s a n e c e s i t a r t a n t o e s p a c i o a n t e s d e l l e g a r  

a l a s o l u c i ó n .  

E l t r a t a m i e n t o d e n o d o s r e p e t i d o s e n e s t e a l g o r i t m o s e r e a l i z a d e l a s i g u i e n t e f o r m a :  

S i e s u n r e p e t i d o q u e e s t á e n l a e s t r u c t u r a d e a b i e r t o s  

•S i s u c o s t e e s m e n o r s u b s t i t u i m o s e l c o s t e p o r e l n u e v o , e s t o p o d r á v a r i a r s u  

p o s i c i ó n e n l a e s t r u c t u r a d e a b i e r t o s  

•S i s u c o s t e e s i g u a l o m a y o r n o s o l v i d a m o s d e l n o d o  

S i e s u n r e p e t i d o q u e e s t á e n l a e s t r u c t u r a d e c e r r a d o s  

• S i s u c o s t e e s m e n o r r e a b r i m o s e l n o d o i n s e r t á n d o l o e n l a e s t r u c t u r a d e a b i e r t o s  

c o n e l n u e v o c o s t e , n o h a c e m o s n a d a c o n s u s s u c e s o r e s , y a s e r e a b r i r á n s i h a c e  

f a l t a  

•S i s u c o s t e e s m a y o r o i g u a l n o s o l v i d a m o s d e l n o d o  

M a s a d e l a n t e v e r e m o s q u e s i l a f u n c i ó n   hc u m p l e c i e r t a s c o n d i c i o n e s p o d e m o s e v i t a r  

e l t r a t a m i e n t o d e r e p e t i d o s .  

A c o n t i n u a c i ó n p o d e m o s v e r u n p e q u e ñ o e j e m p l o d e e j e c u c i ó n d e l a l g o r i t m o   A∗

E j e m p l o 3 . 1   S i c o n s i d e r a m o s e l g r a f o d e b ú s q u e d a d e l a g u r a , d o n d e e n c a d a n o d o t e n e -  

m o s d e s c o m p u e s t o e l c o s t e e n   g y  hy m a r c a d o e l o r d e n e n e l q u e e l a l g o r i t m o h a v i s i t a d o  

c a d a n o d o :  

Page 27: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 27/75

 

2 2  C A P Í T U L O 3 . B Ú S Q U E D A H E U R Í S T I C A  

1+1

0+2

1+1 1+3

2+1 1+2 2+2

3+2

4+1

5+04+05+0

4+1 3+14+1

3+1 3+1

Objetivo Objetivo Objetivo

1

2

4

6

10

5

3 8

9

7

11

L a n u m e r a c i ó n e n l o s n o d o s i n d i c a e l o r d e n e n q u e e l a l g o r i t m o A  

∗l o s h a e x p a n d i d o ( y  

p o r l o t a n t o e l o r d e n e n e l q u e h a n s i d o e x t r a i d o s d e l a c o l a ) .  

P o d e m o s o b s e r v a r t a m b i é n q u e h a y u n n o d o a b i e r t o q u e e s r e v i s i t a d o p o r o t r o c a m i n o  

c o n u n c o s t e i n f e r i o r q u e s u b s t i t u y e a l e n c o n t r a d o c o n a n t e r i o r i d a d .  

3 . 5 . P e r o , ¾ e n c o n t r a r é e l ó p t i m o ?      

H a s t a a h o r a n o h e m o s h a b l a d o p a r a n a d a s o b r e l a o p t i m a l i d a d d e l a s o l u c i ó n . H e m o s  

v i s t o q u e e n e l c a s o d e g e n e r a d o t e n e m o s u n a b ú s q u e d a e n a n c h u r a g u i a d a p o r e l c o s t e  

d e l c a m i n o e x p l o r a d o , e s o n o s d e b e r í a g a r a n t i z a r e l ó p t i m o e n e s t e c a s o . P e r o c o m o h e -  

m o s c o m e n t a d o , l a f u n c i ó n   hn o s p e r m i t e o b t e n e r u n c o m p o r t a m i e n t o d e b ú s q u e d a e n  

p r o f u n d i d a d y s a b e m o s q u e e n e s t e c a s o n a d a n o s g a r a n t i z a e l ó p t i m o .  

E l s a b e r s i e n c o n t r a r e m o s o n o e l ó p t i m o m e d i a n t e e l a l g o r i t m o   A∗r e c a e t o t a l m e n t e e n  

l a s p r o p i e d a d e s q u e c u m p l e l a f u n c i ó n h e u r í s t i c a , s i e s t a c u m p l e c i e r t o s c r i t e r i o s s a b r e m o s  

q u e e n c o n t r a r e m o s l a s o l u c i ó n ó p t i m a , s i n o l o s c u m p l e , n o l o p o d r e m o s s a b e r .  

3 . 5 . 1 . A d m i s i b i l i d a d  

L a p r o p i e d a d c l a v e q u e n o s g a r a n t i z a r á e l h a l l a r l a s o l u c i ó n ó p t i m a e s l a q u e d e n o m i n a -  

r e m o s   a d m i s i b i l i d a d   . D i r e m o s q u e u n a f u n c i ó n h e u r í s t i c a   he s a d m i s i b l e s i e m p r e q u e s e  

c u m p l a q u e s u v a l o r e n c a d a n o d o s e a m e n o r o i g u a l q u e e l v a l o r d e l c o s t e r e a l d e l c a m i n o  

q u e n o s f a l t a p o r r e c o r r e r h a s t a l a s o l u c i ó n :  

∀n 0 ≤ h(n) ≤ h(n)

Page 28: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 28/75

 

3 . 5 . P E R O , ¾ E N C O N T R A R É E L Ó P T I M O ?   2 3 

E s t o q u i e r e d e c i r q u e l a f u n c i ó n h e u r í s t i c a h a d e s e r u n e s t i m a d o r   o p t i m i s t a   d e l c o s t e  

q u e f a l t a p a r a l l e g a r a l a s o l u c i ó n .  

E j e m p l o 3 . 2   P o d e m o s v e r e n e s t e e j e m p l o d o s g r a f o s d e b ú s q u e d a , u n o c o n u n a f u n c i ó n  

a d m i s i b l e y o t r a q u e n o l o e s  

A

B C D

FE

G

I J

H

(3+1)

(1+3)

(4+1) (4+0)

(3+1)

(2+2) (2+2)

(1+5)(1+2)

Objetivo

1

2

3

4

5

6

7

8

E n e s t e p r i m e r c a s o , l a f u n c i ó n h e u r í s t i c a s i e m p r e e s a d m i s i b l e , p e r o e n l a p r i m e r a  

r a m a e l c o s t e e s m á s p e q u e ñ o q u e e l r e a l , p o r l o q u e p i e r d e c i e r t o t i e m p o e x p l o r á n d o l a ( e l  

e f e c t o e n p r o f u n d i d a d q u e h e m o s c o m e n t a d o ) , p e r o a l n a l e l a l g o r i t m o p a s a a l a s e g u n d a  

r a m a h a l l a n d o l a s o l u c i ó n .  

A

B C D

E

G

H

F

(3+1)

(2+2)

(1+5)(1+2)

1

2

3

4Objetivo

(4+0)

Objetivo

(2+0)

5

(1+4)

E n e s t e c a s o e l a l g o r i t m o a c a b a r í a a l e n c o n t r a r l a s o l u c i ó n e n G , a p e s a r d e q u e h a y a  

Page 29: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 29/75

 

2 4  C A P Í T U L O 3 . B Ú S Q U E D A H E U R Í S T I C A  

u n a s o l u c i ó n c o n u n c o s t e m á s p e q u e ñ o e n H , s i m p l e m e n t e p o r q u e e l c o s t e e s t i m a d o q u e d a  

e n e l n o d o D e s s u p e r i o r a l r e a l .  

E s t a p r o p i e d a d i m p l i c a q u e , s i p o d e m o s d e m o s t r a r q u e l a f u n c i ó n d e e s t i m a c i ó n   hq u e 

u t i l i z a m o s e n n u e s t r o p r o b l e m a l a c u m p l e , s i e m p r e e n c o n t r a r e m o s u n a s o l u c i ó n ó p t i m a . E l  

p r o b l e m a r a d i c a e n h a c e r e s a d e m o s t r a c i ó n , p u e s c a d a p r o b l e m a e s d i f e r e n t e . P o r e l l o , n o  

p o d e m o s d a r u n m é t o d o g e n e r a l p a r a d e m o s t r a r l a a d m i s i b i l i d a d d e u n a f u n c i ó n h e u r í s t i c a .  

L o q u e s i p o d e m o s e s t a b l e c e r e s q u e p a r a d e m o s t r a r q u e u n a f u n c i ó n h e u r í s t i c a   n o  e s 

a d m i s i b l e b a s t a c o n e n c o n t r a r u n n o d o q u e i n c u m p l a l a p r o p i e d a d . E s t o s e p u e d e o b s e r v a r  

s i m p l e m e n t e c o m p r o b a n d o s i a l g u n o d e l o s n o d o s q u e e s t á n e n e l c a m i n o s o l u c i ó n t i e n e u n  

c o s t e m a y o r q u e e l r e a l , p u e s s ó l o d i s p o n e m o s d e l c o s t e r e a l p a r a l o s n o d o s d e e s e c a m i n o .  

H a y q u e r e m a r c a r t a m b i é n q u e l a p r o p i e d a d d e a d m i s i b i l i d a d e s u n p r o p i e d a d d e l a  

f u n c i ó n h e u r í s t i c a , n o d e l a l g o r i t m o q u e l a u t i l i z a , p o r l o q u e s i l a f u n c i ó n e s a d m i s i b l e  

c u a l q u i e r a l g o r i t m o d e l o s q u e v e a m o s q u e l a u t i l i c e n o s h a l l a r á l a s o l u c i ó n ó p t i m a .  

P a r a u n a d i s c u s i ó n s o b r e t é c n i c a s p a r a c o n s t r u i r h e u r í s t i c o s a d m i s i b l e s s e p u e d e c o n -  

s u l t a r e l c a p í t u l o 4 , s e c c i ó n 4 . 2 , d e l l i b r o I n t e l i g é n c i a A r t i c i a l : U n e n f o q u e M o d e r n o ( 2  

a

e d i c i ó n ) d e S . R u s s e l l y P . N o r v i g .  

3 . 5 . 2 . C o n s i s t e n c i a  

P o d e m o s d e n i r l a p r o p i e d a d d e c o n s i s t e n c i a c o m o u n a e x t e n s i ó n d e l a p r o p i e d a d d e  

a d m i s i b i l i d a d . S i t e n e m o s e l c o s t e   h(ni) y e l c o s t e   h(n j) y e l c o s t e ó p t i m o p a r a i r d e   ni a 

n j , o s e a   K (ni, n j), s e c u m p l e l a d e s i g u a l d a d t r i a n g u l a r :  

h(ni) ≤ h(n j) + K (ni, n j)

L a c o n d i c i ó n d e c o n s i s t e n c i a e x i g e p e d i r l o m i s m o a l e s t i m a d o r   h: 

h(ni) − h(n j) ≤ K (ni, n j)

E s d e c i r , q u e l a d i f e r e n c i a d e l a s e s t i m a c i o n e s h a d e s e r m e n o r o i g u a l q u e l a d i s t a n c i a  

ó p t i m a e n t r e n o d o s . S i e s t a p r o p i e d a d s e c u m p l e e s t o q u i e r e d e c i r q u e   he s u n e s t i m a d o r  

u n i f o r m e d e   h. 

S i  he s c o n s i s t e n t e a d e m á s s e c u m p l e q u e e l v a l o r d e   g(n) p a r a c u a l q u i e r n o d o e s  

K (ni, n j) , p o r l o t a n t o , u n a v e z h e m o s l l e g a d o a u n n o d o s a b e m o s q u e h e m o s l l e g a d o a é l  

p o r e l c a m i n o ó p t i m o d e s d e e l n o d o i n i c i a l . S i e s t o e s a s í , n o e s p o s i b l e q u e n o s e n c o n t r e m o s  

e l m i s m o n o d o p o r u n c a m i n o a l t e r n a t i v o c o n u n c o s t e m e n o r y e s t o h a c e q u e e l t r a t a m i e n t o  

d e n o d o s c e r r a d o s d u p l i c a d o s s e a i n n e c e s a r i o , l o q u e n o s a h o r r a t e n e r q u e g u a r d a r l o s .  

Page 30: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 30/75

 

3 . 6 . M I M E M O R I A S E A C A B A   2 5 

3 . 5 . 3 . H e u r í s t i c o m á s i n f o r m a d o  

O t r a p r o p i e d a d i n t e r e s a n t e e s l a q u e n o s p e r m i t e c o m p a r a r h e u r í s t i c o s e n t r e s i y n o s  

p e r m i t e s a b e r c u á l d e e l l o s h a l l a r á m á s r á p i d o l a s o l u c i ó n . D i r e m o s q u e e l h e u r í s t i c o   h1 e s 

m á s i n f o r m a d o q u e e l h e u r í s t i c o   h

2 s i s e c u m p l e l a p r o p i e d a d :  

∀n 0 ≤ h

2(n) < h

1(n) ≤ h(h)

S e h a d e o b s e r v a r q u e e s t a p r o p i e d a d i n c l u y e q u e l o s d o s h e u r í s t i c o s s e a n a d m i s i b l e s .  

S i u n h e u r í s t i c o e s m a s i n f o r m a d o q u e o t r o s e g u r o q u e e x p a n d i r á m e n o s n o d o s d u r a n t e  

l a b ú s q u e d a .  

E s t o n o s p o d r í a h a c e r p e n s a r q u e s i e m p r e t e n e m o s q u e e s c o g e r e l h e u r í s t i c o m á s i n f o r -  

m a d o . H e m o s d e p e n s a r t a m b i é n q u e l a f u n c i ó n h e u r í s t i c a t i e n e u n t i e m p o d e c á l c u l o q u e  

a f e c t a a l t i e m p o d e c a d a i t e r a c i ó n . E v i d e n t e m e n t e , c u a n t o m á s i n f o r m a d o s e a e l h e u r í s t i c o ,  

m a y o r s e r á e s e c o s t e . N o s p o d e m o s i m a g i n a r p o r e j e m p l o , q u e s i t e n e m o s u n h e u r í s t i c o q u e  

n e c e s i t a p o r e j e m p l o 1 0 i t e r a c i o n e s p a r a l l e g a r a l a s o l u c i ó n , p e r o t i e n e u n c o s t e d e 1 0 0  

u n i d a d e s d e t i e m p o , t a r d a r á m á s e n l l e g a r a l a s o l u c i ó n q u e o t r o h e u r í s t i c o q u e n e c e s i t e  

1 0 0 i t e r a c i o n e s p e r o q u e s o l o n e c e s i t e u n a u n i d a d d e t i e m p o p o r i t e r a c i ó n .  

E s t o n o s h a c e p e n s a r q u e t e n e m o s q u e e n c o n t r a r u n e q u i l i b r i o e n t r e e l c o s t e d e l c á l c u l o  

d e l a f u n c i ó n h e u r í s t i c a y e l n ú m e r o d e e x p a n s i o n e s q u e n o s a h o r r a m o s a l u t i l i z a r l a . E s  

p o s i b l e q u e u n a f u n c i ó n h e u r í s t i c a p e o r n o s a c a b e d a n d o m e j o r r e s u l t a d o . T o d o e s t o e s  

e v i d e n t e m e n t e d e p e n d i e n t e d e l p r o b l e m a , i n c l u s o n o s p o d e m o s e n c o n t r a r c o n q u e u n a f u n -  

c i ó n n o a d m i s i b l e n o s p e r m i t a h a l l a r m a s r á p i d a m e n t e l a s o l u c i ó n , a p e s a r d e q u e n o n o s  

g a r a n t i c e l a o p t i m a l i d a d .  

3 . 6 . M i m e m o r i a s e a c a b a      

E l a l g o r i t m o A  

∗t i e n e s u s l i m i t a c i o n e s i m p u e s t a s e n p r i m e r l u g a r p o r p o d e r a c a b a r  

d e g e n e r a n d o e n u n a b ú s q u e d a e n a n c h u r a s i l a f u n c i ó n h e u r í s t i c a n o e s d e m a s i a d o b u e n a .  

A d e m á s , s i l a s o l u c i ó n d e l p r o b l e m a e s t á a m u c h a p r o f u n d i d a d o e l t a m a ñ o d e l e s p a c i o  

d e b ú s q u e d a e s m u y g r a n d e , n o h a c e f a l t a m u c h o p a r a l l e g a r a n e c e s i d a d e s d e e s p a c i o  

p r o h i b i t i v a s . E s t o n o s l l e v a a p l a n t e a r n o s a l g o r i t m o s a l t e r n a t i v o s c o n m e n o r e s n e c e s i d a d e s  

d e e s p a c i o .  

3 . 6 . 1 . E l a l g o r i t m o I D A  

L a p r i m e r a s o l u c i ó n v i e n e d e l a m a n o d e l a l g o r i t m o e n p r o f u n d i d a d i t e r a t i v a q u e h e m o s  

v i s t o e n e l c a p í t u l o a n t e r i o r . E n e s t e c a s o l o r e p l a n t e a m o s p a r a u t i l i z a r l a f u n c i ó n   f  c o m o  

e l v a l o r q u e c o n t r o l a l a p r o f u n d i d a d a l a q u e l l e g a m o s e n c a d a i t e r a c i ó n .  

Page 31: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 31/75

 

2 6  C A P Í T U L O 3 . B Ú S Q U E D A H E U R Í S T I C A  

E s t o q u i e r e d e c i r q u e h a c e m o s l a b ú s q u e d a i m p o n i e n d o u n l í m i t e a l c o s t e d e l c a m i n o q u e  

q u e r e m o s h a l l a r ( e n l a p r i m e r a i t e r a c i ó n , l a   f  d e l n o d o r a í z ) , e x p l o r a n d o e n p r o f u n d i d a d  

t o d o s l o s n o d o s c o n   f  i g u a l o i n f e r i o r a e s e l í m i t e y r e i n i c i a n d o l a b ú s q u e d a c o n u n c o s t e  

m a y o r s i n o e n c o n t r a m o s l a s o l u c i ó n e n l a i t e r a c i ó n a c t u a l . E l a l g o r i t m o e s e l s i g u i e n t e  

A l g o r i t m o   I D A ∗

p r o f = f ' ( E s t a d o _ i n i c i a l )  

m i e n t r a s   (  n o  e s _ f i n a l ? ( A c t u a l ) )   h a c e r  

E s t _ a b i e r t o s . i n s e r t a r ( E s t a d o _ i n i c i a l )  

A c t u a l = E s t _ a b i e r t o s . p r i m e r o ( )  

m i e n t r a s   (  n o  e s _ f i n a l ? ( A c t u a l ) )   y  (  n o  E s t _ a b i e r t o s . v a c i a ? ( ) )   h a c

E s t _ a b i e r t o s . b o r r a r _ p r i m e r o ( )  

E s t _ c e r r a d o s . i n s e r t a r ( A c t u a l )  

H i j o s = g e n e r a r _ s u c e s o r e s ( A c t u a l , p r o f )  

H i j o s = t r a t a r _ r e p e t i d o s ( H i j o s , E s t _ c e r r a d o s , E s t _ a b i e r t o s )  

E s t _ a b i e r t o s . i n s e r t a r ( H i j o s )  

A c t u a l = E s t _ a b i e r t o s . p r i m e r o ( )  

f m i e n t r a s  

p r o f = p r o f + 1  

E s t _ a b i e r t o s . i n c i a l i z a ( )  

f m i e n t r a s  

f A l g o r i t m o  

L a f u n c i ó n   g e n e r a r _ s u c e s o r e s   s ó l o r e t o r n a l o s n o d o s c o n u n c o s t e i n f e r i o r o i g u a l a l  

d e l a i t e r a c i ó n a c t u a l .  

E s t e a l g o r i t m o , a l n e c e s i t a r s ó l o u n a c a n t i d a d d e e s p a c i o l i n e a l , p e r m i t e h a l l a r s o l u c i o n e s  

a m á s p r o f u n d i d a d . E l p r e c i o q u e h e m o s d e p a g a r e s e l d e l a s r e e x p a n s i o n e s d e n o d o s  

y a v i s i t a d o s . E s t e p r e c i o e x t r a d e p e n d e n d e r á d e l a c o n e c t i v i d a d d e l g r a f o d e l e s p a c i o d e  

e s t a d o s , s i e x i s t e n m u c h o s c i c l o s e s t e p u e d e s e r r e l a t i v a m e n t e a l t o .  

3 . 6 . 2 . O t r a s a l t e r n a t i v a s  

L a s r e e x p a n s i o n e s d e l I D A  

∗p u e d e n l l e g a r a s e r u n p r o b l e m a , e i n c r e m e n t a r b a s t a n t e  

e l t i e m p o d e b ú s q u e d a . E s t a s r e e x p a n s i o n e s s e d e b e n f u n d a m e n t a l m e n t e a q u e e s t a m o s  

i m p o n i e n d o u n a s r e s t r i c c i o n e s d e e s p a c i o b a s t a n t e s s e v e r a s . S i r e l a j a r a m o s e s t a r e s t r i c c i ó n  

m a n t e n i é n d o l a e n l í m i t e s r a z o n a b l e s p o d r í a m o s g u a r d a r i n f o r m a c i ó n s u c i e n t e p a r a n o  

t e n e r q u e r e a l i z a r t a n t a s r e e x p a n s i o n e s .  

U n a p r i m e r a a l t e r n a t i v a e s e l a l g o r i t m o   p r i m e r o e l m e j o r r e c u r s i v o   (  r e c u r s i v e b e s t  

  r s t   ) . E l e l e m e n t o c l a v e e s l a i m p l e m e n t a c i ó n r e c u r s i v a , q u e p e r m i t e q u e e l c o s t e e s p a c i a l  

E s t e a l g o r i t m o a d m i t e v a r i a s o p t i m i z a c i o n e s , c o m o n o a u m e n t a r e l c o s t e d e u n o e n u n o , s i n o a v e r i g u a r  

c u a l e s e l c o s t e m á s p e q u e ñ o d e l o s n o d o s n o e x p a n d i d o s e n l a i t e r a c i ó n a c t u a l y u s a r l o e n l a s i g u i e n t e  

i t e r a c i ó n .  

Page 32: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 32/75

 

3 . 6 . M I M E M O R I A S E A C A B A   2 7 

s e m a n t e n g a l i n e a l (  O(rp)) a l n o t e n e r q u e g u a r d a r m a s q u e l o s n o d o s q u e p e r t e n e c e n a l  

c a m i n o a c t u a l y s u s h e r m a n o s e n c a d a n i v e l .  

E s t e a l g o r i t m o i n t e n t a a v a n z a r s i e m p r e p o r l a r a m a m á s p r o m e t e d o r a ( s e g ú n l a f u n c i ó n  

h e u r í s t i c a   f  ) h a s t a q u e a l g u n o d e l o s n o d o s a l t e r n a t i v o s d e l c a m i n o t i e n e u n c o s t e m e j o r .  

E n e s t e m o m e n t o e l c a m i n o d e l n o d o a c t u a l e s o l v i d a d o , p e r o m o d i c a n d o l a e s t i m a c i ó n  

d e l o s a s c e n d i e n t e s c o n l a d e l n o d o m a s p r o f u n d o a l q u e s e h a l l e g a d o . M a n t e n i e n d o e s t a  

i n f o r m a c i ó n s a b r e m o s s i h e m o s d e v o l v e r a r e g e n e r a r e s a r a m a o l v i d a d a s i p a s a a s e r l a d e  

m e j o r c o s t e .  

E l a l g o r i t m o e s e l s i g u i e n t e :  

A l g o r i t m o   B F S  − r e c u r s i v o ( n o d o , c _ a l t e r n a t i v o , r e f n u e v o _ c o s t e , r e f s o l u c i o n

s i  e s _ s o l u c i o n ? ( n o d o )   e n t o n c e s  

s o l u c i o n . a n a d i r ( n o d o )  

s i n o  

s u c e s o r e s = g e n e r a _ s u c e s o r e s ( n o d o )  

s i  s u c e s o r e s . v a c i o ? ( )   e n t o n c e s  

n u e v o _ c o s t e = + i n f i n i t o  

s o l u c i o n . v a c i o ( )  

s i n o  

f i n = f a l s o  

m i e n t r a s   (  n o  f i n )  h a c e r  

m e j o r = s u c e s o r e s . m e j o r _ n o d o ( )  

s i  m e j o r . c o s t e ( ) > c _ a l t e r n a t i v o   e n t o n c e s  

f i n = c i e r t o  

s o l u c i o n . v a c i o ( )  

n u e v o _ c o s t e = m e j o r . c o s t e ( )  

s i n o  

s e g u n d o = s u c e s o r e s . s e g u n d o _ m e j o r _ n o d o ( )  

B F S  − r e c u r s i v o ( m e j o r , m i n ( c _ a l t e r n a t i v o , s e g u n d o . c o s t e ( ) ) ,  

n u e v o _ c o s t e , s o l u c i o n )  

s i  s o l u c i o n . v a c i o ? ( )   e n t o n c e s  

m e j o r . c o s t e ( n u e v o _ c o s t e )  

s i n o  

s o l u c i o n . a n a d i r ( m e j o r )  

f i n = c i e r t o  

f s i 

f s i 

f m i e n t r a s  

f s i 

f s i 

f A l g o r i t m o  

E j e m p l o 3 . 3   E n l a g u r a s e p u e d e v e r c o m o e v o l u c i o n a l a b ú s q u e d a e n u n e j e m p l o s e n -  

c i l l o , e n c a d a n o d o a p a r e c e e l v a l o r d e l a f u n c i ó n   f  : 

Page 33: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 33/75

 

2 8  C A P Í T U L O 3 . B Ú S Q U E D A H E U R Í S T I C A  

18 8 12 18 8 12

11

18 8 12

11 19

17 20

2

11 1

2

3

1918 18

18 1217 18 1718 8 12

1

2 4

20 21 19

1

1119

1

2

1718 18

17

17

5

8

7

6

20

20

P o d e m o s v e r q u e c u a n d o l l e g a a l a t e r c e r a i t e r a c i ó n e l n o d o c o n m e j o r c o s t e e s e l d e  

1 2 y p o r l o t a n t o l a r e c u r s i v i d a d v u e l v e h a s t a e s e n o d o b o r r a n d o l a r a m a e x p l o r a d a , p e r o  

a c t u a l i z a n d o c a d a p a d r e c o n e l m e j o r c o s t e e n c o n t r a d o , e n e s t e c a s o 1 7 . E n l a c u a r t a  

i t e r a c i ó n s e e n c u e n t r a q u e a h o r a e s e l n o d o c o n c o s t e 1 7 e l d e m e j o r c o s t e , p o r l o q u e e l  

c a m i n o v u e l v e a r e g e n e r a r s e .  

P o r l o g e n e r a l , e l n ú m e r o d e r e e x p a n s i o n e s d e e s t e a l g o r i m o e s m e n o r q u e e l d e I D A  

∗, 

p e r o p u e d e d e p e n d e r d e l a s c a r a c t e r í s t i c a s d e l e s p a c i o d e b ú s q u e d a c o m o p o r e j e m p l o l a  

l o n g i t u d d e l o s c i c l o s q u e p u e d a h a b e r . E s t e a l g o r i t m o t a m b i é n i m p o n e u n c o s t e l i n e a l a l  

e s p a c i o , p o r l o q u e t a m b i é n s e g e n e r a n b a s t a n t e s r e e x p a n s i o n e s .  

O t r a a l t e r n a t i v a d i f e r e n t e v i e n e d e u n a m o d i c a c i ó n d e l A  

∗, e s e l a l g o r i t m o l l a m a d o  

∗c o n m e m o r i a l i m i t a d a   (  m e m o r y b o u n d A  

∗) . E s t e a l g o r i t m o u t i l i z a l a e s t r a t e g i a  

d e e x p l o r a c i ó n d e A  

∗p e r o s i g u i e n d o u n a e s t r a t e g i a d e m e m o r i z a c i ó n d e c a m i n o s p a r e c i d a  

a l  b e s t r s t r e c u r s i v o   . É s t e a l m a c e n a t o d o s l o s c a m i n o s q u e l e c a b e n e n e l t a m a ñ o d e  

m e m o r i a q u e s e i m p o n e y n o s o l o e l a c t u a l , d e m a n e r a q u e s e a h o r r a r e g e n e r a r c i e r t o s  

c a m i n o s . C u a n t a m á s m e m o r i a p e r m i t a m o s , m e n o s r e g e n e r a c i o n e s d e c a m i n o s h a r e m o s .  

E l a l g o r i t m o e l i m i n a l o s c a m i n o s p e o r e s e n e l m o m e n t o e n e l q u e y a n o c a b e n m á s ,  

g u a r d a n d o e n l o s n o d o s l a i n f o r m a c i ó n s u c i e n t e q u e l e p e r m i t a s a b e r c u a n d o s e h a n d e  

r e g e n e r a r . E l a p o r t e e x t r a d e m e m o r i a p e r m i t e r e d u c i r b a s t a n t e l a s r e e x p a n s i o n e s , c o n e l  

c o n s i g u i e n t e a h o r r o d e t i e m p o .  

E l a l g o r i t m o e s c a p a z d e h a l l a r u n a s o l u c i ó n s i e l c a m i n o c o m p l e t o c a b e e n l a c a n t i d a d d e  

Page 34: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 34/75

 

3 . 6 . M I M E M O R I A S E A C A B A   2 9 

m e m o r i a q u e h e m o s i m p u e s t o . E s t o q u i e r e d e c i r q u e s i t e n e m o s u n a i d e a a p r o x i m a d a d e l a  

l o n g i t u d d e l a s o l u c i ó n p o d e m o s a j u s t a r a p r i o r i l a c a n t i d a d d e m e m o r i a q u e p e r m i t i r e m o s  

u s a r a l a l g o r i t m o .  

Page 35: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 35/75

 

3 0  C A P Í T U L O 3 . B Ú S Q U E D A H E U R Í S T I C A  

Page 36: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 36/75

 

C a p í t u l o 4      

B ú s q u e d a l o c a l    

4 . 1 . E l t a m a ñ o i m p o r t a , a v e c e s    

L o s a l g o r i t m o s q u e h e m o s v i s t o e n e l c a p i t u l o a n t e r i o r n o s s i r v e n s i e m p r e q u e p o d a m o s  

p l a n t e a r e l p r o b l e m a c o m o l a b ú s q u e d a d e u n c a m i n o e n u n e s p a c i o d e e s t a d o s . P e r o n o s  

p o d e m o s e n c o n t r a r c o n p r o b l e m a s e n l o s q u e :  

E s t e p l a n t e a m i e n t o e s d e m a s i a d o a r t i c i a l , y a q u e n o t e n e m o s r e a l m e n t e o p e r a d o r e s  

d e c a m b i o d e e s t a d o , o n o h a y r e a l m e n t e u n a n o c i ó n d e c o s t e a s o c i a d a a l o s o p e r a d o r e s  

d e l p r o b l e m a  

L a p o s i b i l i d a d d e h a l l a r l a s o l u c i ó n ó p t i m a e s t á f u e r a d e t o d a p o s i b i l i d a d , d a d o q u e  

e l t a m a ñ o d e l e s p a c i o d e b ú s q u e d a e s d e m a s i a d o g r a n d e y n o s c o n f o r m a m o s c o n u n a  

s o l u c i ó n q u e p o d a m o s c o n s i d e r a r b u e n a .  

E n e s t e t i p o d e p r o b l e m a s p u e d e s e r r e l a t i v a m e n t e f á c i l h a l l a r u n a s o l u c i ó n i n i c i a l ,  

a u n q u e n o s e a d e m a s i a d o b u e n a . E s t o h a c e q u e n o s p o d a m o s p l a n t e a r e l p r o b l e m a c o m o  

u n a b ú s q u e d a d e n t r o d e l e s p a c i o d e s o l u c i o n e s , e n l u g a r d e e n e l d e c a m i n o s .  

E n e s t e c a s o l o q u e s u p o n e m o s e s q u e p o d e m o s n a v e g a r d e n t r o d e l e s p a c i o d e p o s i b l e s  

s o l u c i o n e s r e a l i z a n d o o p e r a c i o n e s s o b r e e l l a s q u e n o s p u e d e n a y u d a r a m e j o r a r l a s . E l c o s t e  

d e e s t a s o p e r a c i o n e s n o s e r á r e l e v a n t e y a q u e l o q u e n o s i m p o r t a e s l a c a l i d a d d e l a s o l u c i ó n  

e n e s t e c a s o l o q u e n o s i m p o r t a r á e s e s a l a c a l i d a d . D e b e r e m o s d i s p o n e r d e u n a f u n c i ó n  

q u e s e g ú n a l g ú n c r i t e r i o ( d e p e n d i e n t e d e l d o m i n i o ) n o s p e r m i t a o r d e n a r l a s .  

E l p l a n t e a m i e n t o d e l o s p r o b l e m a s e s p a r e c i d o a l q u e c o n s i d e r a m o s a l h a b l a r d e l e s p a c i o  

d e e s t a d o s , t e n e m o s l o s s i g u i e n t e s e l e m e n t o s :  

U n e s t a d o i n i c i a l , q u e e n e s t e c a s o s e r á u n a s o l u c i ó n i n i c i a l y q u e n o s p l a n t e a r á e l  

p r o b l e m a a d i c i o n a l d e c o m o h a l l a r l a c o n u n c o s t e b a j o .  

D e h e c h o m u c h a s v e c e s e s t a s o p e r a c i o n e s n o s e r e e r e n a o p e r a c i o n e s r e a l e s e n e l p r o b l e m a , s i n o a  

f o r m a s d e m a n i p u l a r l a s o l u c i ó n .  

3 1 

Page 37: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 37/75

 

3 2  C A P Í T U L O 4 . B Ú S Q U E D A L O C A L  

U n o s o p e r a d o r e s d e c a m b i o d e l a s o l u c i ó n , q u e e n e s t e c a s o m a n i p u l a r á n s o l u c i o n e s  

c o m p l e t a s y q u e n o t e n d r á n u n c o s t e a s o c i a d o .  

U n a f u n c i ó n d e c a l i d a d , q u e n o s m e d i r á l o b u e n a q u e e s u n a s o l u c i ó n y n o s p e r m i t i r á  

g u i a r l a b ú s q u e d a , p e r o t e n i e n d o e n c u e n t a q u e e s t e v a l o r n o n o s i n d i c a c u a n t o n o s  

f a l t a p a r a e n c o n t r a r l a s o l u c i ó n q u e b u s c a m o s .  

E l s a b e r c u a n d o h e m o s a c a b a d o l a b ú s q u e d a d e p e n d e r á t o t a l m e n t e d e l a l g o r i t m o , q u e  

t e n d r á q u e d e c i d i r c u a n d o y a n o e s p o s i b l e e n c o n t r a r u n a s o l u c i ó n m e j o r . P o r l o t a n t o n o  

t e n d r e m o s u n e s t a d o n a l d e n i d o .  

P a r a b u s c a r u n a a n a l o g í a c o n u n t e m a c o n o c i d o , s e p u e d e a s i m i l a r l a b ú s q u e d a l o c a l c o n  

l a b ú s q u e d a d e ó p t i m o s e n f u n c i o n e s . E n e s t e c a s o l a f u n c i ó n a o p t i m i z a r s e r á l a f u n c i ó n  

d e c a l i d a d d e l a s o l u c i ó n , l a f u n c i ó n s e d e n i r á e n e l e s p a c i o d e s o l u c i o n e s g e n e r a d o p o r l a  

c o n e c t i v i d a d q u e i n d u c e n l o s o p e r a d o r e s .  

D e s a f o r t u n a d a m e n t e , l a s f u n c i o n e s q u e a p a r e c e r á n n o t e n d r á n u n a e x p r e s i ó n a n a l í t i c a  

g l o b a l , n i t e n d r á n l a s p r o p i e d a d e s q u e n o s p e r m i t i r í a n a p l i c a r l o s a l g o r i t m o s c o n o c i d o s d e  

b ú s q u e d a d e ó p t i m o s e n f u n c i o n e s q u e c o n o c é i s .  

E l p l a n t e a m i e n t o s e r á p u e s b a s t a n t e d i f e r e n t e . Y a q u e n o t e n e m o s u n a e x p r e s i ó n a n a l í -  

t i c a g l o b a l , d e b e r e m o s e x p l o r a r l a f u n c i ó n d e c a l i d a d u t i l i z a n d o s o l a m e n t e l o q u e p o d a m o s  

o b t e n e r d e l o s v e c i n o s d e u n a s o l u c i ó n , é s t a d e b e r á p e r m i t i r d e c i d i r p o r d o n d e s e g u i r b u s -  

c a n d o e l ó p t i m o . E l n o m b r e d e b ú s q u e d a l o c a l v i e n e p r e c i s a m e n t e d e q u e s ó l o u t i l i z a m o s  

i n f o r m a c i ó n l o c a l d u r a n t e e l p r o c e s o d e h a l l a r l a m e j o r s o l u c i ó n .  

4 . 2 . T u s í , v o s o t r o s n o      

E n f r e n t a d o s a p r o b l e m a s c o n t a m a ñ o s d e e s p a c i o d e b ú s q u e d a i n a b o r d a b l e s d e m a n e r a  

e x h a u s t i v a , n o s h e m o s d e p l a n t e a r e s t r a t e g i a s d i f e r e n t e s a l a s u t i l i z a d a s h a s t a a h o r a .  

E n p r i m e r l u g a r , t e n d r e m o s p o c a s p o s i b i l i d a d e s d e g u a r d a r i n f o r m a c i ó n p a r a r e c u p e r a r  

c a m i n o s a l t e r n a t i v o s . E s t o n o s o b l i g a r á a i m p o n e r u n a s r e s t r i c c i o n e s d e e s p a c i o l i m i t a d a s ,  

l o q u e n o s l l e v a r á a t e n e r q u e d e c i d i r q u e n o d o s d e b e m o s e x p l o r a r y c u a l e s d e s c a r t a r s i n  

v o l v e r a c o n s i d e r a r l o s .  

E s t o n o s l l e v a a l a f a m i l i a d e a l g o r i t m o s c o n o c i d a c o m o d e   r a m i c a c i ó n y p o d a  

(  b r a n c h a n d b o u n d  ) . E s t a f a m i l i a d e a l g o r i t m o s l i m i t a e l n ú m e r o d e e l e m e n t o s q u e  

g u a r d a m o s c o m o p e n d i e n t e s d e e x p l o t a r o l v i d a n d o l o s q u e n o p a r e c e n p r o m e t e d o r e s . E s t o s  

a l g o r i t m o s p e r m i t e n m a n t e n e r u n a m e m o r i a l i m i t a d a , y a q u e d e s p r e c i a n p a r t e d e l e s p a c i o  

d e b ú s q u e d a , p e r o s e a r r i e s g a n a n o h a l l a r l a m e j o r s o l u c i ó n , y a q u e e s t a p u e d e e s t a r e n e l  

e s p a c i o d e b ú s q u e d a q u e n o s e e x p l o r a .  

D e e n t r e l o s a l g o r i t m o s d e   r a m i c a c i ó n y p o d a  , l o s m á s u t i l i z a d o s s o n l o s d e n o m i n a d o s d e  

a s c e n s o d e c o l i n a s   (  H i l l - c l i m b i n g   ) . E x i s t e n d i f e r e n t e s v a r i a n t e s q u e t i e n e n s u s v e n t a j a s  

e i n c o n v e n i e n t e s .  

Page 38: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 38/75

 

4 . 2 . T U S Í , V O S O T R O S N O   3 3 

P o r e j e m p l o , e l d e n o m i n a d o   a s c e n s o d e c o l i n a s s i m p l e  , q u e c o n s i s t e e n e l e g i r s i e m p r e  

e l p r i m e r o p e r a d o r q u e s u p o n g a u n a m e j o r a r e s p e c t o a l n o d o a c t u a l , d e m a n e r a q u e n o  

e x p l o r a m o s t o d a s l a s p o s i b i l i d a d e s a c c e s i b l e s , a h o r r a n d o n o s e l e x p l o r a r c i e r t o n ú m e r o d e  

d e s c e n d i e n t e s . L a v e n t a j a e s q u e e s m á s r á p i d o q u e e x p l o r a r t o d a s l a s p o s i b i l i d a d e s , l a  

d e s v e n t a j a e s q u e h a y m á s p r o b a b i l i d a d d e n o a l c a n z a r l a s s o l u c i o n e s m e j o r e s .  

E l m á s u t i l i z a d o e s e l   a s c e n s o d e c o l i n a s p o r m á x i m a p e n d i e n t e   (  s t e e p e s t a s c e n t h i l l  

c l i m b i n g   ) . E s t a v a r i a n t e e x p a n d e t o d o s l o s p o s i b l e s d e s c e n d i e n t e s d e u n n o d o y e l i g e e l  

q u e s u p o n g a l a m á x i m a m e j o r a r e s p e c t o a l n o d o a c t u a l . C o n e s t a e s t r a t e g i a s u p o n e m o s q u e  

l a m e j o r s o l u c i ó n l a e n c o n t r a r e m o s a t r a v é s d e l s u c e s o r q u e m a y o r d i f e r e n c i a t e n g a r e s p e c t o  

a l a s o l u c i ó n a c t u a l , s i g u i e n d o u n a p o l í t i c a a v a r i c i o s a . C o m o v e r e m o s m á s a d e l a n t e e s t a  

e s t r a t e g i a p u e d e s e r a r r i e s g a d a .  

E l a l g o r i t m o q u e i m p l e m e n t a e s t e ú l t i m o e s e l s i g u i e n t e :  

A l g o r i t m o   H i l l C l i m b i n g  

A c t u a l = E s t a d o _ i n i c i a l  

f i n = f a l s o  

m i e n t r a s   (  n o  f i n )   h a c e r  

H i j o s = g e n e r a r _ s u c e s o r e s ( A c t u a l )  

H i j o s = o r d e n a r _ y _ e l i m i n a r _ p e o r e s ( H i j o s , A c t u a l )  

s i  (  n o  v a c i o ? ( h i j o s ) )   e n t o n c e s   A c t u a l = E s c o g e r _ m e j o r ( H i j o s )  

s i n o   f i n = c i e r t o  

f m i e n t r a s  

f A l g o r i t m o  

E n e s t e a l g o r i t m o l a u t i l i z a c i ó n d e m e m o r i a e s n u l a , y a q u e s ó l o t e n e m o s e n c u e n t a e l  

n o d o m e j o r  

. S e p u e d e n h a c e r v e r s i o n e s q u e g u a r d e n c a m i n o s a l t e r n a t i v o s q u e p e r m i t a n  

u n a v u e l t a a t r á s e n e l c a s o d e q u e c o n s i d e r e m o s q u e l a s o l u c i ó n a l a q u e h e m o s l l e g a d o n o  

e s s u c i e n t e m e n t e b u e n a , p e r o h e m o s d e i m p o n e r c i e r t a s r e s t r i c c i o n e s d e m e m o r i a s i n o  

q u e r e m o s t e n e r u n c o s t e e s p a c i a l d e m a s i a d o g r a n d e . C o m e n t a r e m o s e s t o s a l g o r i t m o s m á s  

a d e l a n t e .  

L a e s t r a t e g i a d e e s t e a l g o r i t m o h a c e q u e l o s p r o b l e m a s q u e t i e n e , v e n g a n p r i n c i p a l m e n t e  

d e r i v a d o s p o r l a s c a r a c t e r í s t i c a s d e l a s f u n c i o n e s h e u r í s t i c a s q u e s e u t i l i z a n .  

P o r u n l a d o , h e m o s d e c o n s i d e r a r q u e e l a l g o r i t m o p a r a r á l a e x p l o r a c i ó n e n e l m o m e n t o  

e n e l q u e n o s e e n c u e n t r a n i n g ú n n o d o a c c e s i b l e m e j o r q u e e l a c t u a l . D a d o q u e n o m a n t e -  

n e m o s m e m o r i a d e l c a m i n o r e c o r r i d o n o s s e r á i m p o s i b l e r e c o n s i d e r a r n u e s t r a s d e c i s i o n e s ,  

d e m o d o q u e s i n o s h e m o s e q u i v o c a d o , l a s o l u c i ó n a l a q u e l l e g a r e m o s p u e d e q u e n o s e a l a  

ó p t i m a .  

E s t a c i r c u n s t a n c i a e s p r o b a b l e , y a q u e s e g u r a m e n t e l a f u n c i ó n h e u r í s t i c a q u e u t i l i c e m o s  

t e n d r á ó p t i m o s l o c a l e s y , d e p e n d i e n d o d e p o r d o n d e e m p e c e m o s a b u s c a r , a c a b a r e m o s  

e n c o n t r a n d o u n o u o t r o , c o m o s e p u e d e v e r e n l a s i g u i e n t e g u r a :  

H a y q u e r e c o r d a r q u e e n e s t e t i p o d e b ú s q u e d a e l c a m i n o n o n o s i m p o r t a , p o r l o q u e e l g a s t o e n e s p a c i o  

e s c o n s t a n t e .  

Page 39: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 39/75

 

3 4  C A P Í T U L O 4 . B Ú S Q U E D A L O C A L  

A B

max

max

S i i n i c i a m o s l a b ú s q u e d a d e s d e e l p u n t o A o e l B e l m á x i m o q u e a l c a n z a r e m o s s e r á  

d i f e r e n t e .  

E s t a c i r c u n s t a n c i a s e p u e d e m e j o r a r m e d i a n t e l a e j e c u c i ó n d e l a l g o r i t m o c i e r t o n ú m e -  

r o d e v e c e s d e s d e d i s t i n t o s p u n t o s e s c o g i d o s a l e a t o r i a m e n t e y q u e d á n d o n o s c o n l a m e j o r  

e x p l o r a c i ó n . M u c h a v e c e s e s t a e s t r a t e g i a e s m á s e f e c t i v a q u e m é t o d o s m á s c o m p l e j o s q u e  

v e r e m o s a c o n t i n u a c i ó n y r e s u l t a b a s t a n t e b a r a t a . L a ú n i c a c o m p l i c a c i ó n e s t á e n p o d e r  

g e n e r a r l o s d i s t i n t o s p u n t o s i n i c i a l e s d e b ú s q u e d a , y a q u e e n o c a s i o n e s e l p r o b l e m a n o  

p e r m i t e h a l l a r s o l u c i o n e s i n i c i a l e s c o n f a c i l i d a d .  

O t r o p r o b l e m a c o n e l q u e s e e n c u e n t r a n e s t o s a l g o r i t m o s s o n z o n a s d e l e s p a c i o d e b ú s -  

q u e d a e n l a s q u e l a f u n c i ó n h e u r í s t i c a n o e s i n f o r m a t i v a . U n e j e m p l o s o n l a s d e n o m i n a d a s  

m e s e t a s y l a s f u n c i o n e s e n e s c a l ó n , c o m o l a s d e l a g u r a s i g u i e n t e , e n l a s q u e l o s v a l o r e s  

d e l o s n o d o s v e c i n o s a l a c t u a l t i e n e n v a l o r e s i g u a l e s , y p o r l o t a n t o u n a e l e c c i ó n l o c a l n o  

n o s p e r m i t e d e c i d i r e l c a m i n o a s e g u i r .  

E v i t a r e s t o s p r o b l e m a s r e q u i e r e e x t e n d e r l a b ú s q u e d a a m á s a l l á d e l o s v e c i n o s i n m e d i a -  

t o s p a r a o b t e n e r l a i n f o r m a c i ó n s u c i e n t e p a r a e n c a m i n a r l a b ú s q u e d a . D e s g r a c i a d a m e n t e  

e s t o s u p o n e u n c o s t e a d i c i o n a l e n c a d a i t e r a c i ó n .  

U n a a l t e r n a t i v a e s p e r m i t i r q u e e l a l g o r i t m o g u a r d e p a r t e d e l o s n o d o s v i s i t a d o s p a r a  

p r o s e g u i r l a b ú s q u e d a p o r e l l o s e n e l c a s o d e q u e e l a l g o r i t m o s e q u e d e a t a s c a d o e n u n  

ó p t i m o l o c a l . E l a l g o r i t m o m á s u t i l i z a d o e s e l d e n o m i n a d o   b u s q u e d a e n h a c e s   (  b e a m  

s e a r c h   ) . E n e s t e a l g o r i t m o s e v a n g u a r d a n d o u n n ú m e r o   N  d e l a s m e j o r e s s o l u c i o n e s ,  

e x p a n d i e n d o s i e m p r e l a m e j o r d e e l l a s . D e e s t a m a n e r a n o s e s i g u e u n s o l o c a m i n o s i n o   N . 

L a s v a r i a n t e s d e l a l g o r i t m o e s t á n e n c ó m o s e e s c o g e n e s a s   N  s o l u c i o n e s q u e s e m a n -  

t i e n e n . S i s i e m p r e s e s u b s t i t u y e n l a s p e o r e s s o l u c i o n e s d e l a s   N  p o r l o s m e j o r e s s u c e s o r e s  

d e l n o d o a c t u a l c a e m o s e n e l p e l i g r o d e q u e t o d a s a c a b e n e s t a n d o e n e l m i s m o c a m i n o ,  

r e d u c i e n d o l a c a p a c i d a d d e v o l v e r h a c i a a t r á s , a s í q u e e l p o d e r m a n t e n e r l a v a r i e d a d d e l a s  

Page 40: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 40/75

 

4 . 3 . D E M A S I A D O C A L O R , D E M A S I A D O F R Í O   3 5 

s o l u c i o n e s g u a r d a d a s e s i m p o r t a n t e .  

E s t á c l a r o q u e c u a n t a s m a s s o l u c i o n e s g u a r d e m o s m á s p o s i b i l i d a d t e n d r e m o s d e e n -  

c o n t r a r u n a b u e n a s o l u c i ó n , p e r o t e n d r e m o s u n c o s t e a d i c i o n a l t a n t o e n m e m o r i a c o m o e n  

t i e m p o , y a q u e t e n d r e m o s q u e c a l c u l a r c o n q u e s u c e s o r e s n o s q u e d a m o s y q u e s o l u c i o n e s  

g u a r d a d a s s u b s t i t u i m o s . E l a l g o r i t m o s e r í a e l s i g u i e n t e  

A l g o r i t m o   B e a m S e a r c h  

S o l u c i o n e s _ a c t u a l e s = E s t a d o _ i n i c i a l  

f i n = f a l s o  

m i e n t r a s   (  n o  f i n )   h a c e r  

H i j o s = g e n e r a r _ s u c e s o r e s ( A c t u a l )  

H i j o s = e s c o g e r _ m e j o r e s ( H i j o s , s o l u c i o n e s _ a c t u a l e s )  

s i  a l g u n _ c a m b i o ? ( h i j o s )   e n t o n c e s  

A c t u a l = E s c o g e r _ m e j o r ( S o l u c i o n e s _ a c t u a l e s )  

s i n o   f i n = c i e r t o  

f m i e n t r a s  

f A l g o r i t m o  

E l a l g o r i t m o a c a b a c u a n d o n i n g u n o d e l o s s u c e s o r e s m e j o r a a l a s s o l u c i o n e s g u a r d a d a s ,  

e s t o q u i e r e d e c i r q u e t o d a s l a s s o l u c i o n e s s o n u n ó p t i m o l o c a l .  

4 . 3 . D e m a s i a d o c a l o r , d e m a s i a d o f r í o      

S e h a n p l a n t e a d o a l g o r i t m o s a l t e r n a t i v o s d e b ú s q u e d a l o c a l q u e s e h a n m o s t r a d o e f e c -  

t i v o s e n a l g u n o s d o m i n i o s e n l o s q u e l o s a l g o r i t m o s d e b ú s q u e d a p o r a s c e n s o s e q u e d a n  

a t a s c a d o s e n s e g u i d a e n ó p t i m o s n o d e m a s i a d o b u e n o s .  

E l p r i m e r o q u e v e r e m o s e s e l d e n o m i n a d o   t e m p l a d o s i m u l a d o   (  s i m u l a t e d a n n e a -  

l i n g   ) . E s t e a l g o r i t m o e s t á i n s p i r a d o e n u n f e n ó m e n o f í s i c o q u e s e o b s e r v a e n e l t e m p l a d o  

d e m e t a l e s y e n l a c r i s t a l i z a c i ó n d e d i s o l u c i o n e s .  

T o d o c o n j u n t o d e á t o m o s o m o l é c u l a s t i e n e u n e s t a d o d e e n e r g í a q u e d e p e n d e d e c i e r -  

t a f u n c i ó n d e l a t e m p e r a t u r a d e l s i s t e m a . A m e d i d a q u e l o v a m o s e n f r i a n d o , e l s i s t e m a  

v a p e r d i e n d o e n e r g í a h a s t a q u e s e e s t a b i l i z a . E l f e n ó m e n o f í s i c o q u e s e o b s e r v a e s q u e  

d e p e n d i e n d o d e c o m o s e r e a l i z a e l e n f r i a m i e n t o , e l e s t a d o d e e n e r g í a n a l e s m u y d i f e r e n t e .  

S i u n a b a r r a d e m e t a l s e e n f r í a d e m a s i a d o r á p i d o l a e s t r u c t u r a c r i s t a l i n a a l a q u e s e  

l l e g a a l n a l e s m u y f r á g i l y é s t a s e r o m p e c o n f a c i l i d a d . S i e l e n f r i a m i e n t o s e r e a l i z a m á s  

l e n t a m e n t e e l r e s u l t a d o n a l e s t o t a l m e n t e d i f e r e n t e o b t e n i e n d o u n a b a r r a d e g r a n d u r e z a .  

D u r a n t e e s t e e n f r i a m i e n t o c o n t r o l a d o , s e o b s e r v a q u e l a e n e r g í a d e l c o n j u n t o d e á t o m o s  

n o d i s m i n u y e d e m a n e r a c o n s t a n t e , s i n o q u e a v e c e s l a e n e r g í a t o t a l p u e d e s e r m a y o r q u e  

e n u n m o m e n t o i n m e d i a t a m e n t e a n t e r i o r . E s t a c i r c u n s t a n c i a h a c e q u e e l e s t a d o d e e n e r g í a  

n a l q u e s e a l c a n z a s e a m e j o r q u e c u a n d o e l e n f r i a m i e n t o s e h a c e r á p i d a m e n t e . A p a r t i r  

Page 41: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 41/75

 

3 6  C A P Í T U L O 4 . B Ú S Q U E D A L O C A L  

d e e s t e f e n ó m e n o f í s i c o , p o d e m o s d e r i v a r u n a l g o r i t m o q u e p e r m i t i r á e n c i e r t o s p r o b l e m a  

h a l l a r s o l u c i o n e s m e j o r e s q u e l o s a l g o r i t m o s d e b ú s q u e d a p o r a s c e n s o .  

E n e s t e a l g o r i t m o e l n o d o s i g u i e n t e a e x p l o r a r n o s e r á s i e m p r e e l m e j o r d e s c e n d i e n t e ,  

s i n o q u e l o e l e g i r e m o s a l e a t o r i a m e n t e e n f u n c i ó n d e l o s v a l o r e s d e u n o s p a r á m e t r o s e n t r e  

t o d o s l o s d e s c e n d i e n t e s ( l o s b u e n o s y l o s m a l o s ) . U n a v e n t a j a d e e s t e a l g o r i t m o e s q u e n o  

t e n e m o s p o r q u e g e n e r a r t o d o s l o s s u c e s o r e s d e u n n o d o , b a s t a e l e g i r u n s u c e s o r a l a z a r y  

d e c i d i r s i c o n t i n u a m o s p o r é l o n o . E l a l g o r i t m o d e t e m p l a d o s i m u l a d o s e p u e d e v e r c o m o  

u n a v e r s i ó n e s t o c á s t i c a d e l a l g o r i t m o d e b ú s q u e d a p o r a s c e n s o .  

E l a l g o r i t m o d e t e m p l a d o s i m u l a d o i n t e n t a t r a n s p o r t a r l a a n a l o g í a f í s i c a a l p r o b l e m a  

q u e q u e r e m o s s o l u c i o n a r . E n p r i m e r l u g a r d e n o m i n a r e m o s f u n c i ó n d e   e n e r g í a   a l a f u n c i ó n  

h e u r í s t i c a q u e n o s m i d e l a c a l i d a d d e u n a s o l u c i ó n . T e n d r e m o s u n p a r á m e t r o d e c o n t r o l  

q u e d e n o m i n a r e m o s   t e m p e r a t u r a  , q u e n o s p e r m i t i r á c o n t r o l a r e l f u n c i o n a m i e n t o d e l a l -  

g o r i t m o .  

T e n d r e m o s u n a f u n c i ó n q u e d e p e n d e r á d e l a t e m p e r a t u r a y d e l a d i f e r e n c i a d e c a l i -  

d a d e n t r e e l n o d o a c t u a l y u n s u c e s o r . É s t a g o b e r n a r á l a e l e c c i ó n d e l o s s u c e s o r e s , s u  

c o m p o r t a m i e n t o s e r á e l s i g u i e n t e :  

C u a n t a m a y o r s e a l a t e m p e r a t u r a m a s p r o b a b i l i d a d h a b r á d e q u e u n e s t a d o p e o r s e a  

e l e g i d o  

L a e l e c c i ó n d e u n e s t a d o p e o r e s t a r á e n f u n c i ó n d e s u d i f e r e n c i a d e c a l i d a d c o n e l  

e s t a d o a c t u a l , c u a n t a m a s d i f e r e n c i a , m e n o s p r o b a b i l i d a d d e e l e g i r l o .  

E l ú l t i m o e l e m e n t o e s l a   e s t r a t e g i a d e e n f r i a m i e n t o  . E l a l g o r i t m o r e a l i z a r á u n n ú -  

m e r o t o t a l d e i t e r a c i o n e s j o y c a d a c i e r t o n ú m e r o d e e l l a s e l v a l o r d e l a t e m p e r a t u r a  

d i s m i n u i r á e n c i e r t a c a n t i d a d , p a r t i e n d o d e s d e u n a   t e m p e r a t u r a i n i c i a l   y l l e g a n d o a  

c e r o e n l a ú l t i m a f a s e . D e m a n e r a q u e , l a e l e c c i ó n d e e s t o s d o s p a r á m e t r o s ( n ú m e r o t o t a l  

d e i t e r a c i o n e s y n ú m e r o d e i t e r a c i o n e s e n t r e c a d a b a j a d a d e t e m p e r a t u r a ) d e t e r m i n a r á n e l  

c o m p o r t a m i e n t o d e l a l g o r i t m o . H a b r á q u e d e c i d i r l a t e m p e r a t u r a i n i c i a l y e n q u e c a n t i d a d  

s e v a d i s m i n u y e n d o .  

C o m o e n l a a n a l o g í a f í s i c a , s i e l n ú m e r o d e p a s o s e s m u y p e q u e ñ o l a t e m p e r a t u r a b a j a r á  

m u y r á p i d a m e n t e y e l c a m i n o e x p l o r a d o s e r á r e l a t i v a m e n t e a l e a t o r i o . S i e l n ú m e r o d e p a s o s  

e s m á s g r a n d e l a b a j a d a d e t e m p e r a t u r a s e r á m á s s u a v e y l a b ú s q u e d a s e r á m e j o r .  

E l a l g o r i t m o q u e i m p l e m e n t a e s t a e s t r a t e g i a e s e l s i g u i e n t e :  

A l g o r i t m o   S i m u l a t e d A n n e a l i n g  

P a r t i m o s d e u n a t e m p e r a t u r a i n i c i a l  

m i e n t r a s   l a t e m p e r a t u r a   n o  s e a c e r o   h a c e r  

/  ∗ P a s e o a l e a t o r i o p o r e l e s p a c i o d e s o l u c i o n e s   ∗ / 

p a r a   u n n u m e r o p r e f i j a d o d e i t e r a c i o n e s   h a c e r  

E n u e v o = G e n e r a m o s _ s u c e s o r ( E a c t u a l )  

s i  F ( f ' ( E a c t u a l )  −

f ' ( E n u e v o ) , T ) > 0   e n t o n c e s   E a c t u a l = E n u e v o   f s i 

Page 42: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 42/75

 

4 . 4 . C A D A O V E J A C O N S U P A R E J A   3 7 

f p a r a  

D i s m i n u i m o s l a t e m p e r a t u r a  

f m i e n t r a s  

f A l g o r i t m o  

E s t e a l g o r i t m o s e a d a p t a m u y b i e n a p r o b l e m a s d e o p t i m i z a c i ó n c o m b i n a t o r i a ( c o n g u -  

r a c i ó n ó p t i m a d e e l e m e n t o s ) y c o n t i n u a ( p u n t o ó p t i m o e n u n e s p a c i o N - d i m e n s i o n a l ) . E s t á  

i n d i c a d o p a r a p r o b l e m a s g r a n d e s e n l o s q u e e l ó p t i m o e s t á r o d e a d o d e m u c h o s ó p t i m o s  

l o c a l e s , y a q u e a e s t e a l g o r i t m o l e s e r á m á s f á c i l e s c a p a r d e e l l o s .  

S e p u e d e u t i l i z a r t a m b i é n p a r a p r o b l e m a s e n l o s q u e e n c o n t r a r u n a h e u r í s t i c a d i s c r i -  

m i n a n t e e s d i f í c i l ( u n a e l e c c i ó n a l e a t o r i a e s t a n b u e n a c o m o o t r a c u a l q u i e r a ) , y a q u e e l  

a l g o r i t m o d e a s c e n s o d e c o l i n a s n o t e n d r á m u c h a i n f o r m a c i ó n c o n l a q u e t r a b a j a r y s e  

q u e d a r á a t a s c a d o e n s e g u i d a . E n c a m b i o e l t e m p l a d o s i m u l a d o p o d r á e x p l o r a r m á s e s p a c i o  

d e s o l u c i o n e s y t e n d r á m a y o r p r o b a b i l i d a d d e e n c o n t r a r u n a s o l u c i ó n b u e n a .  

E l m a y o r p r o b l e m a d e e s t e a l g o r i t m o s e r á d e t e r m i n a r l o s v a l o r e s d e l o s p a r á m e t r o s , y  

r e q u e r i r á u n a i m p o r t a n t e l a b o r d e e x p e r i m e n t a c i ó n q u e d e p e n d e r á d e c a d a p r o b l e m a .  

4 . 4 . C a d a o v e j a c o n s u p a r e j a      

O t r a a n a l o g í a q u e h a d a d o l u g a r u n c o n j u n t o d e a l g o r i t m o s d e b ú s q u e d a l o c a l b a s t a n t e  

e f e c t i v o s e s l a s e l e c c i ó n n a t u r a l c o m o m e c a n i s m o d e a d a p t a c i ó n d e l o s s e r e s v i v o s . E s t a  

a n a l o g í a s e j a e n q u e l o s s e r e s v i v o s s e a d a p t a n a l e n t o r n o g r a c i a s a l a s c a r a c t e r í s t i c a s  

h e r e d a d a s d e s u s p r o g e n i t o r e s , e n q u e l a s p o s i b i l i d a d e s d e s u p e r v i v e n c i a y r e p r o d u c c i ó n  

s o n p r o p o r c i o n a l e s a l a b o n d a d d e e s a s c a r a c t e r í s t i c a s y e n q u e l a c o m b i n a c i ó n d e b u e n o s  

i n d i v i d u o s p u e d e d a r l u g a r a i n d i v i d u o s m e j o r a d a p t a d o s .  

P o d e m o s t r a s l a d a r e s t o s e l e m e n t o s a l a b ú s q u e d a l o c a l i d e n t i c a n d o l a s s o l u c i o n e s c o n  

i n d i v i d u o s , d o n d e u n a f u n c i ó n d e c a l i d a d i n d i c a r á l a b o n d a d d e l a s o l u c i ó n , e s d e c i r , s u  

a d a p t a c i ó n a l a s c a r a c t e r í s t i c a s d e l p r o b l e m a . D i s p o n d r e m o s d e u n o s o p e r a d o r e s d e b ú s -  

q u e d a q u e c o m b i n a r á n b u e n a s s o l u c i o n e s c o n e l o b j e t i v o d e o b t e n e r s o l u c i o n e s m e j o r e s  

c o m o r e s u l t a d o .  

E l e j e m p l o q u e v e r e m o s d e a l g o r i t m o s q u e u t i l i z a n e s t a a n a l o g í a e s e l d e l o s   a l g o r i t m o s  

g e n é t i c o s  

. S e t r a t a d e u n a f a m i l i a b a s t a n t e a m p l i a d e a l g o r i t m o s , n o s o t r o s s ó l o v e r e m o s  

e l e s q u e m a b á s i c o .  

E s t o s a l g o r i t m o s s o n b a s t a n t e m á s c o m p l e j o s q u e l o s a l g o r i t m o s q u e h e m o s v i s t o y  

r e q u i e r e n m á s e l e m e n t o s y p a r á m e t r o s , p o r l o q u e s u u t i l i z a c i ó n r e q u i e r e c i e r t a e x p e r i e n c i a  

y m u c h a e x p e r i m e n t a c i ó n . L o s r e q u i s i t o s b á s i c o s p a r a u s a r l o s s o n :  

D a r u n a c o d i c a c i ó n a l a s c a r a c t e r í s t i c a s d e l a s s o l u c i o n e s . L a s s o l u c i o n e s s e r e p r e -  

s e n t a n d e u n a m a n e r a e s p e c i a l p a r a q u e d e s p u é s s e p u e d a n c o m b i n a r . P o r l o g e n e r a l  

E x i s t e n t a m b i é n l o s d e n o m i n a d o s a l g o r i t m o s e v o l u t i v o s , s o n m e n o s c o n o c i d o s , p e r o s u e l e n s e r b a s t a n t e  

e f e c t i v o s e n c i e r t a s a p l i c a c i o n e s .  

Page 43: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 43/75

 

3 8  C A P Í T U L O 4 . B Ú S Q U E D A L O C A L  

s e u t i l i z a n c a d e n a s b i n a r i a s q u e c o d i c a n l o s e l e m e n t o s d e l a s o l u c i ó n , p o r a n a l o g í a  

a e s t a c o d i c a c i ó n s e l a d e n o m i n a   g e n 

T e n e r u n a f u n c i ó n q u e m i d a l a c a l i d a d d e l a s o l u c i ó n . S e t r a t a r á d e l a f u n c i ó n h e u r í s -  

t i c a q u e s e u t i l i z a e n t o d o s l o s a l g o r i t m o s q u e h e m o s v i s t o . E n e l á r e a d e a l g o r i t m o s  

g e n é t i c o s a e s t a f u n c i ó n s e l a d e n o m i n a   f u n c i ó n d e a d a p t a c i ó n   (  t n e s s  ) . 

D i s p o n e r d e o p e r a d o r e s q u e c o m b i n e n l a s s o l u c i o n e s p a r a o b t e n e r n u e v a s s o l u c i o -  

n e s . L o s o p e r a d o r e s q u e u t i l i z a n l o s a l g o r i t m o s g e n é t i c o s s o n b a s t a n t e j o s y e s t á n  

i n s p i r a d o s e n l a s f o r m a s d e r e p r o d u c c i ó n c e l u l a r .  

D e c i d i r e l n ú m e r o d e i n d i v i d u o s i n i c i a l . U n a l g o r i t m o g e n é t i c o n o t r a t a u n s o l o i n d i -  

v i d u o , s i n o u n a p o b l a c i ó n , s e h a d e d e c i d i r c u a n n u m e r o s a h a d e s e r .  

D e c i d i r u n a e s t r a t e g i a p a r a h a c e r l a c o m b i n a c i ó n d e i n d i v i d u o s . S i g u i e n d o l a a n a l o g í a  

d e l a s e l e c c i ó n n a t u r a l , s ó l o s e r e p r o d u c e n l o s i n d i v i d u o s m á s a p t o s , h e m o s d e d e c i d i r  

u n c r i t e r i o p a r a e m p a r e j a r a l o s i n d i v i d u o s d e l a p o b l a c i ó n e n f u n c i ó n d e s u c a l i d a d .  

V a m o s a d e t a l l a r u n p o c o m á s c a d a u n o d e e s t o s e l e m e n t o s .  

4 . 4 . 1 . C o d i c a c i ó n  

C o m o h e m o s m e n c i o n a d o , l a f o r m a m á s h a b i t u a l d e c o d i c a r l o s i n d i v i d u o s p a r a u t i l i z a r  

u n a l g o r i t m o g e n é t i c o e s t r a n s f o r m a r l o s a u n a c a d e n a d e b i t s . C a d a b i t o g r u p o d e b i t s c o d i -  

c a r á u n a c a r a c t e r í s t i c a d e l a s o l u c i ó n . E v i d e n t e m e n t e , n o e x i s t e u n c r i t e r i o p r e e s t a b l e c i d o  

s o b r e c o m o r e a l i z a r l o .  

L a v e n t a j a d e e s t a c o d i c a c i ó n e s q u e l o s o p e r a d o r e s d e m o d i c a c i ó n d e l a s o l u c i ó n s o n  

m u y s e n c i l l o s d e i m p l e m e n t a r . E n l a s i g u i e n t e g u r a s e p u e d e v e r u n e j e m p l o d e c o d i c a c i ó n  

p a r a e l p r o b l e m a d e l a s N r e i n a s s i e n d o N i g u a l a 4 :  

3

2

1

0[00 11 10 01

[0,3,2,1]

E n l a c o d i c a c i ó n b i n a r i a s e h a a s i g n a d o u n a p a r e j a d e b i t s a c a d a u n a d e l a s r e i n a s ,  

r e p r e s e n t a n d o l a l a e n l a q u e e s t á n c o l o c a d a s y s e h a n c o n c a t e n a d o . A l t e r n a t i v a m e n t e s e  

p o d r í a u t i l i z a r u n a r e p r e s e n t a c i ó n n o b i n a r i a u t i l i z a n d o s i m p l e m e n t e e l n ú m e r o d e l a y  

h a c i e n d o u n a l i s t a c o n l o s v a l o r e s .  

E s t a n o t i e n e p o r q u e s e r s i e m p r e l a r e p r e s e n t a c i ó n m á s a d e c u a d a y d e h e c h o a v e c e s u n a r e p r e s e n t a c i ó n  

b i n a r i a h a c e q u e e l p r o b l e m a n o s e p u e d a s o l u c i o n a r e c i e n t e m e n t e .  

Page 44: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 44/75

 

4 . 4 . C A D A O V E J A C O N S U P A R E J A   3 9 

C o m o s e h a c o m e n t a d o , n o s i e m p r e l a c o d i c a c i ó n b i n a r i a e s l a m á s a d e c u a d a , y a q u e  

l a s c a r a c t e r í s t i c a s d e l p r o b l e m a p u e d e n h a c e r q u e e l c a m b i o d e r e p r e s e n t a c i ó n h a g a m á s  

c o m p l i c a d o e l p r o b l e m a .  

U n a v e n t a j a d e l a c o d i c a c i ó n b i n a r i a e s q u e n o s d a u n a a p r o x i m a c i ó n d e l t a m a ñ o  

d e l e s p a c i o d e b ú s q u e d a , y a q u e e l n ú m e r o d e s o l u c i o n e s p o s i b l e s c o r r e s p o n d e r á a l m a y o r  

n ú m e r o b i n a r i o q u e p o d a m o s r e p r e s e n t a r c o n l a c o d i c a c i ó n .  

4 . 4 . 2 . O p e r a d o r e s  

L o s o p e r a d o r e s q u e u t i l i z a n e s t o s a l g o r i t m o s p a r a l a e x p l o r a c i ó n d e l e s p a c i o d e b ú s q u e d a  

s e p u e d e n a g r u p a r e n d o s t i p o s b á s i c o s . L o s o p e r a d o r e s d e   c r u c e   (  c r o s s o v e r  ) y l o s d e  

m u t a c i ó n   (  m u t a t i o n   ) . 

L o s o p e r a d o r e s d e c r u c e s e a p l i c a n a u n a p a r e j a d e i n d i v i d u o s , s u e f e c t o c o n s i s t e e n  

i n t e r c a m b i a r p a r t e d e l a i n f o r m a c i ó n d e l a c o d i c a c i ó n e n t r e l o s i n d i v i d u o s . E x i s t e u n a  

g r a n v a r i e d a d d e f o r m a s e n l a s q u e s e p u e d e r e a l i z a r e s t e i n t e r c a m b i o . L a m á s s e n c i l l a e s l a  

d e n o m i n a d a   c r u c e p o r u n p u n t o   (  o n e p o i n t c r o s s o v e r  ) . S e a p l i c a s ó l o a c o d i c a c i o n e s  

b i n a r i a s , e s t e o p e r a d o r c o n s i s t e e n e l e g i r u n p u n t o a l a z a r e n l a c o d i c a c i ó n e i n t e r c a m b i a r  

l o s b i t s d e l o s d o s i n d i v i d u o s a p a r t i r d e e s e p u n t o . E n l a s i g u i e n t e g u r a h a y u n e j e m p l o  

d e c r u c e p o r u n p u n t o e n e l p r o b l e m a d e l a s N r e i n a s :  

000 101 010 001 100 100 010 001 100 000 011 101 000 101 100 000 011 101

O t r a v a r i a n t e m u y u t i l i z a d a e s e l   c r u c e p o r d o s p u n t o s   (  t w o p o i n t s c r o s s o v e r  ) , 

e n e l q u e e l i n t e r c a m b i o s e r e a l i z a e l i g i e n d o d o s p u n t o s e n l a c o d i c a c i ó n e i n t e r c a m b i a n d o  

l o s b i t s e n t r e e s o s d o s p u n t o s .  

A p a r t e d e e s t o s d o s o p e r a d o r e s e x i s t e n m u c h o s o t r o s q u e t i e n e n e f e c t o s e s p e c í c o s y q u e  

f u n c i o n a n m e j o r e n c i e r t a s c i r c u n s t a n c i a s . S i l a c o d i c a c i ó n n o e s b i n a r i a l o s o p e r a d o r e s s e  

h a n d e d i s e ñ a r d e m a n e r a e s p e c í c a p a r a l a r e p r e s e n t a c i ó n e s c o g i d a .  

L o s o p e r a d o r e s d e m u t a c i ó n s e a p l i c a n a u n s ó l o i n d i v i d u o y c o n s i s t e n e n c a m b i a r p a r t e  

d e l a c o d i c a c i ó n d e m a n e r a a l e a t o r i a . E l m á s s e n c i l l o e s e l e g i r u n b i t a l a z a r y c a m b i a r s u  

s i g n o .  

E s t o s o p e r a d o r e s t i e n e n u n a p r o b a b i l i d a d d e a p l i c a c i ó n a s o c i a d a q u e s e r á u n p a r á m e t r o  

d e l a l g o r i t m o . T e n d r e m o s u n a p r o b a b i l i d a d d e c r u c e q u e i n d i c a r á c u a n d o u n a p a r e j a e l e g i d a  

d e i n d i v i d u o s i n t e r c a m b i a s u i n f o r m a c i ó n y u n a p r o b a b i l i d a d d e m u t a c i ó n . P o r l o g e n e r a l l a  

Page 45: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 45/75

 

4 0  C A P Í T U L O 4 . B Ú S Q U E D A L O C A L  

p r o b a b i l i d a d d e m u t a c i ó n e s m u c h o m á s p e q u e ñ a q u e l a p r o b a b i l i d a d d e c r u c e . L a e l e c c i ó n  

d e e s t o s v a l o r e s e s c r í t i c a p a r a e l c o r r e c t o f u n c i o n a m i e n t o d e l a l g o r i t m o y m u c h a s v e c e s  

d e p e n d e d e l p r o b l e m a .  

4 . 4 . 3 . C o m b i n a c i ó n d e i n d i v i d u o s  

E s t o s a l g o r i t m o s n o t r a t a n l a s s o l u c i o n e s d e m a n e r a i n d i v i d u a l , s i n o e n g r u p o . D e n o m i -  

n a r e m o s   p o b l a c i ó n   a l c o n j u n t o d e s o l u c i o n e s q u e t e n e m o s e n u n m o m e n t o e s p e c í c o . E l  

e f e c t o d e m a n t e n e r u n c o n j u n t o d e s o l u c i o n e s a l a v e z e s h a c e r u n a e x p l o r a c i ó n e n p a r a l e l o  

d e l e s p a c i o d e b ú s q u e d a d e s d e d i f e r e n t e s p u n t o s .  

U n p a r á m e t r o m á s q u e d e b e r e m o s d e c i d i r e s e l t a m a ñ o d e l a p o b l a c i ó n d e s o l u c i o n e s .  

E s t á c l a r o q u e s i e l n ú m e r o d e i n d i v i d u o s e s d e m a s i a d o g r a n d e e l c o s t e p o r i t e r a c i ó n p u e d e  

s e r p r o h i b i t i v o , p e r o s i e l t a m a ñ o e s d e m a s i a d o p e q u e ñ o e s p o s i b l e q u e n o l l e g u e m o s a u n a  

s o l u c i ó n d e m a s i a d o b u e n a .  

C a d a i t e r a c i ó n d e u n a l g o r i t m o g e n é r i c o e s d e n o m i n a d a u n a   g e n e r a c i ó n   , a c a d a g e n e -  

r a c i ó n l o s i n d i v i d u o s s e e m p a r e j a n y d a n l u g a r a l a s i g u i e n t e g e n e r a c i ó n d e i n d i v i d u o s . E s  

c l a v e l a m a n e r a e n l a q u e d e c i d i m o s c o m o s e e m p a r e j a n l o s i n d i v i d u o s .  

L a f o r m a h a b i t u a l d e p a s a r d e u n a g e n e r a c i ó n a o t r a , e s c r e a r l o q u e s e d e n o m i n a u n a  

g e n e r a c i ó n i n t e r m e d i a   q u e e s t a r á c o m p u e s t a p o r l a s p a r e j a s q u e s e v a n a c o m b i n a r . E l  

n ú m e r o d e i n d i v i d u o s d e e s t a p o b l a c i ó n e s i g u a l a l d e l t a m a ñ o o r i g i n a l d e l a p o b l a c i ó n . L a  

e l e c c i ó n d e l o s i n d i v i d u o s q u e f o r m a n p a r t e d e e s t a g e n e r a c i ó n i n t e r m e d i a s e p u e d e h a c e r  

d e m u c h a s m a n e r a s , p o r e j e m p l o :  

E s c o g e r u n i n d i v i d u o d e m a n e r a p r o p o r c i o n a l a s u v a l o r d e e v a l u a c i ó n d e l a f u n c i ó n  

d e t n e s s , d e m a n e r a q u e l o s i n d i v i d u o s m e j o r e s t e n d r á n m á s p r o b a b i l i d a d d e s e r  

e l e g i d o s . E s t o p u e d e t e n e r e l p e l i g r o d e q u e u n o s p o c o s i n d i v i d u o s p u e d e n s e r e l e g i d o s  

m u c h a s v e c e s .  

S e e s t a b l e c e n N t o r n e o s e n t r e p a r e j a s d e i n d i v i d u o s e s c o g i d a s a l a z a r , e l g a n a d o r d e  

c a d a e m p a r e j a m i e n t o e s e l i n d i v i d u o c o n m e j o r v a l o r e n l a f u n c i o n d e t n e s s . E s t a  

o p c i ó n e q u i l i b r a m e j o r l a a p a r i c i ó n d e l o s m e j o r e s i n d i v i d u o s .  

S e d e n e u n r a n k i n g l i n e a l e n t r e i n d i v i d u o s s e g ú n s u f u n c i ó n d e c a l i d a d , e s t a b l e c i e n d o  

u n m a x i m o d e p o s i b l e s a p a r i c i o n e s d e u n i n d i v i d u o , d e e s t a m a n e r a q u e l a p r o b a b i -  

l i d a d d e a p a r i c i ó n d e l o s i n d i v i d u o s n o e s t é s e s g a d a p o r l o s i n d i v i d u o s m e j o r e s .  

C o n e s t o s m e c a n i s m o s d e e l e c c i ó n h a b r á i n d i v i d u o s q u e a p a r e z c a n m á s d e u n a v e z e  

i n d i v i d u o s q u e n o a p a r e z c a n  

. C a d a m e c a n i s m o d e s e l e c c i ó n d e i n d i v i d u o s t i e n e s u s v e n t a j a s  

e i n c o n v e n i e n t e s . E l p r i m e r o e s e l m á s s i m p l e , p e r o c o r r e e l p e l i g r o d e d e g e n e r a r e n p o c a s  

E s t o r e e j a l o q u e s u c e d e e n l a s e l e c c i ó n n a t u r a l , l o s m á s a p t o s t i e n e n u n a m a y o r p r o b a b i l i d a d d e  

t e n e r d e s c e n d e n c i a y l o s m e n o s a p t o s p u e d e n n o l l e g a r a r e p r o d u c i r s e .  

Page 46: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 46/75

 

4 . 4 . C A D A O V E J A C O N S U P A R E J A   4 1 

g e n e r a c i o n e s a u n a p o b l a c i ó n h o m o g é n e a , a c a b a n d o e n u n ó p t i m o l o c a l . L o s o t r o s d o s s o n  

a l g o m á s c o m p l e j o s , p e r o a s e g u r a n c i e r t a d i v e r s i d a d d e i n d i v i d u o s e n l a p o b l a c i ó n . S e h a  

v i s t o e x p e r i m e n t a l m e n t e q u e e l a s e g u r a r l a v a r i e d a d e n l a p o b l a c i ó n p e r m i t e e n c o n t r a r  

m e j o r e s s o l u c i o n e s  

4 . 4 . 4 . E l a l g o r i t m o g e n é t i c o c a n ó n i c o  

E x i s t e u n a g r a n v a r i e d a d d e a l g o r i t m o s g e n é t i c o s , p e r o t o d o s p a r t e n d e u n f u n c i o n a -  

m i e n t o b á s i c o q u e l l a m a r e m o s e l  a l g o r i t m o g e n é t i c o c a n ó n i c o  , l o s p a s o s q u e r e a l i z a e s t e  

a l g o r i t m o b á s i c o s o n e s t o s :  

1 . S e p a r t e d e u n a p o b l a c i ó n d e N i n d i v i d u o s g e n e r a d a a l e a t o r i a m e n t e  

2 . S e e s c o g e n N i n d i v i d u o s d e l a g e n e r a c i ó n a c t u a l p a r a l a g e n e r a c i ó n i n t e r m e d i a ( s e g ú n  

e l c r i t e r i o e s c o g i d o )  

3 . S e e m p a r e j a n l o s i n d i v i d u o s y p a r a c a d a p a r e j a  

a  ) C o n u n a p r o b a b i l i d a d   P cruce s e a p l i c a e l o p e r a d o r d e c r u c e a c a d a p a r e j a d e i n -  

d i v i d u o s y s e o b t i e n e n d o s n u e v o s i n d i v i d u o s q u e p a s a r á n a l a n u e v a g e n e r a c i ó n ,  

c o n u n a p r o b a b i l i d a d   1 − P cruce s e m a n t i e n e n l a p a r e j a o r i g i n a l e n l a s i g u i e n t e  

g e n e r a c i ó n  

b  ) C o n u n a p r o b a b i l i d a d   P mutacion s e m u t a n l o s i n d i v i d u o s c r u z a d o s  

4 . S e s u b s t i t u y e l a p o b l a c i ó n a c t u a l c o n l o s n u e v o s i n d i v i d u o s , q u e f o r m a n l a n u e v a  

g e n e r a c i ó n  

5 . S e i t e r a d e s d e e l s e g u n d o p a s o h a s t a q u e l a p o b l a c i ó n c o n v e r g e ( l a f u n c i ó n d e t n e s s  

d e l a p o b l a c i ó n n o m e j o r a ) o p a s a u n n ú m e r o e s p e c í c o d e g e n e r a c i o n e s  

L a p r o b a b i l i d a d d e c r u c e i n u i r á e n l a v a r i e d a d d e l a n u e v a g e n e r a c i ó n , c u a n t o m á s b a j a  

s e a , m á s p a r e c i d a s e r á a l a g e n e r a c i ó n a n t e r i o r y h a r á n f a l t a m á s i t e r a c i o n e s p a r a c o n v e r g e r .  

S i é s t a e s m u y a l t a c a d a g e n e r a c i ó n s e r á m u y d i f e r e n t e , p o r l o q u e p u e d e d e g e n e r a r e n u n a  

b ú s q u e d a a l e a t o r i a .  

L a m u t a c i ó n e s u n m e c a n i s m o p a r a f o r z a r l a v a r i e d a d e n l a p o b l a c i ó n , p e r o u n a p r o b a -  

b i l i d a d d e m u t a c i ó n d e m a s i a d o a l t a p u e d e d i c u l t a r l a c o n v e r g e n c i a .  

T a m b i é n e s a l g o q u e s e o b s e r v a e n l a n a t u r a l e z a , l a s p o b l a c i o n e s a i s l a d a s o l a s e s p e c i e s m u y e s p e c i a l i -  

z a d a s t i e n e n u n p o b r e a c e r v o g e n é t i c o y n o p u e d e n a d a p t a r s e a c a m b i o s e n s u e n t o r n o .  

Page 47: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 47/75

 

4 2  C A P Í T U L O 4 . B Ú S Q U E D A L O C A L  

4 . 4 . 5 . C u a n d o u s a r l o s  

L o s a l g o r i t m o s g e n é t i c o s h a n d e m o s t r a d o s u e c a c i a e n m ú l t i p l e s a p l i c a c i o n e s , p e r o  

e s d i f í c i l d e c i r s i s e r á n e f e c t i v o s o n o e n u n a a p l i c a c i ó n c o n c r e t a . P o r l o g e n e r a l s u e l e n  

f u n c i o n a r m e j o r q u e l o s a l g o r i t m o s d e b ú s q u e d a p o r a s c e n s o c u a n d o n o s e t i e n e u n a b u e n a  

f u n c i ó n h e u r í s t i c a p a r a g u i a r e l p r o c e s o . P e r o s i s e d i s p o n e d e u n a b u e n a h e u r í s t i c a , e s t o s  

a l g o r i t m o s n o n o s o b t e n d r á n m e j o r e s r e s u l t a d o s y e l c o s t e d e c o n g u r a r l o s a d e c u a d a m e n t e  

n o h a r á n r e n t a b l e s u u s o .  

S u s m a y o r i n c o n v e n i e n t e e s l a g r a n c a n t i d a d d e e l e m e n t o s q u e h e m o s d e a j u s t a r p a r a  

p o d e r a p l i c a r l o s , l a c o d i c a c i ó n d e l p r o b l e m a , e l t a m a ñ o d e l a p o b l a c i ó n , l a e l e c c i ó n d e  

l o s o p e r a d o r e s , l a s p r o b a b i l i d a d e s d e c r u c e y m u t a c i ó n , l a f o r m a d e c o n s t r u i r l a s i g u i e n t e  

g e n e r a c i ó n , . . . S i e m p r e n o s e n c o n t r a r e m o s c o n l a d u d a d e s i e l a l g o r i t m o n o f u n c i o n a  

p o r q u e e l p r o b l e m a n o s e a d a p t a a l f u n c i o n a m i e n t o d e e s t o s a l g o r i t m o s , o e s q u e n o h e m o s  

e n c o n t r a d o l o s p a r á m e t r o s a d e c u a d o s p a r a h a c e r q u e f u n c i o n e n b i e n .  

Page 48: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 48/75

 

C a p í t u l o 5    

B ú s q u e d a c o n a d v e r s a r i o      

5 . 1 . T ú c o n t r a m i o y o c o n t r a t i    

H a s t a a h o r a h a b í a m o s s u p u e s t o p r o b l e m a s e n l o s q u e u n s o l o   a g e n t e   i n t e n t a o b t e n e r  

u n o b j e t i v o , e n n u e s t r o c a s o l a r e s o l u c i ó n d e u n p r o b l e m a . P e r o e x i s t e n c a s o s e n l o s q u e  

d i f e r e n t e s a g e n t e s c o m p i t e n p o r u n o b j e t i v o q u e s o l a m e n t e u n o d e e l l o s p u e d e a l c a n z a r .  

E s t e t i p o d e p r o b l e m a s l o s e n g l o b a r e m o s d e n t r o d e l a c a t e g o r í a d e j u e g o s  

. N o v e r e m o s  

a l g o r i t m o s p a r a c u a l q u i e r t i p o d e j u e g o , s i n o q u e n o s r e s t r i n g i r e m o s a l o s q u e c u m p l e n u n  

c o n j u n t o d e p r o p i e d a d e s :  

S o n b i p e r s o n a l e s , e s d e c i r , s ó l o h a y d o s a g e n t e s i n v o l u c r a d o s , y e s t o s j u e g a n a l t e r n a -  

t i v a m e n t e .  

T o d o s l o s p a r t i c i p a n t e s t i e n e n c o n o c i m i e n t o p e r f e c t o , n o h a y o c u l t a c i ó n d e i n f o r m a -  

c i ó n p o r p a r t e d e n i n g u n o d e e l l o s .  

E l j u e g o e s d e t e r m i n i s t a , n o i n t e r v i e n e e l a z a r e n n i n g u n o d e s u s e l e m e n t o s .  

L o s e l e m e n t o s q u e i n t e r v i e n e n e n e s t e t i p o d e p r o b l e m a s s e p u e d e n r e p r e s e n t a r d e  

m a n e r a p a r e c i d a a l a b ú s q u e d a e n e s p a c i o d e e s t a d o s , t e n d r e m o s :  

U n e s t a d o , q u e i n d i c a l a s c a r a c t e r í s t i c a s d e l j u e g o e n u n i n s t a n t e e s p e c í c o  

U n e s t a d o i n i c i a l , q u e d e t e r m i n a r á d e s d e d o n d e s e e m p i e z a a j u g a r y q u i é n i n i c i a e l  

 j u e g o  

U n e s t a d o n a l , o u n a s c a r a c t e r í s t i c a s q u e d e b e c u m p l i r , q u e d e t e r m i n a r á n q u i é n e s  

e l g a n a d o r  

L a c o m p e t i c i ó n n o s o l a m e n t e a p a r e c e e n e l c a s o d e l o s j u e g o s , p e r o l o s a l g o r i t m o s q u e v e r e m o s t a m b i é n  

s o n a p l i c a b l e s .  

4 3 

Page 49: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 49/75

 

4 4  C A P Í T U L O 5 . B Ú S Q U E D A C O N A D V E R S A R I O  

U n o s o p e r a d o r e s d e t r a n s f o r m a c i ó n d e e s t a d o q u e d e t e r m i n a r á n l a s j u g a d a s q u e p u e d e  

h a c e r u n a g e n t e d e s d e e l e s t a d o a c t u a l . S u p o n d r e m o s q u e l o s d o s j u g a d o r e s d i s p o n e n  

d e l o s m i s m o s o p e r a d o r e s  

I d e n t i c a r e m o s a c a d a j u g a d o r c o m o e l j u g a d o r   M A X  y e l j u g a d o r   M I N  . M A X s e r á  

e l j u g a d o r q u e i n i c i a e l j u e g o , n o s m a r c a r e m o s c o m o o b j e t i v o e l e n c o n t r a r e l c o n j u n t o  

d e m o v i m i e n t o s q u e h a d e h a c e r e l j u g a d o r M A X p a r a q u e l l e g u e a l o b j e t i v o ( g a n a r )  

i n d e p e n d i e n t e m e n t e d e l o q u e h a g a e l j u g a d o r M I N  

S e p u e d e o b s e r v a r q u e e s t e e s c e n a r i o e s b a s t a n t e d i f e r e n t e d e l q u e s e p l a n t e a n l o s  

a l g o r i t m o s d e l o s c a p i t u l o s a n t e r i o r e s . N o s v e r e m o s o b l i g a d o s a r e v i s a r e l c o n c e p t o d e  

s o l u c i ó n y d e ó p t i m o . D e h e c h o e s t a m o s p a s a n d o d e u n e s c e n a r i o e n e l q u e p o s e e m o s t o d o  

e l c o n o c i m i e n t o n e c e s a r i o p a r a r e s o l v e r u n p r o b l e m a d e s d e e l p r i n c i p i o h a s t a e l n s i n  

t e n e r q u e o b s e r v a r l a r e a c c i ó n d e l e n t o r n o , a u n e s c e n a r i o d o n d e n u e s t r a s d e c i s i o n e s s e v e n  

i n u i d a s p o r e l e n t o r n o . E n l o s a l g o r i t m o s q u e v e r e m o s s u p o n d r e m o s q u e p o d e m o s p r e v e r  

h a s t a c i e r t o p u n t o c o m o r e a c c i o n a r á e s e e n t o r n o , p e r o e v i d e n t e m e n t e n o s i e m p r e t e n d r á  

p o r q u e s e r e s e e l c a s o .  

5 . 2 . U n a a p r o x i m a c i ó n t r i v i a l    

P a r a p o d e r o b t e n e r e l c a m i n o q u e p e r m i t e a M A X l l e g a r a u n e s t a d o g a n a d o r , n o  

t e n e m o s m á s q u e e x p l o r a r t o d a s l a s p o s i b l e s j u g a d a s q u e p u e d e h a c e r c a d a j u g a d o r , h a s t a  

e n c o n t r a r u n c a m i n o q u e l l e v e a u n e s t a d o n a l . P a r a p o d e r o b t e n e r l o p o d e m o s u t i l i z a r u n  

a l g o r i t m o d e b ú s q u e d a e n p r o f u n d i d a d q u e e x p l o r e e x h a u s t i v a m e n t e t o d a s l a s p o s i b i l i d a d e s .  

E l a l g o r i t m o e x p l o r a r á h a s t a l l e g a r a u n a s o l u c i ó n e v a l u á n d o l a a + 1 s i e s u n e s t a d o e n  

e l q u e g a n a M A X o a - 1 s i e s u n e s t a d o e n e l q u e g a n a M I N , e s t e v a l o r s e p r o p a g a r á h a s t a  

e l n i v e l s u p e r i o r . A m e d i d a q u e s e a c a b e n d e e x p l o r a r l o s d e s c e n d i e n t e s d e u n n i v e l e l v a l o r  

r e s u l t a n t e d e s u e x p l o r a c i ó n s e s e g u i r á p r o p a g a n d o a l o s n i v e l e s s u p e r i o r e s .  

C a d a n i v e l e l e g i r á e l v a l o r q u e p r o p a g a a s u a s c e n d i e n t e d e p e n d i e n d o d e s i c o r r e s p o n d e  

a u n n i v e l d e l j u g a d o r M A X o d e l j u g a d o r M I N . E n l o s n i v e l e s d e M A X s e e l e g i r á e l  

v a l o r m a y o r d e t o d o s l o s d e s c e n d i e n t e s , e n l o s n i v e l e s d e M I N s e e l e g i r á e l m í n i m o . E n e l  

m o m e n t o e n e l q u e s e p r o p a g u e u n + 1 a l a r a í z s i g n i c a r á q u e h e m o s e n c o n t r a d o e l c a m i n o  

q u e p e r m i t e g a n a r a M A X i n d e p e n d i e n t e m e n t e d e l a s j u g a d a s d e M I N . E n e s t e m o m e n t o  

p o d e m o s p a r a r l a e x p l o r a c i ó n y a q u e h e m o s c u b i e r t o s u o b j e t i v o , e n c o n t r a r u n a s e c u e n c i a  

d e p a s o s g a n a d o r a .  

E n l a s i g u i e n t e g u r a p o d e m o s v e r e l e s p a c i o d e b ú s q u e d a q u e g e n e r a r í a u n j u e g o  

h i p o t é t i c o ( l o s c u a d r a d o s c o r r e s p o n d e n a n i v e l e s d e M A X y l o s c í r c u l o s a n i v e l e s d e M I N ) ,  

s e h a n m a r c a d o c o n   +1 l a s j u g a d a s e n l a s q u e g a n a e l j u g a d o r M A X y c o n   −1 l a s j u g a d a s  

e n l a q u e g a n a e l j u g a d o r M I N :  

N o e s q u e n o s c a i g a m a l e l j u g a d o r M I N , l o q u e p a s a e s q u e l o s a l g o r i t m o s s e r á n l o s m i s m o s p a r a l o s  

d o s , y a q u e d e s d e l a p e r s p e c t i v a d e M I N , é l e s M A X y s u o p o n e n t e e s M I N .  

Page 50: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 50/75

 

5 . 2 . U N A A P R O X I M A C I Ó N T R I V I A L   4 5 

+1

−1

+1

+1

+1

−1 −1

S i h a c e m o s e l r e c o r r i d o e n p r o f u n d i d a d p r o p a g a n d o l o s v a l o r e s d e l a s j u g a d a s t e r m i n a l e s  

t e n d r í a m o s e l s i g u i e n t e r e s u l t a d o :  

+1

−1

+1

+1

+1

−1 −1

+1

+1

−1

−1

−1

−1

−1 +1

+1

+1−1

−1

−1

−1

−1

+1

P o d e m o s v e r m a r c a d o e l c a m i n o q u e p e r m i t e g a n a r a M A X .  

D e s g r a c i a d a m e n t e e s t e a l g o r i t m o s ó l o l o p o d e m o s a p l i c a r a j u e g o s t r i v i a l e s , y a q u e e l  

t i e m p o q u e n e c e s i t a r i a m o s p a r a h a c e r l a e x p l o r a c i ó n c o m p l e t a s e r í a e x p o n e n c i a l r e s p e c t o  

a l n ú m e r o d e p o s i b l e s j u g a d a s e n c a d a n i v e l (  r ) y l a p r o f u n d i d a d d e l a s o l u c i ó n (  p) (  O(r p ) ) . 

E n c u a l q u i e r j u e g o r e a l e s t e v a l o r e s u n a c i f r a a s t r o n ó m i c a .  

Page 51: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 51/75

 

4 6  C A P Í T U L O 5 . B Ú S Q U E D A C O N A D V E R S A R I O  

5 . 3 . S e a m o s u n p o c o m á s i n t e l i g e n t e s    

E s e v i d e n t e q u e n o p o d e m o s e x p l o r a r t o d o e l e s p a c i o d e b ú s q u e d a p a r a o b t e n e r e l m e j o r  

c o n j u n t o d e j u g a d a s , a s í q u e d e b e m o s d e e c h a r m a n o d e l c o n o c i m i e n t o q u e t e n e m o s d e l  

 j u e g o p a r a r e d u c i r l a e x p l o r a c i ó n . T e n d r e m o s q u e i n t r o d u c i r u n a f u n c i ó n h e u r í s t i c a q u e  

e n e s t e c a s o n o m e d i r á l a b o n d a d d e u n e s t a d o r e s p e c t o a s u d i s t a n c i a h a s t a u n a j u g a d a  

g a n a d o r a .  

L a l o s o f í a d e e s t a f u n c i ó n h e u r í s t i c a e s d i f e r e n t e d e l a s q u e h e m o s v i s t o h a s t a a h o r a , y a  

q u e n o e x i s t e n i n g u n a n o c i ó n d e c o s t e , n i t a m p o c o d e o p t i m a l i d a d , p u e s t o d a s l a s j u g a d a s  

g a n a d o r a s s o n i g u a l d e b u e n a s . E s t o h a r á q u e c o n s t r u i r e s t a f u n c i ó n s e a t o d a v í a m a s d i f í c i l  

q u e e n l a s o c a s i o n e s a n t e r i o r e s , h a b r á q u e d e t e r m i n a r c u á l e s l a v e n t a j a d e c a d a j u g a d o r e n  

c a d a e s t a d o  

y e s t o p u e d e s e r b a s t a n t e d i f í c i l d e d e t e r m i n a r . T a m b i é n h e m o s d e t e n e r e n  

c u e n t a q u e e l c o s t e d e c a l c u l a r l a f u n c i ó n h e u r í s t i c a i n u i r á e n e l c o s t e d e l a e x p l o r a c i ó n .  

E n e s t e c a s o , e s t a f u n c i ó n n o s p o d r á d a r v a l o r e s p o s i t i v o s y n e g a t i v o s . C o n s i d e r a r e m o s  

q u e s i e l v a l o r e s p o s i t i v o l a j u g a d a e s v e n t a j o s a p a r a e l j u g a d o r M A X , y s i e s n e g a t i v o l a  

v e n t a j a e s p a r a M I N . P o r c o n v e n i o , l a s j u g a d a s g a n a d o r a s d e M A X t i e n e n u n v a l o r d e   +∞y l a s g a n a d o r a s d e M I N d e  

−∞. 

A d e m á s d e u t i l i z a r u n a f u n c i ó n h e u r í s t i c a p a r a g u i a r l a b ú s q u e d a , u s a r e m o s u n a e s -  

t r a t e g i a d i s t i n t a p a r a e x p l o r a r e l c o n j u n t o d e j u g a d a s . Y a q u e e s i m p o s i b l e h a c e r u n a  

e x p l o r a c i ó n e x h a u s t i v a , h a r e m o s u n a b ú s q u e d a e n p r o f u n d i d a d l i m i t a d a , e s t o l i m i t a r á l o  

q u e p o d r e m o s v e r d e l e s p a c i o d e b ú s q u e d a .  

D e c i d i r e m o s u n n i v e l d e p r o f u n d i d a d m á x i m o p a r a l a b ú s q u e d a , e v a l u a r e m o s l o s e s t a d o s  

q u e e s t á n e n e s e n i v e l y a v e r i g u a r e m o s c u á l e s l a m e j o r j u g a d a a l a q u e p o d e m o s a c c e d e r  

d e s d e e l e s t a d o a c t u a l . H a y q u e t e n e r c l a r o q u e c o n e s t e p r o c e d i m i e n t o s ó l o d e c i d i m o s u n a  

 j u g a d a , y q u e r e p e t i m o s l a b ú s q u e d a e n c a d a m o v i m i e n t o q u e t e n e m o s q u e d e c i d i r . A p e s a r  

d e q u e r e p i t a m o s l a b ú s q u e d a a c a d a p a s o , e l n ú m e r o d e n o d o s e x p l o r a d o s e s m u c h o m e n o r  

q u e s i e x p l o r á r a m o s t o d o e l á r b o l d e b ú s q u e d a c o m p l e t o .  

L a c a l i d a d d e l j u e g o v e n d r á d e t e r m i n a d a p o r l a p r o f u n d i d a d a l a q u e l l e g a m o s e n c a d a  

e x p l o r a c i ó n . C u a n t o m á s p r o f u n d a s e a l a e x p l o r a c i ó n m e j o r j u g a r e m o s , y a q u e v e r e m o s  

m á s p o r c i ó n d e l e s p a c i o d e b ú s q u e d a . E v i d e n t e m e n t e , c u a n t o m á s e x p l o r e m o s , m á s c o s t e  

t e n d r á l a b ú s q u e d a .  

E l a l g o r i t m o q u e r e a l i z a e s t a e x p l o r a c i ó n r e c i b e e l n o m b r e d e   m i n i m a x  

y e s u n r e c o -  

r r i d o e n p r o f u n d i d a d r e c u r s i v o . E l q u e s e a u n r e c o r r i d o e n p r o f u n d i d a d h a c e q u e e l c o s t e  

e s p a c i a l s e a l i n e a l , p e r o e v i d e n t e m e n t e e l c o s t e t e m p o r a l s e r á e x p o n e n c i a l ( d e p e n d e r á d e  

l a p r o f u n d i d a d m á x i m a d e e x p l o r a c i ó n ) . E l a l g o r i t m o e s e l s i g u i e n t e :  

f u n c i o n   M i n i M a x ( g )   r e t o r n a   m o v i m i e n t o  

m o v r : m o v i m i e n t o ;  

N ó t e s e q u e l a f u n c i ó n h e u r í s t i c a n o s ó l o e v a l ú a l o s e s t a d o s n a l e s .  

E l n o m b r e m i n i m a x p r o v i e n e d e l t e o r e m a d e l M i n i m a x d e l á r e a d e t e o r í a d e j u e g o s e n u n c i a d o p o r J o h n  

v o n N e u m a n n e n 1 9 2 8 .  

Page 52: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 52/75

 

5 . 3 . S E A M O S U N P O C O M Á S I N T E L I G E N T E S   4 7 

m a x , m a x c : e n t e r o  

m a x =  − i n f i n i t o  

p a r a c a d a   m o v  e n  m o v s _ p o s i b l e s ( g )   h a c e r  

c m a x = v a l o r M i n ( a p l i c a r ( m o v , g ) )  

s i  c m a x > m a x   e n t o n c e s  

m a x = c m a x  

m o v r = m o v  

f s i 

f p a r a  

r e t o r n a   ( m o v r )  

f f u n c i o n  

f u n c i o n   v a l o r M a x ( g )   r e t o r n a   e n t e r o  

v m a x : e n t e r o  

s i  e s t a d o _ t e r m i n a l ( g )   e n t o n c e s  

r e t o r n a   ( e v a l u a c i o n ( g ) )  

s i n o  

v m a x =  −

i n f i n i t o  

p a r a c a d a   m o v  e n  m o v s _ p o s i b l e s ( g )   h a c e r  

v m a x = m a x ( v m a x , v a l o r M i n ( a p l i c a r ( m o v , g ) )  

f p a r a  

r e t o r n a   ( v m a x )  

f s i 

f f u n c i o n  

f u n c i o n   v a l o r M i n ( g )   r e t o r n a   e n t e r o  

v m i n : e n t e r o  

s i  e s t a d o _ t e r m i n a l ( g )   e n t o n c e s  

r e t o r n a   ( e v a l u a c i o n ( g ) )  

s i n o  

v m i n = + i n f i n i t o  

p a r a c a d a   m o v  e n  m o v s _ p o s i b l e s ( g )   h a c e r  

v m i n = m i n ( v m i n , v a l o r M a x ( a p l i c a r ( m o v , g ) )  

f p a r a  

r e t o r n a   ( v m i n )  

f s i 

f f u n c i o n  

E l a l g o r i t m o t i e n e u n a f u n c i ó n p r i n c i p a l (  M i n i M a x  ) q u e e s l a q u e r e t o r n a l a m e j o r  

 j u g a d a q u e s e p u e d e r e a l i z a r , y d o s f u n c i o n e s r e c u r s i v a s m u t u a s (  v a l o r M a x   y  v a l o r M i n   ) 

q u e d e t e r m i n a n e l v a l o r d e l a s j u g a d a s d e p e n d i e n d o d e s i e l n i v e l e s d e M A X o d e M I N .  

L a f u n c i ó n   e s t a d o _ t e r m i n a l ( g )   d e t e r m i n a s i e l e s t a d o a c t u a l e s u n a s o l u c i ó n o p e r t e n e c e  

a l n i v e l m á x i m o d e e x p l o r a c i ó n . L a f u n c i ó n   e v a l u a c i o n ( g )   c a l c u l a e l v a l o r d e l a f u n c i ó n  

Page 53: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 53/75

 

4 8  C A P Í T U L O 5 . B Ú S Q U E D A C O N A D V E R S A R I O  

h e u r í s t i c a p a r a e l e s t a d o a c t u a l .  

5 . 4 . S e a m o s a ú n m á s i n t e l i g e n t e s    

U n p u n t o c l a v e q u e h e m o s d e t e n e r e n c u e n t a e s q u e c u a n t o m á s p r o f u n d a s e a l a  

e x p l o r a c i ó n , m e j o r p o d r e m o s t o m a r l a d e c i s i ó n s o b r e q u é j u g a d a d e b e m o s e s c o g e r . P a r a  

 j u e g o s e n l o s q u e e l f a c t o r d e r a m i c a c i ó n s e a m u y g r a n d e , e s t a p r o f u n d i d a d n o p o d r á s e r  

m u y g r a n d e , y a q u e e l t i e m p o q u e n e c e s i t a r e m o s p a r a c a d a d e c i s i ó n s e r á p r o h i b i t i v o .  

P a r a r e d u c i r e s t e t i e m p o d e e x p l o r a c i ó n s e h a n e s t u d i a d o l a s p r o p i e d a d e s q u e t i e n e n  

e s t o s á r b o l e s d e b ú s q u e d a y s e h a n d e s a r r o l l a d o h e u r í s t i c a s q u e p e r m i t e n n o e x p l o r a r l o s e n  

s u t o t a l i d a d y o b t e n e r e l m i s m o r e s u l t a d o q u e o b t e n d r í a m o s c o n l a e x p l o r a c i ó n c o m p l e t a .  

L a h e u r í s t i c a q u e v e r e m o s s e d e n o m i n a   p o d a a l f a - b e t a   ( 

αβ p r u n i n g   ) . E s t a h e u r í s t i c a  

a p r o v e c h a q u e e l a l g o r i t m o d e l m i n i m a x h a c e u n a e x p l o r a c i ó n e n p r o f u n d i d a d p a r a g u a r d a r  

i n f o r m a c i ó n s o b r e c u á l e s e l v a l o r d e l a s m e j o r e s j u g a d a s e n c o n t r a d a s h a s t a c i e r t o p u n t o  

d e l a b ú s q u e d a p a r a e l j u g a d o r M A X y p a r a e l j u g a d o r M I N .  

L o q u e h a c e e s t a h e u r í s t i c a e s e v i t a r s e g u i r e x p l o r a n d o n o d o s q u e s a b e m o s q u e n o v a n  

a v a r i a r l a d e c i s i ó n q u e s e v a a t o m a r e n n i v e l e s s u p e r i o r e s , e l i m i n á n d o l o s d e l a b ú s q u e d a  

y a h o r r a n d o t i e m p o .  

P o d e m o s v e r p o r e j e m p l o e l s i g u i e n t e á r b o l d e e x p l o r a c i ó n :  

12

8

8

6 7

8 16 6 9 13 10 9 7

P o d e m o s v e r q u e e l v a l o r q u e p r o p a g a r í a e l a l g o r i t m o d e l m i n i m a x a n o d o r a í z s e r í a 8 .  

P e r o s i n o s j a m o s e n e l n o d o m a r c a d o , e l s e g u n d o d e s c e n d i e n t e d e l a r a í z y a s a b e q u e e l  

m e j o r n o d o d e l p r i m e r d e s c e n d i e n t e t i e n e v a l o r 8 , y s u p r i m e r d e s c e n d i e n t e v a l e 6 . D a d o  

q u e l a r a í z e s u n n o d o M A X , e s t e p r e f e r i r á e l v a l o r 8 a l 6 . D a d o q u e e l s e g u n d o d e s c e n d i e n t e  

e s u n n o d o M I N , é s t e s i e m p r e e s c o g e r á u n v a l o r q u e c o m o m á x i m o s e r á 6 . E s t o n o s h a c e  

p e n s a r q u e , u n a v e z h e m o s v i s t o q u e e l v a l o r d e l n o d o m a r c a d o e s 6 , e l v a l o r q u e s a l g a d e  

e s a e x p l o r a c i ó n n o s e e l e g i r á ( y a q u e t e n e m o s u n v a l o r m e j o r d e l a e x p l o r a c i ó n a n t e r i o r ) .  

E s t o l l e v a a l a c o n c l u s i ó n d e q u e s e g u i r e x p l o r a n d o l o s n o d o s d e l s e g u n d o d e s c e n d i e n t e d e  

l a r a í z n o m e r e c e l a p e n a , y a q u e e l v a l o r r e s u l t a n t e y a n o e s e l e g i b l e .  

P o d e m o s o b s e r v a r t a m b i é n q u e e s t a c i r c u n s t a n c i a s e r e p i t e e n e l t e r c e r d e s c e n d i e n t e a l  

e x p l o r a r s u ú l t i m o n o d o , p e r o a l n o q u e d a r m á s d e s c e n d i e n t e s e s t a h e u r í s t i c a n o n o s a h o r r a  

n a d a . E s t o q u e r r á d e c i r q u e l a e f e c t i v i d a d d e e s t a h e u r í s t i c a d e p e n d e r á d e l o r d e n d e l o s  

Page 54: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 54/75

 

5 . 4 . S E A M O S A Ú N M Á S I N T E L I G E N T E S   4 9 

n o d o s , p e r o d e s g r a c i a d a m e n t e e s a l g o q u e n o s e p u e d e e s t a b l e c e r a p r i o r i .  

E s t a h e u r í s t i c a m o d i c a e l a l g o r i t m o d e l m i n i m a x i n t r o d u c i e n d o d o s p a r á m e t r o s e n l a s  

l l a m a d a s d e l a s f u n c i o n e s ,   α y  β , y r e p r e s e n t a r á n e l l í m i t e d e l v a l o r q u e p u e d e n t o m a r  

l a s j u g a d a s q u e e x p l o r a m o s . U n a v e z s u p e r a d o e s e l í m i t e s a b r e m o s q u e p o d e m o s p a r a r l a  

e x p l o r a c i ó n p o r q u e y a t e n e m o s e l v a l o r d e l a m e j o r j u g a d a a c c e s i b l e .  

L a f u n c i ó n m i n i m a x s e m a n t i e n e i g u a l , s ó l o v a r í a n l a s f u n c i o n e s q u e h a c e n l a e x p l o r a c i ó n  

d e c a d a n i v e l , s u c ó d i g o s e r í a e l s i g u i e n t e :  

f u n c i o n   v a l o r M a x ( g , a l f a , b e t a )   r e t o r n a   e n t e r o  

s i  e s t a d o _ t e r m i n a l ( g )   e n t o n c e s  

r e t o r n a   ( e v a l u a c i o n ( g ) )  

s i n o  

p a r a c a d a   m o v  e n  m o v s _ p o s i b l e s ( g )   h a c e r  

a l f a = m a x ( a l f a , v a l o r M i n ( a p l i c a r ( m o v , g ) , a l f a , b e t a ) )  

s i  a l f a > = b e t a   e n t o n c e s r e t o r n a   ( b e t a )  

f p a r a  

r e t o r n a   ( a l f a )  

f s i 

f f u n c i o n  

f u n c i o n   v a l o r M i n ( g , a l f a , b e t a )   r e t o r n a   e n t e r o  

s i  e s t a d o _ t e r m i n a l ( g )   e n t o n c e s  

r e t o r n a   ( e v a l u a c i o n ( g ) )  

s i n o  

p a r a c a d a   m o v  e n  m o v s _ p o s i b l e s ( g )   h a c e r  

b e t a = m i n ( b e t a , v a l o r M a x ( a p l i c a r ( m o v , g ) , a l f a , b e t a ) )  

s i  a l f a > = b e t a   e n t o n c e s r e t o r n a   ( a l f a )  

f p a r a  

r e t o r n a   ( b e t a )  

f s i 

f f u n c i o n  

L a l l a m a d a q u e h a r á l a f u n c i ó n   M i n i M a x   a l a f u n c i ó n   v a l o r M a x   l e p a s a r á   −∞ c o m o  

v a l o r d e   a l f a   y  +∞ c o m o v a l o r d e   b e t a  . 

E n l a f u n c i ó n   v a l o r M a x   ,  a l f a   e s e l v a l o r q u e s e a c t u a l i z a y   b e t a   s e m a n t i e n e c o n s t a n t e  

r e p r e s e n t a n d o e l v a l o r d e l a m e j o r j u g a d a e n c o n t r a d a h a s t a a h o r a . E n l a f u n c i ó n   v a l o r M i n   , 

b e t a   e s e l v a l o r q u e s e a c t u a l i z a y   a l f a   s e m a n t i e n e c o n s t a n t e r e p r e s e n t a n d o e l v a l o r d e  

l a m e j o r j u g a d a e n c o n t r a d a h a s t a a h o r a .  

E n l a s i g u i e n t e g u r a s e v e c o m o e x p l o r a r í a e l a l g o r i t m o d e m i n i m a x c o n p o d a a l f a b e t a  

e l e j e m p l o a n t e r i o r :  

Page 55: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 55/75

 

5 0  C A P Í T U L O 5 . B Ú S Q U E D A C O N A D V E R S A R I O  

αβ

αβ

αβ

128 16 6 9 13 10 9 7

=+inf 

=−inf  αβ

=−inf,8

=+inf,8=8 =8

=+inf,6 =+inf,10,9,7

L a v e n t a j a d e u t i l i z a r l a p o d a a l f a b e t a e s q u e p o d e m o s p e r m i t i r n o s a m p l i a r e l l í m i t e  

d e p r o f u n d i d a d d e e x p l o r a c i ó n , y a q u e n o s a h o r r a m o s l a e x p l o r a c i ó n d e p a r t e d e l á r b o l d e  

b ú s q u e d a , y a s í c o n s e g u i r m e j o r e s r e s u l t a d o s .  

Page 56: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 56/75

 

C a p í t u l o 6    

S a t i s f a c c i ó n d e r e s t r i c c i o n e s    

6 . 1 . D e v a r i a b l e s y v a l o r e s    

E x i s t e n p r o b l e m a s e s p e c í c o s q u e , p o r s u s p r o p i e d a d e s , s e p u e d e n r e s o l v e r m á s f á c i l -  

m e n t e u t i l i z a n d o a l g o r i t m o s a d a p t a d o s a e l l o s q u e u t i l i z a n d o a l g o r i t m o s g e n e r a l e s . E s t e  

e s e l c a s o d e l o s p r o b l e m a s d e n o m i n a d o s d e   s a t i s f a c c i ó n d e r e s t r i c c i o n e s   (  c o n s t r a i n t  

s a t i s f a c t i o n  

L a s c a r a c t e r í s t i c a s d e u n p r o b l e m a d e s a t i s f a c c i ó n d e r e s t r i c c i o n e s s o n l a s s i g u i e n t e s :  

E l p r o b l e m a s e p u e d e r e p r e s e n t a r m e d i a n t e u n c o n j u n t o d e v a r i a b l e s .  

C a d a v a r i a b l e t i e n e u n d o m i n i o d e v a l o r e s ( u n c o n j u n t o n i t o d e v a l o r e s d i s c r e t o s o  

i n t e r v a l o s d e v a l o r e s c o n t i n u o s )  

E x i s t e n r e s t r i c c i o n e s d e c o n s i s t e n c i a e n t r e l a s v a r i a b l e s ( b i n a r i a s , n - a r i a s )  

U n a s o l u c i ó n e s u n a a s i g n a c i ó n d e v a l o r e s a e s a s v a r i a b l e s  

E l i n t e r é s d e e s t e t i p o d e p r o b l e m a s v i e n e d e q u e m u c h o s p r o b l e m a s r e a l e s s e p u e d e n  

p l a n t e a r c o m o p r o b l e m a s d e s a t i s f a c c i ó n d e r e s t r i c c i o n e s , c o m o p o r e j e m p l o l a p l a n i c a c i ó n  

d e t a r e a s , l o g í s t i c a ( l o c a l i z a c i ó n o a s i g n a c i ó n d e r e c u r s o s , p e r s o n a s , v e h í c u l o s , . . . ) , g e s t i ó n  

d e r e d e s ( e l e c t r i c i d a d , c o m u n i c a c i o n e s , . . . ) , d i s e ñ o / c o n g u r a c i ó n , v i s i ó n y r e c o n o c i m i e n t o  

d e p a t r o n e s , r a z o n a m i e n t o ( t e m p o r a l , e s p a c i a l , . . . ) , . . . E s t a s a p l i c a c i o n e s h a c e n q u e s e a u n  

á r e a b a s t a n t e i n t e r e s a n t e d e s d e u n p u n t o d e v i s t a p r á c t i c o .  

T o d o s l o s a l g o r i t m o s d e r e s o l u c i ó n d e p r o b l e m a s d e s a t i s f a c c i ó n d e r e s t r i c c i o n e s q u e  

v e r e m o s e s t á n p e n s a d o s p a r a e l c a s o d e q u e l a s r e s t r i c c i o n e s s e a n b i n a r i a s y a q u e s e p u e -  

d e n r e p r e s e n t a r m e d i a n t e g r a f o s (  g r a f o s d e r e s t r i c c i o n e s  ) e n l o s q u e l o s n o d o s s o n l a s  

v a r i a b l e s , l a s r e s t r i c c i o n e s s o n l o s a r c o s , y l o s d o m i n i o s d e l a s v a r i a b l e s s o n l o s d i f e r e n t e s  

E n l a l i t e r a t u r a l o s e n c o n t r a r e i s a b r e v i a d o s c o m o C S P ( c o n s t r a i n t s a t i s f a c t i o n p r o b l e m s ) .  

5 1 

Page 57: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 57/75

 

5 2  C A P Í T U L O 6 . S A T I S F A C C I Ó N D E R E S T R I C C I O N E S  

v a l o r e s q u e p u e d e n t o m a r l o s n o d o s . E s t o n o s u p o n e n i n g u n a l i m i t a c i ó n , d a d o q u e l a m a -  

y o r p a r t e d e l o s p r o b l e m a s n o b i n a r i o s s e p u e d e n c o n v e r t i r e n p r o b l e m a s b i n a r i o s m e d i a n t e  

t r a n s f o r m a c i o n e s e n l a s r e s t r i c c i o n e s .  

E j e m p l o 6 . 1   U n e j e m p l o c l á s i c o d e p r o b l e m a d e s a t i s f a c c i ó n d e r e s t r i c c i o n e s e s e l d e  

c o l o r e a d o d e m a p a s . E l p r o b l e m a c o n s i s t e e n a s i g n a r c o l o r e s a l o s p a í s e s d e u n m a p a d e  

m a n e r a q u e d o s p a í s e s a d y a c e n t e s n o t e n g a n e l m i s m o c o l o r .  

P1

P2 P3

P4

P5

P6

P1

P2P3

P4

P5P6

Colores={rojo, verde, amarillo, azul}

E l p r o b l e m a s e p u e d e r e p r e s e n t a r c o m o u n g r a f o d o n d e c a d a n o d o e s u n p a í s y l o s a r c o s  

e n t r e n o d o s r e p r e s e n t a n l a s f r o n t e r a s c o m u n e s . L o s n o d o s d e l g r a f o s e r í a n l a s v a r i a b l e s d e l  

p r o b l e m a , l o s a r c o s r e p r e s e n t a r í a n l a s r e s t r i c c i o n e s e n t r e p a r e s d e v a r i a b l e s ( s u s v a l o r e s  

h a n d e s e r d i f e r e n t e s ) y l o s c o l o r e s d i s p o n i b l e s s e r í a n l o s d o m i n i o s d e l a s v a r i a b l e s .  

6 . 2 . B u s c a n d o d e m a n e r a d i f e r e n t e      

S e p u e d e p l a n t e a r u n p r o b l e m a d e s a t i s f a c c i ó n d e r e s t r i c c i o n e s c o m o u n p r o b l e m a d e  

b ú s q u e d a g e n e r a l . D a d o q u e u n a s o l u c i ó n e s u n a a s i g n a c i ó n d e v a l o r e s a l a s v a r i a b l e s  

d e l p r o b l e m a , s ó l o h a r í a f a l t a e n u m e r a r d e a l g u n a m a n e r a t o d a s l a s p o s i b i l i d a d e s h a s t a  

e n c o n t r a r a l g u n a q u e s a t i s f a g a l a s r e s t r i c c i o n e s .  

E v i d e n t e m e n t e , e s t a a p r o x i m a c i ó n e s i r r e a l i z a b l e y a q u e e l c o n j u n t o d e p o s i b l e s a s i g n a -  

c i o n e s a e x p l o r a r e s m u y g r a n d e . S u p o n i e n d o   n v a r i a b l e s y   m p o s i b l e s v a l o r e s , t e n d r í a m o s  

u n e s p a c i o d e b ú s q u e d a d e   O(mn) . 

U n p r o b l e m a a d i c i o n a l e s q u e n o h a y n i n g u n a n o c i ó n d e c a l i d a d d e s o l u c i ó n , y a q u e  

t o d a s l a s a s i g n a c i o n e s s o n i g u a l d e b u e n a s y l o ú n i c o q u e l a s d i f e r e n c i a e s s i s a t i s f a c e n l a s  

r e s t r i c c i o n e s o n o , p o r l o q u e n o p o d e m o s c o n a r e n u n a f u n c i ó n h e u r í s t i c a q u e n o s i n d i q u e  

q u e c o m b i n a c i o n e s d e b e m o s m i r a r p r i m e r o , o c o m o m o d i c a r u n a a s i g n a c i ó n p a r a a c e r c a r l a  

a l a s o l u c i ó n . E s t o n o s d e j a c o n q u e l o s ú n i c o s a l g o r i t m o s q u e p o d r e m o s u t i l i z a r s e r á n l o s  

d e b ú s q u e d a n o i n f o r m a d a , l o q u e h a r á q u e t e n g a m o s q u e e s t u d i a r c o m m á s p r o f u n d i d a d  

e l p r o b l e m a p a r a p o d e r s o l u c i o n a r l o d e u n a m a n e r a e c i e n t e .  

U n a v e n t a j a c o n l a q u e n o s e n c o n t r a r e m o s e s q u e , l a s p r o p i e d a d e s q u e t i e n e n e s t o s  

p r o b l e m a s p e r m i t e n d e r i v a r h e u r í s t i c a s q u e r e d u c e n e l e s p a c i o d e b ú s q u e d a d e m a n e r a  

Page 58: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 58/75

 

6 . 2 . B U S C A N D O D E M A N E R A D I F E R E N T E   5 3 

c o n s i d e r a b l e .  

V e r e m o s t r e s a p r o x i m a c i o n e s a l a r e s o l u c i ó n d e p r o b l e m a s d e s a t i s f a c c i ó n d e r e s t r i c c i o -  

n e s , l a p r i m e r a s e b a s a r á e n b ú s q u e d a n o i n f o r m a d a , l a s e g u n d a s e b a s a r á e n l a r e d u c c i ó n  

d e e s p a c i o d e b ú s q u e d a d e l p r o b l e m a y l a t e r c e r a i n t e n t a r á c o m b i n a r a m b a s .  

6 . 2 . 1 . B ú s q u e d a c o n b a c k t r a c k i n g  

L a p r i m e r a a p r o x i m a c i ó n s e b a s a r á e n l a b ú s q u e d a n o i n f o r m a d a . P l a n t e a r e m o s e l  

p r o b l e m a d e m a n e r a q u e p o d a m o s e x p l o r a r e l c o n j u n t o d e p o s i b l e s a s i g n a c i o n e s d e v a l o r e s  

a l a s v a r i a b l e s c o m o u n a b ú s q u e d a e n p r o f u n d i d a d .  

P o d e m o s o b s e r v a r q u e , d a d a u n a a s i g n a c i ó n p a r c i a l d e v a l o r e s a l a s v a r i a b l e s d e u n  

p r o b l e m a , é s t a p o d r í a f o r m a r p a r t e d e u n a s o l u c i ó n c o m p l e t a s i n o v i o l a n i n g u n a r e s t r i c c i ó n ,  

p o r l o t a n t o s ó l o t e n d r í a m o s q u e e n c o n t r a r e l r e s t o d e v a l o r e s n e c e s a r i o s p a r a c o m p l e t a r l a .  

E s t o n o s h a c e p e n s a r q u e p o d e m o s p l a n t e a r l a b ú s q u e d a m á s f á c i l m e n t e s i e x p l o r a m o s  

e n e l e s p a c i o d e l a s s o l u c i o n e s p a r c i a l e s , q u e s i l o p l a n t e a m o s c o m o u n a b ú s q u e d a e n  

e l e s p a c i o d e l a s s o l u c i o n e s c o m p l e t a s c o m o h a b í a m o s c o m e n t a d o a n t e s . E s t o n o s p u e d e  

i n d i c a r u n a l g o r i t m o p a r a h a c e r l a e x p l o r a c i ó n .  

P o d e m o s e s t a b l e c e r u n o r d e n j o p a r a l a s v a r i a b l e s y e x p l o r a r d e m a n e r a s i s t e m á t i c a e l  

e s p a c i o d e s o l u c i o n e s p a r c i a l e s , a s i g n a n d o v a l o r e s a l a s v a r i a b l e s d e m a n e r a c o n s e c u t i v a e n  

e l o r d e n q u e h e m o s j a d o . E n e l m o m e n t o e n e l q u e u n a s o l u c i ó n p a r c i a l v i o l e a l g u n a d e l a s  

r e s t r i c c i o n e s d e l p r o b l e m a , s a b r e m o s q u e n o f o r m a r á p a r t e d e n i n g u n a s o l u c i ó n c o m p l e t a ,  

p o r l o q u e r e p l a n t e a r e m o s l a s a s i g n a c i o n e s q u e h e m o s r e a l i z a d o . A e s t e t i p o d e b ú s q u e d a  

s e l a d e n o m i n a b u s q u e d a c o n   b a c t r a c k i n g c r o n o l ó g i c o  . 

D e n i r e m o s t r e s c o n j u n t o s c o n l a s v a r i a b l e s d e l p r o b l e m a . P o r u n l a d o t e n d r e m o s l a s  

v a r i a b l e s p a s a d a s , q u e s e r á n l a s q u e y a t i e n e n u n v a l o r a s i g n a d o y f o r m a n p a r t e d e l a  

s o l u c i ó n p a r c i a l . T e n d r e m o s l a v a r i a b l e a c t u a l , q u e s e r á a l a q u e d e b e m o s a s i g n a r l e u n  

v a l o r . Y p o r ú l t i m o t e n d r e m o s l a s v a r i a b l e s f u t u r a s , q u e s e r á n l a s q u e a ú n n o t i e n e n v a l o r .  

E l a l g o r i t m o e s e l s i g u i e n t e :  

f u n c i o n   b a c k t r a c k i n g _ c r o n o l o g i c o ( v f u t u r a s , s o l u c i o n )   r e t o r n a   a s i g n a c i o n  

s i  v f u t u r a s . e s _ v a c i o ? ( )   e n t o n c e s r e t o r n a   ( s o l u c i o n )  

s i n o  

v a c t u a l = v f u t u r a s . p r i m e r o ( )  

v f u t u r a s . b o r r a r _ p r i m e r o ( )  

p a r a c a d a   v  e n  v a c t u a l . v a l o r e s ( )   h a c e r  

v a c t u a l . a s i g n a r ( v )  

s o l u c i o n . a n a d i r ( v a c t u a l )  

s i  s o l u c i o n . v a l i d a ( )   e n t o n c e s  

s o l u c i o n = b a c k t r a c k i n g _ c r o n o l o g i c o ( v f u t u r a s , s o l u c i o n )  

s i  (  n o  s o l u c i o n . e s _ v a c i o ? ( ) )   e n t o n c e s  

r e t o r n a   ( s o l u c i o n )  

s i n o   s o l u c i o n . b o r r a r ( v a c t u a l )  

Page 59: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 59/75

 

5 4  C A P Í T U L O 6 . S A T I S F A C C I Ó N D E R E S T R I C C I O N E S  

f s i 

s i n o   s o l u c i o n . b o r r a r ( v a c t u a l )  

f s i 

f p a r a  

r e t o r n a   ( s o l u c i o n . v a c i a ( ) )  

f s i 

f f u n c i o n  

E l a l g o r i t m o h a c e u n r e c o r r i d o e n p r o f u n d i d a d d e m a n e r a r e c u r s i v a p o r t o d a s l a s a s i g n a -  

c i o n e s p o s i b l e s d e v a l o r e s a c a d a u n a d e l a s v a r i a b l e s d e l p r o b l e m a . E l p a r á m e t r o   v f u t u r a s  

c o n t i e n e t o d a s l a s v a r i a b l e s d e l p r o b l e m a e n o r d e n , e l p a r á m e t r o   s o l u c i ó n   i r á g u a r d a n d o  

l a s s o l u c i o n e s p a r c i a l e s . E l h a c e r e l r e c o r r i d o e n p r o f u n d i d a d h a c e q u e e l c o s t e e s p a c i a l d e  

l a b ú s q u e d a s e a l i n e a l .  

E l c a s o b a s e d e l a r e c u r s i v i d a d e s q u e e l c o n j u n t o d e v a r i a b l e s f u t u r a s s e h a y a a g o t a d o ,  

e l c a s o r e c u r s i v o e s i t e r a r p a r a t o d o s l o s v a l o r e s d e l a v a r i a b l e a c t u a l . E l a l g o r i t m o p a r a  

l a l l a m a d a r e c u r s i v a c u a n d o u n a a s i g n a c i ó n d e v a l o r a l a v a r i a b l e a c t u a l v i o l a a l g u n a  

r e s t r i c c i ó n d e l p r o b l e m a (  s o l u c i o n . v á l i d a ( )   ) . E n e l c a s o d e q u e n i n g u n a a s i g n a c i ó n d é  

u n a s o l u c i ó n v á l i d a , e l a l g o r i t m o p e r m i t e q u e s e c a m b i e e l v a l o r d e l a v a r i a b l e a n t e r i o r  

( r e t o r n a u n a s o l u c i ó n v a c í a ) .  

E j e m p l o 6 . 2   O t r o p r o b l e m a c l á s i c o d e s a t i s f a c c i ó n d e r e s t r i c c i o n e s e s e l d e l a N r e i n a s  

q u e y a h e m o s c o m e n t a d o e n e l p r i m e r c a p í t u l o . É s t e s e p u e d e p l a n t e a r c o m o u n p r o b l e m a d e  

s a t i s f a c c i ó n d e r e s t r i c c i o n e s e n e l q u e l a s r e i n a s s e r í a n l a s v a r i a b l e s , e l d o m i n i o d e v a l o r e s  

s e r í a l a c o l u m n a e n l a q u e s e c o l o c a l a r e i n a y l a s r e s t r i c c i o n e s s e r í a n q u e l a s p o s i c i o n e s  

e n l a s q u e c o l o c a m o s l a s r e i n a s n o h a g a n q u e s e m a t e n e n t r e s i .  

E n l a g u r a 6 . 1 p o d e m o s v e r c o m o e x p l o r a r í a e l a l g o r i t m o d e b a c k t r a c k i n g c r o n o l ó g i c o  

e l p r o b l e m a e n e l c a s o d e 4 r e i n a s .  

E l a l g o r i t m o d e b a c k t r a c k i n g c r o n o l ó g i c o p u e d e h a c e r b a s t a n t e t r a b a j o i n n e c e s a r i o a  

v e c e s s i l a v a r i a b l e q u e p r o v o c a l a v u e l t a a t r á s d e l a l g o r i t m o n o e s p r e c i s a m e n t e l a ú l t i -  

m a a s i g n a d a , h a c i e n d o q u e s e t e n g a n q u e p r o b a r t o d a s l a s c o m b i n a c i o n e s p o s i b l e s d e l a s  

v a r i a b l e s q u e h a y e n t r e e l p r i m e r p u n t o d o n d e s e e n c u e n t r a l a v i o l a c i ó n d e l a r e s t r i c c i ó n  

y l a v a r i a b l e q u e l a p r o v o c a . E s t o h a h e c h o d e s a r r o l l a r v a r i a n t e s m á s i n t e l i g e n t e s d e l b a -  

c k t r a c k i n g c r o n o l ó g i c o , l a m a s s e n c i l l a e s l a d e n o m i n a d a   b a c k j u m p i n g   , q u e i n t e n t a q u e  

e l b a c k t r a c k i n g n o s e a a l a v a r i a b l e a n t e r i o r , s i n o q u e , t e n i e n d o e n c u e n t a l a s r e s t r i c c i o n e s  

i n v o l u c r a d a s , v u e l v a a l a v a r i a b l e q u e t i e n e a l g u n a r e s t r i c c i ó n c o n l a v a r i a b l e a c t u a l . E s t o  

c o n s i g u e e v i t a r t o d a s l a s p r u e b a s d e v a l o r e s e n t r e l a v a r i a b l e a c t u a l y e s a v a r i a b l e .  

6 . 2 . 2 . P r o p a g a c i ó n d e r e s t r i c c i o n e s  

O t r a s v í a s a t r a v é s d e l a s q u e a t a c a r e s t e t i p o d e p r o b l e m a s s o n l a s d e n o m i n a d a s t é c n i -  

c a s d e   p r o p a g a c i ó n d e r e s t r i c c i o n e s  . M e d i a n t e é s t a s s e p r e t e n d e r e d u c i r e l n ú m e r o d e  

Page 60: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 60/75

 

6 . 2 . B U S C A N D O D E M A N E R A D I F E R E N T E   5 5 

R1=1 R1=2

R2=3

R2=1 NO

R2=2 NO

R3=1 NO

R3=2 NO

R3=3 NO

R3=4 NO

Backtracking a R2

R2=4

R3=1 NO

R4=1 NO

R4=2 NO

R4=3 NO

R4=4 NO

R3=2

NO

R3=3 NO

R3=4 NO

R2=1 NO

R2=2 NO

R2=3 NO

R2=4

R3=1

R4=1 NO

R4=2 NO

R4=3

Solucion (R1=2,R2=4,R3=1,R4=3)Backtracking a R3

F i g u r a 6 . 1 : 4 r e i n a s m e d i a n t e b a c k t r a c k i n g c r o n o l ó g i c o  

c o m b i n a c i o n e s q u e h a y q u e p r o b a r , d e s c a r t a n d o t o d a s a q u e l l a s q u e c o n t e n g a n a s i g n a c i o n e s  

d e v a l o r e s q u e s a b e m o s q u e n o p u e d e n a p a r e c e r e n n i n g u n a s o l u c i ó n .  

E s t a s t é c n i c a s s e h a n d e s a r r o l l a d o a p a r t i r d e h e u r í s t i c a s d e r i v a d a s d e p r o p i e d a d e s q u e  

t i e n e n l o s g r a f o s d e r e s t r i c c i o n e s . L a s m á s u t i l i z a d a s s o n l a s q u e s e d e r i v a n d e l a p r o p i e d a d  

d e n o m i n a d a   k - c o n s i s t e n c i a   . 

S e d i c e q u e u n g r a f o d e r e s t r i c c i o n e s e s   k - c o n s i s t e n t e   s i p a r a c a d a v a r i a b l e   X i d e l g r a f o ,  

c a d a c o n j u n t o d e k v a r i a b l e s q u e l a i n c l u y a n y p a r a c a d a v a l o r d e l d o m i n i o d e   X i , p o d e m o s  

e n c o n t r a r u n a c o m b i n a c i ó n d e k v a l o r e s d e e s t a s v a r i a b l e s q u e n o v i o l a l a s r e s t r i c c i o n e s  

e n t r e e l l a s . L a v e n t a j a d e e s t a s p r o p i e d a d e s e s q u e s e p u e d e n c o m p r o b a r c o n a l g o r i t m o s d e  

c o s t e p o l i n ó m i c o .  

E s t a p r o p i e d a d l a p o d e m o s d e n i r p a r a c u a l q u i e r v a l o r d e k , p e r o t í p i c a m e n t e s e u t i l i z a  

e l c a s o d e k i g u a l a 2 , a l q u e s e d e n o m i n a   a r c o - c o n s i s t e n c i a   . D i r e m o s q u e u n g r a f o d e  

r e s t r i c c i o n e s e s   a r c o - c o n s i s t e n t e  , s i p a r a c a d a p a r e j a d e v a r i a b l e s d e l g r a f o , p a r a c a d a  

u n o d e l o s v a l o r e s d e u n a d e l a s v a r i a b l e s , p o d e m o s e n c o n t r a r o t r o v a l o r d e l a o t r a v a r i a b l e  

q u e n o v i o l a l a s r e s t r i c c i o n e s e n t r e e l l a s .  

E s t a p r o p i e d a d p e r m i t e e l i m i n a r v a l o r e s d e l d o m i n i o d e u n a v a r i a b l e . S i d a d o u n v a l o r  

d e u n a v a r i a b l e y d a d a o t r a v a r i a b l e c o n l a q u e t e n g a u n a r e s t r i c c i ó n , n o p o d e m o s e n c o n t r a r  

a l g ú n v a l o r e n l a o t r a v a r i a b l e q u e n o v i o l e e s a r e s t r i c c i ó n , e n t o n c e s p o d e m o s e l i m i n a r e l  

v a l o r , y a q u e n o p u e d e f o r m a r p a r t e d e u n a s o l u c i ó n .  

Page 61: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 61/75

 

5 6  C A P Í T U L O 6 . S A T I S F A C C I Ó N D E R E S T R I C C I O N E S  

E l o b j e t i v o s e r á p u e s , a p a r t i r d e u n g r a f o d e r e s t r i c c i o n e s , e l i m i n a r t o d o s a q u e l l o s  

v a l o r e s q u e n o h a g a n a r c o c o n s i s t e n t e e l g r a f o , d e m a n e r a q u e r e d u z c a m o s e l n ú m e r o d e  

p o s i b l e s v a l o r e s q u e p u e d e n t e n e r l a s v a r i a b l e s d e l p r o b l e m a y p o r l o t a n t o e l n ú m e r o d e  

c o m b i n a c i o n e s a e x p l o r a r .  

E l a l g o r i t m o q u e c o n v i e r t e u n g r a f o d e r e s t r i c c i o n e s e n g r a f o a r c o - c o n s i s t e n t e e s e l  

s i g u i e n t e :  

A l g o r i t m o   A r c o _ c o n s i s t e n c i a  

R = c o n j u n t o d e a r c o s d e l p r o b l e m a /  ∗

e n  a m b o s s e n t i d o s  ∗

m i e n t r a s   h a y a m o d i f i c a c i o n e s   e n  l o s d o m i n i o s d e l a s v a r i a b l e s   h a c e r  

r = e x t r a e r _ a r c o ( R )  

/  ∗ r _ i  e s  l a v a r i a b l e d e l o r i g e n d e l a r c o  

r _ j  e s  l a v a r i a b l e d e l d e s t i n o d e l a r c o   ∗ / 

p a r a c a d a   v  e n  e l d o m i n i o d e r _ i   h a c e r  

s i  v  n o  t i e n e n i n g ú n v a l o r   e n  e l d o m i n i o d e r _ j q u e c u m p l a r   e n t o n

e l i m i n a r v d e l d o m i n i o d e v _ i  

a n a d i r t o d o s l o s a r c o s q u e t e n g a n c o m o d e s t i n o r _ i  

m e n o s e l ( r _ j  −

r _ i )  

f s i 

f p a r a  

f m i e n t r a s  

f A l g o r i t m o  

E l c o s t e d e l a l g o r i t m o e s   O(k · r) s i e n d o   r e l n ú m e r o d e r e s t r i c c i o n e s d e l p r o b l e m a  

( c o n t a n d o l o s d o s s e n t i d o s ) y   k u n f a c t o r c o n s t a n t e ( h a y q u e t e n e r e n c u e n t a q u e   r e s 

c u a d r á t i c o r e s p e c t o a l n ú m e r o d e v a r i a b l e s ) .  

E j e m p l o 6 . 3   E n l a s i g u i e n t e g u r a t e n e m o s u n p r o b l e m a d e c o l o r e a d o d e g r a f o s d o n d e e n  

c a d a u n o d e l o s n o d o s s e i n d i c a e l d o m i n i o d e c a d a v a r i a b l e . E l o b j e t i v o s e r á c o l o r e a r e l  

g r a f o d e m a n e r a q u e n i n g ú n n o d o a d y a c e n t e t e n g a e l m i s m o c o l o r , p o r l o q u e c a d a a r c o e s  

u n a r e s t r i c c i ó n d e d e s i g u a l d a d :  

{Azul}

{Axul, Rojo}

{Azul, Verde}{Azul, Rojo, Verde}

X1

X2

X3

X4

E l c o n j u n t o d e a r c o s c o n l o s q u e c o m e n z a r í a e l a l g o r i t m o s o n :  

{X 1 − X 2, X 2 − X 1, X 2 − X 3, X 3 − X 2, X 2 − X 4, X 4 − X 2, X 3 − X 4, X 4 − X 3}

Page 62: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 62/75

 

6 . 2 . B U S C A N D O D E M A N E R A D I F E R E N T E   5 7 

L a e j e c u c i ó n d e l a l g o r i t m o s e r í a l a s i g u i e n t e :  

1 . S e l e c c i o n a m o s   X 1 − X 2 E l i m i n a m o s A z u l d e l d o m i n i o d e   X 12 . S e l e c c i o n a m o s   X 2 − X 1 T o d o s l o s v a l o r e s s o n c o n s i s t e n t e s  

3 . S e l e c c i o n a m o s   X 2 − X 3 T o d o s l o s v a l o r e s s o n c o n s i s t e n t e s  

4 . S e l e c c i o n a m o s   X 3 − X 2 E l i m i n a m o s A z u l d e l d o m i n i o d e   X 3T e n d r í a m o s q u e a ñ a d i r e l a r c o   X 4 − X 3p e r o y a e s t á  

5 . S e l e c c i o n a m o s   X 2 − X 4 T o d o s l o s v a l o r e s s o n c o n s i s t e n t e s  

6 . S e l e c c i o n a m o s   X 4 − X 2 E l i m i n a m o s A z u l d e l d o m i n i o d e   X 4T e n d r í a m o s q u e a ñ a d i r e l a r c o   X 3 − X 4p e r o y a e s t á  

7 . S e l e c c i o n a m o s   X 3 − X 4 E l i m i n a m o s V e r d e d e l d o m i n i o d e   X 3A ñ a d i m o s e l a r c o   X 2 − X 3

8 . S e l e c c i o n a m o s  

X 4 − X 3T o d o s l o s v a l o r e s s o n c o n s i s t e n t e s  

9 . S e l e c c i o n a m o s   X 2 − X 3 T o d o s l o s v a l o r e s s o n c o n s i s t e n t e s  

C a s u a l m e n t e , a l h a c e r a r c o - c o n s i s t e n t e e l g r a f o h e m o s h a l l a d o l a s o l u c i ó n , p e r o n o s i e m -  

p r e t i e n e p o r q u e s e r a s í .  

L a a r c o - c o n s i s t e n c i a n o s i e m p r e n o s a s e g u r a u n a r e d u c c i ó n e n l o s d o m i n i o s d e l p r o b l e m a ,  

p o r e j e m p l o , s i c o n s i d e r a m o s e l g r a f o d e l p r o b l e m a d e l a s 4 r e i n a s q u e h e m o s v i s t o e n e l  

e j e m p l o 6 . 2 , é s t e e s a r c o - c o n s i s t e n t e , p o r l o q u e n o s e p u e d e e l i m i n a r n i n g u n o d e l o s v a l o r e s  

d e l a s v a r i a b l e s .  

L a k - c o n s i s t e n c i a p a r a e l c a s o d e   k i g u a l a 3 s e d e n o m i n a   c a m i n o c o n s i s t e n c i a  , y 

p e r m i t e e l i m i n a r m á s c o m b i n a c i o n e s , p e r o c o n u n c o s t e m a y o r . E l a l g o r i t m o d e c o m p r o b a -  

c i ó n d e c a m i n o - c o n s i s t e n c i a t i e n e c o s t e   O(n3) s i e n d o   n e l n ú m e r o d e r e s t r i c c i o n e s . E x i s t e  

l a p r o p i e d a d q u e s e d e n o m i n a   k - c o n s i s t e n c i a f u e r t e  , q u e s e c u m p l e c u a n d o u n g r a f o  

c u m p l e l a p r o p i e d a d d e c o n s i s t e n c i a d e s d e 2 h a s t a   k . 

E s t a p r o p i e d a d a s e g u r a q u e s i e l g r a f o t i e n e a n c h u r a  

2  k y e s k - c o n s i s t e n t e f u e r t e , e n -  

c o n t r a r e m o s u n a s o l u c i ó n s i n n e c e s i d a d d e h a c e r b a c k t r a c k i n g , d e s g r a c i a d a m e n t e p r o b a r  

e s t o n e c e s i t a u n t i e m p o e x p o n e n c i a l .  

6 . 2 . 3 . C o m b i n a n d o b ú s q u e d a y p r o p a g a c i ó n  

L a c o m b i n a c i ó n d e l a b ú s q u e d a c o n b a c k t r a c k i n g y l a p r o p a g a c i ó n d e r e s t r i c c i o n e s e s  

l a q u e d a r e s u l t a d o s m á s e x i t o s o s e n e s t o s p r o b l e m a s . L a i d e a c o n s i s t e e n q u e c a d a v e z  

q u e a s i g n e m o s u n v a l o r a u n a v a r i a b l e r e a l i c e m o s u n a p r o p a g a c i ó n d e l a s r e s t r i c c i o n e s q u e  

i n d u c e e s a a s i g n a c i ó n , e l i m i n a n d o d e e s t a m a n e r a v a l o r e s d e l a s v a r i a b l e s q u e q u e d a n p o r  

a s i g n a r . S i c o n e s t a p r o p a g a c i ó n , a l g u n a d e l a s v a r i a b l e s s e q u e d a s i n v a l o r e s , d e b e r e m o s  

h a c e r b a c k t r a c k i n g .  

S e p u e d e c a l c u l a r l a a n c h u r a d e u n g r a f o e n c o s t e c u a d r á t i c o .  

Page 63: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 63/75

 

5 8  C A P Í T U L O 6 . S A T I S F A C C I Ó N D E R E S T R I C C I O N E S  

L a v e n t a j a d e e s t e m é t o d o e s q u e p o d r e m o s h a c e r b a c k t r a c k i n g a n t e s d e q u e l l e g u e m o s  

a l a v a r i a b l e q u e a c a b a r á p r o v o c á n d o l o . D e m a n e r a q u e n o s a h o r r a r e m o s t o d o s l o s p a s o s  

i n t e r m e d i o s .  

E x i s t e n d i f e r e n t e s a l g o r i t m o s q u e c o m b i n a n b ú s q u e d a y p r o p a g a c i ó n , d e p e n d i e n d o d e  

q u e t i p o d e c o n s i s t e n c i a s e e v a l ú e e n c a d a p a s o d e b ú s q u e d a . E l a l g o r i t m o m á s s e n c i l l o e s  

e l d e n o m i n a d o d e   f o r w a r d c h e c k i n g  . 

E s t e a l g o r i t m o a ñ a d e a c a d a p a s o d e a s i g n a c i ó n d e v a r i a b l e s u n a p r u e b a d e a r c o -  

c o n s i s t e n c i a e n t r e l a s v a r i a b l e s f u t u r a s y l a v a r i a b l e a c t u a l . E s t a p r u e b a d e a r c o c o n s i s t e n c i a  

c o n s i g u e q u e t o d o s l o s v a l o r e s d e l a s v a r i a b l e s f u t u r a s q u e n o s e a n c o n s i s t e n t e s c o n l a a s i g -  

n a c i ó n a l a v a r i a b l e a c t u a l s e a n e l i m i n a d o s , d e m a n e r a q u e s i a l g ú n d o m i n i o d e a l g u n a  

v a r i a b l e f u t u r a q u e d a v a c í o r e a l i z a m o s b a c k t r a c k i n g .  

E l a l g o r i t m o s e r í a i d é n t i c o a l q u e h e m o s v i s t o p a r a e l b a c k t r a c k i n g c r o n o l ó g i c o , s a l v o  

q u e i n c l u i r í a m o s l a r e d u c c i ó n d e d o m i n i o s m e d i a n t e l a p r u e b a d e a r c o c o n s i s t e n c i a y a d e m á s  

e n l a c o m p r o b a c i ó n d e l a v a l i d e z d e l a s o l u c i ó n p a r c i a l s e i n c l u i r í a l a c o m p r o b a c i ó n d e q u e  

t o d a s l a s v a r i a b l e s f u t u r a s t i e n e n a ú n v a l o r e s .  

E j e m p l o 6 . 4   E n l a g u r a 6 . 2 p o d e m o s v e r d e n u e v o e l e j e m p l o 6 . 2 u t i l i z a n d o d e l a l g o r i t -  

m o d e f o r w a r d c h e c k i n g . S e p u e d e c o m p r o b a r q u e e l n ú m e r o d e a s i g n a c i o n e s q u e s e r e a l i z a n  

e s m u c h o m e n o r y a q u e l o s v a l o r e s n o c o m p a t i b l e s s o n e l i m i n a d o s p o r l a s p r u e b a s d e c o n -  

s i s t e n c i a . A h o r a e l c o s t e h a p a s a d o a l a s p r u e b a s d e c o n s i s t e n c i a q u e s e r e a l i z a n e n c a d a  

i t e r a c i ó n .  

E x i s t e n a l g o r i m o s q u e r e a l i z a n p r u e b a s d e c o n s i s t e n c i a m a s f u e r t e s , c o m o p o r e j e m p l o  

e l a l g o r i t m o   R F L  (  R e a l F u l l L o o k a h e a d  ) q u e a d e m á s c o m p r u e b a l a a r c o - c o n s i s t e n c i a  

e n t r e t o d a s l a s v a r i a b l e s f u t u r a s , o e l a l g o r i t m o   M A C  (  M a i n t a i n i n g A r c C o n s i s t e n c y   ) 

q u e c o n v i e r t e e l p r o b l e m a e n a r c o c o n s i s t e n t e a c a d a p a s o .  

E v i d e n t e m e n t e , e s t a r e d u c c i ó n d e l o s d o m i n i o s d e l a s v a r i a b l e s n o s a l e g r a t i s , e l n ú m e r o  

d e c o m p r o b a c i o n e s a c a d a p a s o i n c r e m e n t a e l c o s t e p o r i t e r a c i ó n d e l a l g o r i t m o . D e p e n d i e n -  

d o d e l p r o b l e m a , e l c o s t e d e p r o p a g a c i ó n p u e d e h a c e r q u e e l c o s t e d e h a l l a r u n a s o l u c i ó n  

s e a m a y o r q u e u t i l i z a r e l a l g o r i t m o d e b a c k t r a c k i n g c r o n o l ó g i c o .  

6 . 3 . O t r a v u e l t a d e t u e r c a      

M u c h a s v e c e s e s t a s h e u r í s t i c a s n o s o n s o n s u c i e n t e s p a r a r e d u c i r e l c o s t e d e e n c o n t r a r  

u n a s o l u c i ó n , p o r l o q u e s e c o m b i n a n c o n o t r a s q u e t a m b i é n s e h a n m o s t r a d o e f e c t i v a s e n  

e s t e t i p o d e p r o b l e m a s .  

H a s t a a h o r a s i e m p r e h e m o s m a n t e n i d o u n o r d e n j o e n l a a s i g n a c i ó n d e l a s v a r i a b l e s ,  

p e r o e s t e p u e d e n o s e r e l m á s a d e c u a d o a l a h o r a d e r e a l i z a r l a e x p l o r a c i ó n . S e u t i l i z a n  

d i f e r e n t e s h e u r í s t i c a s d e o r d e n a c i ó n d i n á m i c a d e v a r i a b l e s d e m a n e r a q u e s i e m p r e s e e s c o j a  

Page 64: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 64/75

 

6 . 3 . O T R A V U E L T A D E T U E R C A   5 9 

R1=1 R1=2

R2=4

Solucion (R1=2,R2=4,R3=1,R4=3)

R2={3,4}

R3={2,4}

R4={2,3}

R2=3

R4={2,3}

R3={}R3={2}

R4={3}

R3=2

R4={}

Backtracking a R2

Back a R1R2=4

R2={4}

R3={1,3}

R4={1,3,4}

R3={1}

R4={1,3}

R4={3}

R4=3

R3=1

F i g u r a 6 . 2 : 4 r e i n a s m e d i a n t e f o r w a r d c h e c k i n g  

l a q u e t e n g a m á s p r o b a b i l i d a d d e l l e v a r n o s a n t e s a d a r n o s c u e n t a d e s i u n a s o l u c i ó n p a r c i a l  

n o n o s l l e v a r á a u n a s o l u c i ó n .  

L a s h e u r í s t i c a s m á s u t i l i z a d a s s o n :  

D o m i n i o s m í n i m o s   (  D i n a m i c v a l u e o r d e r i n g   ) , e s c o g e m o s l a v a r i a b l e c o n e l m e -  

n o r n ú m e r o d e v a l o r e s .  

M i n w i d t h o r d e r i n g  , e s c o g e m o s l a v a r i a b l e c o n e c t a d a a l m e n o r n ú m e r o d e v a r i a b l e s  

n o i n s t a n c i a d a s .  

M a x d e g r e e o r d e r i n g  , e s c o g e m o s l a v a r i a b l e m á s c o n e c t a d a e n e l g r a f o o r i g i n a l .  

N o e s d e s p r e c i a b l e e l a h o r r o q u e s e p u e d e o b t e n e r m e d i a n t e e s t e t i p o d e h e u r í s t i c a s ,  

p a r a e l p r o b l e m a d e l a s 2 0 r e i n a s , h a l l a r l a p r i m e r a s o l u c i ó n n e c e s i t a a l r e d e d o r d e  

2,5 · 10

7

a s i g n a c i o n e s , u t i l i z a n d o f o r w a r d c h e c k i n g s e r e d u c e a a l r e d e d o r d e   2,4 · 106 a s i g n a c i o n e s , y  

s i u t i l i z a m o s l a h e u r í s t i c a d e d o m i n i o s m í n i m o s c o m b i n a d a c o n e l f o r w a r d c h e c k i n g h a c e n  

f a l t a a l r e d e d o r d e   4 · 103 a s i g n a c i o n e s .  

Page 65: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 65/75

 

6 0  C A P Í T U L O 6 . S A T I S F A C C I Ó N D E R E S T R I C C I O N E S  

Page 66: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 66/75

 

C a p í t u l o 7      

P r o b l e m a s r e s u e l t o s    

7 . 1 . B ú s q u e d a h e u r í s t i c a      

1 . D a d o e l á r b o l d e b ú s q u e d a q u e a p a r e c e e n l a g u r a i n d i c a c u a l s e r í a e l r e c o r r i d o q u e  

h a r í a e l a l g o r i t m o A  

∗e I D A  

∗¾ l a f u n c i ó n h e u r í s t i c a e s a d m i s i b l e ?  

E n e l á r b o l l a f u n c i ó n h e u r í s t i c a e s t a d e s c o m p u e s t a e n l a g y l a h ' . C u a n d o e n u n  

n o d o a p a r e c e n d o s v a l o r e s e l o r d e n c o r r e s p o n d e a l a r a m a p o r l a q u e s e h a l l e g a d o a l  

n o d o .  

A

D

H

E

C

I

F

J

L

N

7+0

6+1

4+3

5+1

4+2

3+3

1+5

3+3|2+3

0+6

6+1

7+1

4+2

B

2+4

3+3

G

5+2

K

M

O

6 1 

Page 67: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 67/75

 

6 2  C A P Í T U L O 7 . P R O B L E M A S R E S U E L T O S  

E s t e p r o b l e m a c o r r e s p o n d e a l p r o b l e m a n u m e r o 1 9 d e l c a p í t u l o 2 d e l a c o l e c c i ó n d e  

p r o b l e m a s   S o l u c i ó n :  

E s t e e s e l r e c o r r i d o q u e o b t e n d r í a e l a l g o r i t m o d e A  

∗. 

A

D

H

E

C

I

F

J

L

N

7+0

6+1

4+3

5+1

4+2

3+3

1+5

3+3|2+3

0+6

6+1

7+1

4+2

B

2+4

3+3

G5+2

K

M

O

1

2

3

4

5

6

78

9

10

11

12

E s t e e s e l r e c o r r i d o q u e o b t e n d r í a e l a l g o r i t m o d e I D A  

∗. 

A

D

H

E

C

I

F

J

L

N

7+0

6+1

4+3

5+1

4+2

3+3

1+5

3+3|2+3

0+6

6+1

7+1

4+2

B

2+4

3+3

G

5+2

K

M

O

1

2

3

7

4 6

5 8

9

10

11

12

13

14

15

16

17

18

19

2021

22

23

Page 68: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 68/75

 

7 . 2 . B Ú S Q U E D A L O C A L   6 3 

S o b r e c a d a á r b o l d e b ú s q u e d a a p a r e c e e l o r d e n d e e x p a n s i ó n d e l o s n o d o s q u e h a c e n  

l o s r e s p e c t i v o s a l g o r i t m o s .  

E n e l c a s o d e l A  

∗s e p u e d e o b s e r v a r c o m o e l n o d o E e s r e a b i e r t o a l s e r e n c o n t r a d o  

p o r u n c a m i n o d e m e j o r c o s t e y r e e x p a n d i d o y a q u e l l e g a a s e r l a m e j o r a l t e r n a t i v a .  

E n e l c a s o d e l I D A  

∗s e p u e d e v e r c o m o , a l s ó l o g u a r d a r e l c a m i n o a c t u a l , v a r i o s  

n o d o s s o n e x p l o r a d o s v a r i a s v e c e s e n u n a m i s m a i t e r a c i ó n , c o n c r e t a m e n t e e l n o d o E  

e s e x p a n d i d o 2 v e c e s y e l H t r e s v e c e s e n l a p r i m e r a i t e r a c i ó n d e l a l g o r i t m o .  

T a m b i é n s e p u e d e v e r q u e e l c a m i n o a l a s o l u c i ó n q u e s e e n c u e n t r a c o n I D A  

∗e s d i f e -  

r e n t e q u e e l d e A  

∗, y a q u e l a e x p l o r a c i ó n d e l p r i m e r o s i g u e u n a e s t r a t e g i a s i s t e m á t i c a  

e n p r o f u n d i d a d , y p o r l o t a n t o s e e n c u e n t r a e l p r i m e r c a m i n o d e m á s a l a i z q u i e r d a  

q u e l l e v a a l a s o l u c i ó n .  

R e s p e c t o a l a a d m i s i b i l i d a d d e l a f u n c i ó n h e u r í s t i c a , e n e s t e c a s o p o d e m o s v e r e l  

e s p a c i o c o m p l e t o d e b ú s q u e d a , p o r l o q u e e s s e n c i l l o c o m p r o b a r s i e s a d m i s i b l e .  

N i n g u n o d e l o s c a m i n o s q u e l l e v a a l a s o l u c i ó n ( q u e t i e n e 7 c o m o c o s t e r e a l ) v i o l a  

l a c o n d i c i ó n d e a d m i s i b i l i d a d . T o d o s l o s c a m i n o s q u e n o l l e v a n a l a s o l u c i o n t i e n e n  

c o s t e   ∞, p o r l o q u e t a m p o c o l a v i o l a n .  

R e s p e c t o a l a a d m i s i b i l i d a d d e l a f u n c i ó n h e u r í s t i c a , d a d o q u e t e n e m o s e l á r b o l d e  

e x p l o r a c i ó n c o m p l e t o p o d e m o s o b s e r v a r s u c o m p o r t a m i e n t o e n t o d o s l o s n o d o s . E s t a  

e s a d m i s i b l e y a q u e n u n c a s o b r e e s t i m a e l c o s t e r e a l .  

7 . 2 . B ú s q u e d a l o c a l    

1 . D e s e a m o s c o l o c a r u n c o n j u n t o d e   S  s u p e r m e r c a d o s y   A a l m a c e n e s p a r a a b a s t e c e r l o s  

d e n t r o d e u n a c i u d a d . P a r a e l l o d i s p o n e m o s d e u n m a p a d e l a c i u d a d q u e n o s i n d i c a   L

p o s i b l e s l o c a l e s d o n d e p o d e m o s c o l o c a r l o s s u p e r m e r c a d o s y l o s a l m a c e n e s . A d e m á s  

t a m b i é n d i s p o n e m o s d e l n ú m e r o d e s u p e r m e r c a d o s c o m p e t i d o r e s q u e h a y a l r e d e d o r  

d e c a d a l o c a l q u e p u e d e u b i c a r u n s u p e r m e r c a d o .  

E l o b j e t i v o e s c o l o c a r l o s s u p e r m e r c a d o s d e m a n e r a q u e s e m i n i m i c e l a c o m p e t e n c i a  

y q u e s e m a x i m i c e l a d i s t a n c i a e n t r e s u p e r m e r c a d o s . A d e m á s d e s e a m o s c o l o c a r l o s  

a l m a c e n e s d e m a n e r a q u e m i n i m i c e m o s e l r e c o r r i d o q u e h a r á n n u e s t r o s c a m i o n e s d e  

r e p a r t o ( d i s p o n e m o s d e u n a f u n c i ó n   D(li, l j) q u e n o s i n d i c a l a d i s t a n c i a d e l r e c o r r i d o  

ó p t i m o e n t r e c a d a l o c a l )  

E n l o s s i g u i e n t e s a p a r t a d o s s e p r o p o n e n d i f e r e n t e s a l t e r n a t i v a s p a r a a l g u n o s d e l o s  

e l e m e n t o s n e c e s a r i o s p a r a p l a n t e a r l a b ú s q u e d a ( s o l u c i ó n i n i c i a l , o p e r a d o r e s , f u n c i ó n  

h e u r í s t i c a , . . . ) . E l o b j e t i v o e s c o m e n t a r l a s o l u c i ó n q u e s e p r o p o n e r e s p e c t o a s i e s  

c o r r e c t a , e s e c i e n t e , o e s m e j o r o p e o r r e s p e c t o a o t r a s a l t e r n a t i v a s p o s i b l e s . J u s t i c a  

t u r e s p u e s t a .  

a  ) S e p l a n t e a s o l u c i o n a r l o m e d i a n t e H i l l - C l i m b i n g u s a n d o c o m o f u n c i ó n h e u r í s t i c a  

l a s u m a d e l a s d i s t a n c i a s d e l o s l o c a l e s d e c a d a u n o d e l o s   S  s u p e r m e r c a d o s  

Page 69: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 69/75

 

6 4  C A P Í T U L O 7 . P R O B L E M A S R E S U E L T O S  

a l r e s t o , m u l t i p l i c a d o p o r l a s u m a d e l o s s u p e r m e r c a d o s c o m p e t i d o r e s d e c a d a  

s u p e r m e r c a d o  

b  ) S e p l a n t e a s o l u c i o n a r l o m e d i a n t e H i l l - C l i m b i n g u t i l i z a n d o c o m o s o l u c i ó n i n i c i a l  

e l c o l o c a r a l e a t o r i a m e n t e l o s   S  s u p e r m e r c a d o s y l o s   A a l m a c e n e s y u s a n d o c o m o  

o p e r a d o r e s d e b ú s q u e d a m o v e r u n s u p e r m e r c a d o o a l m a c é n a l l o c a l m á s c e r c a n o  

r e s p e c t o a s u p o s i c i ó n a c t u a l .  

c  ) S e p l a n t e a s o l u c i o n a r l o m e d i a n t e H i l l - C l i m b i n g u t i l i z a n d o c o m o s o l u c i ó n i n i c i a l  

e l c o l o c a r l o s s u p e r m e r c a d o s c o n s e c u t i v a m e n t e h a s t a c o l o c a r l o s   S  y p a r a c a d a  

s u p e r m e r c a d o c o l o c a r l o e n e l l o c a l q u e e s t é a m á x i m a d i s t a n c i a r e s p e c t o a l  

l o c a l d o n d e s e c o l o c ó e l s u p e r m e r c a d o a n t e r i o r . S e p l a n t e a n c o m o o p e r a d o r e s  

m o v e r u n s u p e r m e r c a d o a c u a l q u i e r l o c a l c u y a s u m a d e d i s t a n c i a s a l r e s t o d e  

s u p e r m e r c a d o s s e a m a y o r q u e l a s u m a d e d i s t a n c i a s d e l l o c a l a c t u a l y m o v e r u n  

a l m a c é n a c u a l q u i e r l o c a l c u y a s u m a d e d i s t a n c i a s a l r e s t o d e s u p e r m e r c a d o s  

s e a m e n o r q u e l a d i s t a n c i a d e l l o c a l a c t u a l  

d  ) P l a n t e a m o s d i v i d i r e l p r o b l e m a e n d o s p a r t e s u n a p a r a l o s s u p e r m e r c a d o s y o t r a  

p a r a l o s a l m a c e n e s . E l p r o b l e m a d e l o s a l m a c e n e s s e r e s u e l v e u n a v e z u b i c a d o s  

l o s s u p e r m e r c a d o s . U t i l i z a m o s H i l l - C l i m b i n g p a r a s o l u c i o n a r l o , n o s p l a t e a m o s  

c o m o o p e r a d o r a s i g n a r u n a l m a c é n a u n s u p e r m e r c a d o y c o m o f u n c i ó n h e u r í s t i c a  

l a s u m a d e l a s d i s t a n c i a s d e t o d o s l o s s u p e r m e r c a d o s a l a l m a c é n q u e t i e n e n  

a s i g n a d o  

e  ) P l a n t e a m o s d i v i d i r e l p r o b l e m a e n d o s p a r t e s , u n a p a r a l o s s u p e r m e r c a d o s y o t r a  

p a r a l o s a l m a c e n e s . E l p r o b l e m a d e l o s s u p e r m e r c a d o s l o r e s o l v e m o s m e d i a n t e  

a l g o r i t m o s g e n é t i c o s . P a r a r e p r e s e n t a r e l p r o b l e m a u t i l i z a m o s u n a t i r a d e  

Lb i t s y c o m o p o b l a c i ó n i n i c i a l g e n e r a m o s   n i n d i v i d u o s d o n d e e n c a d a u n o h a y  

e x a c t a m e n t e   S  b i t s a 1 . L a f u n c i ó n h e u r í s t i c a e s l a s u m a d e d i s t a n c i a s d e c a d a  

s u p e r m e r c a d o a l r e s t o m a s u n a c o n s t a n t e p o r l a s u m a d e l a c o m p e t e n c i a d e c a d a  

l o c a l . C o m o o p e r a d o r e s u s a m o s l o s o p e r a d o r e s h a b i t u a l e s d e c r u c e y m u t a c i ó n .  

E s t e p r o b l e m a c o r r e s p o n d e a l p r o b l e m a n ú m e r o 3 d e l c a p í t u l o 3 d e l a c o l e c c i ó n d e  

p r o b l e m a s  

S o l u c i ó n :  

a  ) L a f u n c i ó n h e u r í s t i c a s ó l o t i e n e e n c u e n t a u n a p a r t e d e l p r o b l e m a y n o o p t i m i z a  

l a d i s t a n c i a a l o s c e n t r o s d e r e p a r t o .  

S i e s t a m o s m i n i m i z a n d o l a f u n c i ó n d e b e r í a d e c r e c e r , l o c u a l e s f a l s o r e s p e c t o a  

l a s u m a d e l a s d i s t a n c i a s d e l o s l o c a l e s e n t r e e l l o s , d e b e r í a s e r e l n e g a t i v o d e e s a  

f u n c i ó n . P o r o t r o l a d o , m u l t i p l i c a n d o p o r l a c o m p e t e n c i a e s t a r í a m o s p e n a l i z a n d o  

u b i c a c i o n e s d o n d e l a c o m p e t e n c i a f u e r a g r a n d e l o c u a l e s c o r r e c t o .  

Page 70: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 70/75

 

7 . 2 . B Ú S Q U E D A L O C A L   6 5 

b  ) L a s o l u c i ó n i n i c i a l e s c o r r e c t a , y a q u e n o s d a r í a u n a u b i c a c i ó n p a r a s u p e r m e r -  

c a d o s y a l m a c e n e s . A d e m á s e l c o s t e d e h a l l a r l a e s p e q u e ñ o  

M o v e r u n s u p e r m e r c a d o o a l m a c é n a l l o c a l m a s c e r c a n o n o s m a n t i e n e d e n t r o  

d e l a s s o l u c i o n e s y t i e n e u n f a c t o r d e r a m i c a c i ó n p e q u e ñ o , d e m a n e r a q u e d e  

c a d a e s t a d o s o l o p o d e m o s l l e g a r a   S + A e s t a d o s . E l c o s t e d e h a l l a r e l l o c a l m á s  

c e r c a n o p o d r í a s e r u n p r o b l e m a y a q u e t e n d r í a m o s q u e b u s c a r l o p a r a c a d a l o c a l .  

c  ) L a m a n e r a d e c o l o c a r l o s s u p e r m e r c a d o s p o d r í a s e r a l g o m e j o r q u e h a c e r l o a l e a -  

t o r i a m e n t e , p e r o n o n o s a s e g u r a q u e n o s d e j e e n u n a s o l u c i ó n i n i c i a l m e j o r y a  

q u e a l c o l o c a r u n s u p e r m e r c a d o s ó l o n o s j a m o s e n e l s u p e r m e r c a d o a n t e r i o r  

y e s o n o n o s a s e g u r a n a d a r e s p e c t o a l r e s t o . A d e m á s e l c o s t e d e c o l o c a r c a -  

d a s u p e r m e r c a d o e s r e l a t i v a m e n t e g r a n d e y a q u e d e b e m o s b u s c a r e l l o c a l m á s  

a l e j a d o .  

E l o p e r a d o r p r o p u e s t o t i e n e u n f a c t o r d e r a m i c a c i ó n m a y o r q u e e l a n t e r i o r ,  

p e r o n o d e m a s i a d o g r a n d e . E l c o s t e d e c a l c u l a r l o s l o c a l e s a d o n d e d e s p l a z a r e l  

s u p e r m e r c a d o e s b a s t a n t e g r a n d e , y a q u e t e n e m o s q u e c a l c u l a r p a r a c a d a l o c a l  

p o s i b l e l a s u m a d e l a s d i s t a n c i a s a l o s l o c a l e s d o n d e e s t á n l o s o t r o s s u p e r m e r -  

c a d o s o a l m a c e n e s .  

d  ) E l o p e r a d o r e s c o r r e c t o , n o s m a n t i e n e d e n t r o d e l a s s o l u c i o n e s , e l f a c t o r d e r a -  

m i c a c i ó n s e r í a e l n u m e r o d e s u p e r m e r c a d o s , l o c u a l p o d r í a s e r u n p o c o g r a n d e .  

L a s u m a d e l a s d i s t a n c i a s d e l o s s u p e r m e r c a d o s a l a l m a c é n n o s p o d r í a d a r u n a  

i d e a d e l a l o n g i t u d d e l r e c o r r i d o ( c u a n t o m á s c e r c a e s t é n l o s s u p e r m e r c a d o s e s t e  

r e c o r r i d o s e r á m á s p e q u e ñ o ) , p e r o n o e s e x a c t a m e n t e l o q u e q u e r e m o s m i n i m i z a r .  

E v i d e n t e m e n t e e s m u c h o m e n o s c o s t o s o q u e c a l c u l a r e l c o s t e d e l c a m i n o m í n i m o  

e n t r e c a d a s u p e r m e r c a d o y s u a l m a c é n , p o r l o q u e s e r í a u n a b u e n a a p r o x i m a c i ó n .  

e  ) L a r e p r e s e n t a c i ó n e s c o r r e c t a , u n a s o l u c i ó n e s u n a a s i g n a c i ó n d e s u p e r m e r c a d o s  

a l o c a l e s , l o c u a l s e p u e d e r e p r e s e n t a r i n d i c a n d o s i u n l o c a l t i e n e s u p e r m e r c a d o  

o n o . L a f o r m a d e g e n e r a r l a s s o l u c i o n e s i n i c i a l e s t a m b i é n e s c o r r e c t a , t o d a s s o n  

s o l u c i ó n .  

E s t a m o s c o m b i n a n d o d o s e l e m e n t o s e n l a f u n c i ó n h e u r í s t i c a , p r i m e r o l a s e p a -  

r a c i ó n e n t r e s u p e r m e r c a d o s , e s t o y a s e c o n s i d e r a c o r r e c t a m e n t e c o n l a s u m a d e  

l a s d i s t a n c i a s e n t r e s u p e r m e r c a d o s , a m a y o r s u m a m a y o r s e p a r a c i ó n . L a p e n a l i -  

z a c i ó n r e s p e c t o a l a c o m p e t e n c i a d e b e r í a t e n e r s i g n o c o n t r a r i o , y a q u e a m a y o r  

c o m p e t e n c i a p e o r e s l a s o l u c i ó n , a s í q u e l a f u n c i o n d e b e r í a s e r :  

E n c a s o d e q u e e l a l g o r i t m o m i n i m i z e :  

- S u m a d e d i s t a n c i a s + K * S u m a d e c o m p e t e n c i a  

S i e l a l g o r i t m o m a x i m i z a s o l o t e n e m o s q u e c a m b i a r e l s i g n o .  

L o s o p e r a d o r e s h a b i t u a l e s d e c r u c e y m u t a c i ó n n o n o s a s e g u r a r á n q u e o b t e n g a -  

m o s s o l u c i o n e s a l a p l i c a r l o s  

Page 71: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 71/75

 

6 6  C A P Í T U L O 7 . P R O B L E M A S R E S U E L T O S  

7 . 3 . J u e g o s    

1 . L a s i g u i e n t e g u r a m u e s t r a e l á r b o l d e b ú s q u e d a d e p r o f u n d i d a d 4 p a r a u n d e t e r -  

m i n a d o j u e g o p a r a e l j u g a d o r M A X . L o s v a l o r e s d e l o s n o d o s t e r m i n a l e s i n d i c a n e l  

v a l o r d e l a f u n c i ó n d e e v a l u a c i ó n p a r a l a p o s i c i ó n o b t e n i d a e n d i c h o n o d o .  

4 9 5 6 7 2 3 4 9 2 3 4 6 9 0 1 10 8 9 9 8 9

a  ) U t i l i z a e l a l g o r i t m o M i n i m a x p a r a d e c i d i r q u é j u g a d a d e b e e s c o g e r M A X , i n -  

d i c a n d o c l a r a m e n t e l o s v a l o r e s d e l a f u n c i ó n d e e v a l u a c i ó n p r o p a g a d o s a c a d a  

n o d o .  

b  ) R e p i t e l a e x p l o r a c i ó n d e l a p a r t a d o a n t e r i o r u t i l i z a n d o l a p o d a a l f a - b e t a . I n d i c a  

c l a r a m e n t e l a e v o l u c i ó n d e l o s v a l o r e s d e a l f a y b e t a y l o s n o d o s q u e s e p o d a n .  

c  ) ¾ C r e e s q u e m o d i c a n d o e l o r d e n d e g e n e r a c i ó n d e n o d o s p o d r í a p o d a r s e u n  

m a y o r n ú m e r o d e n o d o s ? J u s t i c a b r e v e m e n t e l a r e s p u e s t a .  

E s t e p r o b l e m a c o r r e s p o n d e a l p r o b l e m a n ú m e r o 4 d e l c a p í t u l o 4 d e l a c o l e c c i ó n d e  

p r o b l e m a s  

S o l u c i ó n :  

a  ) L a e j e c u c i ó n d e l m i n i m a x d a r í a e l s i g u i e n t e r e s u l t a d o :  

Page 72: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 72/75

 

7 . 3 . J U E G O S   6 7 

4 9 5 6 7 2 3 49

2 3 4 6 9 0 1 10 8 9 9 8 9

4 5 2 2 3 6 0 8 9 8

5 6 8 9

5 8

8

b  ) L a e j e c u c i ó n d e l m i n i m a x c o n p o d a a l f a - b e t a d a r í a e l s i g u i e n t e r e s u l t a d o :  

6 7 2 3 4

α=

β=

α=

β=

α=

β= +inf 

−inf,4,5

α=

β=

α=β=

α=

β=

α=

β= +inf,5

−inf,2,3

α=β=

α=

β=

α=

β=

4 9 6 99 2 3 45

−inf 

+inf,4

−inf ,4

 

+inf,5 +inf,2

−inf +inf,5,2

+inf,5,3 +inf,5

+inf,5

−inf 

+inf 

−inf,5

5 2 3

Page 73: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 73/75

 

6 8  C A P Í T U L O 7 . P R O B L E M A S R E S U E L T O S  

9 9

α=

β=

α=

β=

α=

β=

α=β=

5+inf,8

α=

β=

α=

β=

α=

β=

10 80 1 8 9

5

+inf,0

5

+inf,10,8

+inf 

5,8

5

8

8

5,8

+inf 

−inf,5,8

c  ) E v i d e n t e m e n t e e l o r d e n e n q u e e s t á n l o s n o d o s a f e c t a a l a c a n t i d a d d e n o d o s  

p o d a d o s .  

7 . 4 . S a t i s f a c c i ó n d e r e s t r i c c i o n e s    

1 . D a d o e l s i g u i e n t e g r a f o d e r e s t r i c c i o n e s d o n d e c a d a r e s t r i c c i ó n e s u n a c o n d i c i ó n d e  

d e s i g u a l d a d y l o s s i g u i e n t e s d o m i n i o s p a r a l a s v a r i a b l e s :  

A = { 1 , 2 , 3 }  

B = { 1 , 2 }  

C = { 2 , 3 }  

D = { 2 , 3 }  

E = { 1 , 2 , 3 }  

Page 74: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 74/75

 

7 . 4 . S A T I S F A C C I Ó N D E R E S T R I C C I O N E S   6 9 

A D

E

CB

H a z l a e j e c u c i ó n d e l b a c k t r a c k i n g c r o n o l ó g i c o h a s t a e l p r i m e r b a c k t r a c k i n g a l a v a -  

r i a b l e A y d e l f o r w a r d c h e c k i n g h a s t a e n c o n t r a r l a p r i m e r a s o l u c i ó n  

E s t e p r o b l e m a c o r r e s p o n d e a l p r o b l e m a n ú m e r o 1 7 d e l c a p í t u l o 5 d e l a c o l e c c i ó n d e  

p r o b l e m a s  

S o l u c i ó n :  

B a c k t r a c k i n g c r o n o l o g i c o  

1 ) A = 1  

2 ) B =  1, 2 

3 ) C =   2, 3 

4 ) D =  2, 3

7 ) C =   38 ) B =  

29 ) A =   1, 2 

Page 75: Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda

5/13/2018 Inteligencia Artificial Resolucion de Problemas Algoritmos de Busqueda - slidepdf.com

http://slidepdf.com/reader/full/inteligencia-artificial-resolucion-de-problemas-algoritmos-de-busqueda 75/75

 

7 0  C A P Í T U L O 7 . P R O B L E M A S R E S U E L T O S  

F o r w a r d c h e c k i n g  

1 ) A = 1  

B = { 1 , 2 } 

C = { 2 , 3 }  

D = { 2 , 3 }  

E = {  1, 2 , 3 }  

2 ) B = 2  

C = {  2, 3 } 

D = { 2, 3 } 

E = { 2, 3 } 

3 ) C = 3  

D = ∅

E = { 3 }  

B a c k t r a c k i n g a A  

4 ) A = 2  

B = { 1 ,  2} 

C = {  2, 3 } 

D = { 2 , 3 }  

E = { 1 ,  2, 3 } 

5 ) B = 1  

C = { 3 }  

D = { 2 , 3 }  

E = { 1, 3 } 

6 ) C = 3  

D = { 2 ,  3} 

E = { 3 }  

7 ) D = 2  

E = { 3 }  

8 ) E = 3