Anda di halaman 1dari 3

2.3.3.

Algoritmo QuineMcCluskey
El Algoritmo QuineMcCluskey es un mtodo de simplificacin de funciones booleanas
desarrollado por Willard Van Orman Quine y Edward J. McCluskey. Es funcionalmente
idntico a la utilizacin del mapa de Karnaugh, pero su forma tabular lo hace ms
eficiente para su implementacin en lenguajes computacionales, y provee un mtodo
determinstico de conseguir la mnima expresin de una funcin booleana. Aunque
cuando se trata de trabajar con ms de cuatro variables, el tiempo de resolucin del
algoritmo Quine-McCluskey crece de forma exponencial con el aumento del nmero de
variables. Se puede demostrar que para una funcin de n variables el lmite superior del
nmero de implicantes primos es 3n/n. Si n=32 habr ms de 6.5*1015 implicantes
primos. Funciones con un nmero grande de variables tienen que ser minimizadas con
otros mtodos heursticos.
Terminologa para la simplificacin
A continuacin definiremos algunos trminos comnmente utilizados en los procesos de
simplificacin de funciones lgicas.
Implicante: Conjunto de unos en un mapa de Karnaugh que representa un trmino
producto de variables. Se denomina implicante porque cuando este trmino toma el
valor 1, implica que tambin la funcin toma el valor 1. Un mintrmino solo es un
implicante.
Implicante Primo: Implicante que no est incluido completamente dentro de otro
implicante. No puede combinarse con otro implicante para eliminar un literal.
Implicante Primo Esencial: Implicante primo que contiene uno o mas mintrminos que
no estn incluidos en cualquier otro implicante primo.
En el siguiente mapa de Karnaugh:
Los trminos I II y III son implicantes primos
El termino IV no es implicante primo
Los trminos I y III son implicantes primos
esenciales
El termino II no es un implicante primo esenciales
La funcin se obtiene con los trminos I y III

Pasos para la Simplificacin


El algoritmo de Quine-McCluskey consta de dos pasos:
1. Encontrar todos los implicantes primos de la funcin.
2. Usar esos implicantes en una tabla de implicantes primos para encontrar los
implicantes primos esenciales, los cuales son necesarios y suficientes para generar la
funcin.

Ejemplo
Minimice la funcin siguiente utilizando el mtodo de Quine-McCluskey:

Paso 1:
Se colocan en una tabla todos los minitrminos evaluados en la funcin como
agrupndolos respecto a la cantidad de unos que contienen. Los trminos prescindibles
tambin son agregados a la tabla, estos pueden combinarse con los minitrminos:

En este punto, uno puede empezar a combinar los minitrminos entre s. Si dos
minitrminos slo varan en un solo dgito, ese dgito debe reemplazarse por un guin
"-" indicando que ese bit no importa. Los trminos que ya no pueden combinarse ms
son marcados con "*".

Paso 2:
Los trminos marcados con "*" ya no pueden combinarse ms, en este punto ya
tenemos la tabla de implicantes primos. En el costado van los implicantes primos
recientemente generados, y en la parte superior los minitrminos utilizados. Los
minitrminos correspondientes a los prescindibles son omitidos en este paso, no se
colocan en la parte superior.

En esta tabla vemos los minitrminos que "cubre" cada implicante primo. Ninguno de
los implicantes de esta tabla est incluido dentro de otro (esto queda garantizado en el
paso uno), pero si puede estar "cubierto" por dos o ms implicantes. Es el caso de
m(8,9,10,11) que est cubierto por m(8,10,12,14) y m(10,11,14,15) o m(8,10,12,14) que
est cubierto por m(8,9,10,11) y m(4,12). Por este motivo, cada uno de estos dos
implicantes slo son esenciales en ausencia del otro. Un proceso adicional simple para
reducir estos implicantes es prueba y error, pero un proceso ms sistemtico es el
mtodo de Petrick. En el caso que estamos analizando, los dos implicantes primos
m(4,12) y m(10,11,14,15) no llegan a incluir todos los minitrminos por lo que podemos
combinar estos implicantes con cada uno de los implicantes no esenciales para
conseguir dos funciones mnimas:

Anda mungkin juga menyukai