Ata de Aula: 28/08/2002
Capitulo: 2.3 Optimization and Trees
Ata de Aula: 28/08/2002
Redator:
Evandro Cesar Bracht 014860
Tópicos Discutidos mais importantes:
1- Grafo com pesos nas arestas
* Um grafo com pesos nas arestas é um grafo com rótulos nas
arestas, os quais podem representar informações sobre distâncias,
custos, etc.
* Com a utilização de pesos nas arestas podemos representar vários
problemas de otimização como sendo um grafo, por exemplo o problema da
conectividade de pontos em uma rede. O problema consiste em encontrar
uma configuração onde todos os pontos estão conectados com um custo
mínimo. Neste caso a árvore geradora de custo mínimo nos dá a solução ótima.
2- Arvore geradora mínima
G = grafo utilizado como exemplo em sala de aula para demonstrar os
algoritmos de geração da arvore mínima.
2.1- Algoritmo de Kruskal
O algoritmo de Kruskal retorna uma arvore geradora mínima ótima. Seguem
abaixo os principais passos tendo como entrada um grafo G conexo e como saída
uma arvore H.
* V(H) <- V(G) * Enquanto H for desconexo * Selecione a menor aresta em E(G) que não foi verificada * se a aresta não formar ciclos em H, acrescente-a a HAplicando o algoritmo temos a arvore resultante
* O algoritmo primeiramente cria uma lista de vértices com atribuições de distancia infinita exceto pro vértice escolhido como o inicial, que ganha distância zero. Posteriormente, a cada passo da iteração é escolhido o vértice que não foi verificado ainda e que possua a menor distancia em relação ao vértice de origem, e as distâncias de seus vizinhos são atualizadas. Estas escolhas de vértices vão definindo a arvore.
3- Arvores na Ciência da Computação
Um dos principais pontos em computação é que as arvores possuem raiz que
nada mais é do que escolher um vértice que vai receber o rotulo de
raiz. Isso traz as definições usuais como vizinhos,
pais, filhos, ancestrais, etc.
Outro ponto relevante nesta parte é uma sub classe das arvores, que são
as arvores binárias, onde cada
nó é folha ou possue no máximo dois filhos, filho da esquerda e filho
da direita. Esta é uma estrutura muito utilizada na computação.