Question
modelo matemático atrelado ao problema da mochila é dado pelo seguinte equacionamento: Max Sujeito à x_(i)in 0,1 Uma alternativa para a obtenção da solução ótima através da resolução do problema de programação inteira é a aplicação da heuristica gulosa do problema da mochila. O algoritmo correspondente ao uso dessa heurística é dado pelos seguintes passos: 1. Ordenar os n itens candidatos a serem colocados na mochila, de capacidade b, em ordem decrescente de valor da razão r_(1)=(u_(i))/(v_(1)) para i=1,ldots ,n Para a nova ordem dos itens, utilize o indice j. 2. Inicialize a capacidade utilizada da mochila, isto é. Cap=b 3. Inicialize o conjunto de itens contidos na mochila com vazio, isto é, Itens=0 4. Inicialize a soma das utilidades, isto é soma ui=0. 5. Para j=1 até n: 6. Se (Cap_(-)usogt =volume do item na ordem i) 7. Inserir item na ordem j na variável Itens 8. Atualizar a capacidade disponive da mochila: Cap =Cap - volume do item na ordem j 9. Atualizar a soma das utilidades da mochila: som a_(n)ui=soma_(n)ui+utilidade do item na ordem j 10. Imprimir os valores contidos em Itens e Cap Aplique a heuristica gulosa para o seguinte conjunto de dados: # Dados do problema Utilidade de se colocar o item j na mochila. ui=[41,33,14,25,32,32,9,19] #Vetor de gasto de recursos do itemj vi=[47,40,17,27,34,23,5,44] # Capacidade da mochila b=100 Acercada solucão encontrada através da heuristica gulosa, assinale a alternativa correta:
Solution
4
(207 Votos)
Carlinhos
Mestre · Tutor por 5 anos
Resposta
Para resolver o problema usando a heurística gulosa, siga os passos fornecidos:1. **Ordenar os itens em ordem decrescente de valor da razão
:** -
-
-
-
-
-
-
-
Ordenando em ordem decrescente:
2. **Inicializar variáveis:** - Capacidade utilizada:
- Conjunto de itens:
- Soma das utilidades:
3. **Iterar pelos itens em ordem:** - Para
: -
- Se
: - Inserir item na ordem j:
- Atualizar capacidade disponível:
- Atualizar soma das utilidades:
- Para
: -
- Se
: - Inserir item na ordem j:
- Atualizar capacidade disponível:
- Atualizar soma das utilidades:
- Para
: -
- Se
: - Inserir item na ordem j:
- Atualizar capacidade disponível:
- Atualizar soma das utilidades:
- Para
: -
- Se
: - Inserir item na ordem j:
- Atualizar capacidade disponível:
- Atualizar soma das utilidades:
- Para
: -
- Não é possível inserir mais itens, pois a capacidade não é suficiente.4. **Resultado final:** - Itens na mochila:
- Capacidade utilizada:
- Soma das utilidades:
Portanto, a alternativa correta é:**Itens na mochila: [6, 7, 5, 4, 1], Capacidade utilizada: 0, Soma das utilidades: 143**