stringtranslate.com

Codicioso

En combinatoria , un codicioso es un tipo de sistema de conjuntos . Surge de la noción de matroide , que fue introducida originalmente por Whitney en 1935 para estudiar gráficos planos y posteriormente utilizada por Edmonds para caracterizar una clase de problemas de optimización que pueden resolverse mediante algoritmos codiciosos . Alrededor de 1980, Korte y Lovász introdujeron el codicioso para generalizar aún más esta caracterización de algoritmos codiciosos; de ahí el nombre codicioso. Además de la optimización matemática , los greedoids también se han relacionado con la teoría de grafos , la teoría del lenguaje, la teoría del orden y otras áreas de las matemáticas .

Definiciones

Un sistema de conjuntos ( F , E ) es una colección F de subconjuntos de un conjunto fundamental E (es decir, F es un subconjunto del conjunto potencia de E ). Cuando se considera un codicioso, un miembro de F se llama conjunto factible . Cuando se considera una matroide , un conjunto factible también se conoce como conjunto independiente .

Un sistema de conjuntos accesible ( F , E ) es un sistema de conjuntos en el que todo conjunto factible no vacío X contiene un elemento x tal que sea factible. Esto implica que cualquier sistema de conjuntos accesible, finito y no vacío contiene necesariamente el conjunto vacío ∅. [1]

Un greedoid ( F , E ) es un sistema de conjuntos accesible que satisface la propiedad de intercambio :

(Nota: algunas personas reservan el término propiedad de intercambio para una condición basada en un greedoide y prefieren llamar a la condición anterior “propiedad de aumento”.)

Una base de un greedoide es un conjunto máximo factible, lo que significa que es un conjunto factible pero no está contenido en ningún otro. Una base de un subconjunto X de E es un conjunto máximo factible contenido en X.

El rango de un codicioso es del tamaño de una base. Según la propiedad de intercambio, todas las bases tienen el mismo tamaño. Por tanto, la función de rango está bien definida . El rango de un subconjunto X de E es el tamaño de una base de X. Al igual que las matroides, los codiciosos tienen un criptomorfismo en términos de funciones de rango. [2] Una función es la función de rango de un codicioso en el conjunto terrestre E si y solo si r es subcardinal , monótono y localmente semimodular , es decir, para cualquiera y cualquiera tenemos:

Clases

La mayoría de las clases de greedoids tienen muchas definiciones equivalentes en términos de sistema de conjuntos, lenguaje, poset, complejo simplicial , etc. La siguiente descripción sigue la ruta tradicional de enumerar sólo un par de las caracterizaciones más conocidas.

Un greedoid de intervalo ( F , E ) es un greedoid que satisface la propiedad del intervalo :

De manera equivalente, un greedoide de intervalo es un greedoide tal que la unión de dos conjuntos factibles cualesquiera es factible si está contenido en otro conjunto factible.

Un antimatroide ( F , E ) es un codicioso que satisface la propiedad de intervalo sin límites superiores :

De manera equivalente, un antimatroide es (i) un codicioso con una base única; o (ii) un sistema de conjunto accesible cerrado bajo unión. Es fácil ver que un antimatroide es también un codicioso de intervalo.

Una matroide ( F , E ) es un greedoid no vacío que satisface la propiedad de intervalo sin límites inferiores :

Es fácil ver que una matroide también es un codicioso de intervalo.

Ejemplos

Algoritmo codicioso

En general, un algoritmo codicioso es simplemente un proceso iterativo en el que en cada ronda se elige la mejor opción local , generalmente una entrada de peso máximo, hasta que se hayan agotado todas las opciones disponibles. Para describir una condición basada en la avaricia en la que un algoritmo codicioso es óptimo (es decir, obtiene una base de valor máximo), necesitamos algunas terminologías más comunes en la teoría de la avaricia. Sin pérdida de generalidad , consideramos un codicioso G = ( F , E ) con E finito.

Un subconjunto X de E tiene un rango factible si la intersección más grande de X con cualquier conjunto factible tiene un tamaño igual al rango de X. En una matroide, cada subconjunto de E tiene un rango factible. Pero la igualdad no se cumple para los codiciosos en general.

Una función es compatible con R si su rango es factible para todos los números reales c .

Una función objetivo es lineal sobre un conjunto si, por lo demás, tenemos alguna función de peso

Proposición. Un algoritmo codicioso es óptimo para cada función objetivo lineal compatible con R sobre un codicioso.

La intuición detrás de esta proposición es que, durante el proceso iterativo, cada intercambio óptimo de peso mínimo es posible gracias a la propiedad de intercambio, y se pueden obtener resultados óptimos a partir de los conjuntos factibles en el greedoide subyacente. Este resultado garantiza la optimización de muchos algoritmos conocidos. Por ejemplo, se puede obtener un árbol de expansión mínimo de un gráfico ponderado utilizando el algoritmo de Kruskal , que es un algoritmo codicioso para el ciclo matroide. El algoritmo de Prim se puede explicar tomando en su lugar la línea de búsqueda greedoid.

Ver también

Referencias

  1. ^ Tenga en cuenta que la propiedad de accesibilidad es estrictamente más débil que la propiedad hereditaria de una matroide , que requiere que cada subconjunto de un conjunto independiente sea independiente.
  2. ^ Björner, Anders ; Ziegler, Günter M. (1992), "8. Introducción a los greedoids", en White, Neil (ed.), Matroid Applications , Encyclopedia of Mathematics and its Applications, vol. 40, Cambridge: Cambridge University Press, págs. 284–357, doi :10.1017/CBO9780511662041.009, ISBN 0-521-38165-7, SEÑOR  1165537, Zbl  0772.05026

enlaces externos