Quão fundamentais são os matroids e greedoids no design de algoritmos?


23

Inicialmente, matróides foram introduzidas generalizar as noções de independência linear de uma coleção de subconjuntos sobre algum terreno definir . Certos problemas que contêm essa estrutura permitem que algoritmos gananciosos encontrem soluções ideais. Mais tarde, o conceito de greedoids foi introduzido para generalizar essa estrutura para capturar mais problemas que permitem encontrar soluções ideais por métodos gananciosos.EEu

Com que frequência essas estruturas surgem no design de algoritmos?

Além disso, na maioria das vezes um algoritmo ganancioso não será capaz de capturar completamente o que é necessário para encontrar soluções ideais, mas ainda assim poderá encontrar soluções aproximadas muito boas (Bin Packing, por exemplo). Dado isso, existe uma maneira de medir o quão "próximo" é um problema de um greedoide ou matroide?

Respostas:


18

É difícil responder à pergunta "com que frequência". Mas, como em todas as "estruturas subjacentes", o benefício vem do reconhecimento de que o problema subjacente que se está tentando resolver possui uma estrutura matróide (ou greedoide). Não são apenas problemas matróides. O problema de interseção matróide tem um modelo específico (correspondência bipartida).

Nick Harvey fez sua tese de doutorado recentemente sobre algoritmos para problemas de maóides e também analisou a otimização da função submodular (que generaliza problemas de maóides). Ler a introdução e os antecedentes da tese pode ser útil.


4
Eu só quero adicionar uma nota sobre "proximidade". Se um algoritmo ganancioso fornecer uma aproximação k, o problema poderá ser estruturado como um k-matroide.
Nicholas Mancuso

+1. Boa resposta. Eu me pergunto por que a tese diz que uma função submodular é uma generalização ou resumo de um matróide? A única conexão que posso encontrar entre os dois é a classificação de um submatoide em um subconjunto é uma função submodular.
Tim

2
Há uma conexão geométrica muito elegante. Para entender isso melhor, você deve acessar o site en.wikipedia.org/wiki/Polymatroid . Grosso modo, se o politopo associado a uma função submodular tiver propriedades específicas, você obterá um matróide. Para obter mais informações, consulte o livro de Satoru Fujishige: kurims.kyoto-u.ac.jp/~fujishig/Book1a.html
Suresh

4
Conforme indicado no CLRS (página 437 da 3ª edição), a teoria matróide não cobre o problema de seleção de atividades e o problema de codificação de Huffman. A teoria dos greedoides os cobre?
precisa saber é o seguinte
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.