Este projeto utiliza algoritmos de análise combinatória e técnicas de programação em VBA para resolver problemas complexos de otimização logística. O objetivo principal é organizar produtos em bandejas de forma eficiente, considerando restrições como a quantidade de gavetas disponíveis e combinações inteligentes.
-
Distribuição Inteligente de Produtos:
- Identifica quando um produto possui mais de uma gaveta e faz o bloqueio adequado.
- Gerencia e identifica gavetas disponíveis para maximizar o uso eficiente do espaço.
-
Combinações Otimizadas:
- Encontra combinações inteligentes de produtos/gavetas como 9+1, 8+2, 7+3, etc.
- Maximiza o uso de gavetas disponíveis, minimizando espaços vazios.
-
Algoritmos de Backtracking:
- Resolve problemas de combinação utilizando técnicas como:
BacktrackExactMatchAnalyzer
: Identifica mercadorias cuja quantidade de gavetas ajustadas é exatamente igual à meta predefinida.BacktrackAnalyzerMetaPair
: Gera pares otimizados para atender ao número de gavetas desejado.BacktrackAnalyzerCombination
: Procura combinações que somem ao total necessário.
- Resolve problemas de combinação utilizando técnicas como:
-
Integração com Solver do Excel:
- Explora as capacidades de modelagem de problemas do Solver, mas supera suas limitações ao implementar algoritmos personalizados para soluções mais rápidas e inteligentes.
- VBA (Visual Basic for Applications): Para lógica e automação no Excel.
- Microsoft Excel: Como interface para entrada de dados e exibição de resultados.
- Solver do Excel: Para modelagem inicial e resolução de problemas de programação linear.
Identifica produtos que atendem exatamente a uma meta predefinida de gavetas (exemplo: M = 10).
Resultado:
- Mercadorias marcadas com um "X" e removidas da lista.
Composição de pares que juntos completam a quantidade de gavetas desejada.
Resultado:
- Otimização dos pares, começando do menor valor para cima.
Criação de combinações que somam ao total necessário para a bandeja.
Exemplo:
- Item com 7 gavetas procura itens com 3 gavetas para atender à meta de 10.
-
Configuração Inicial:
- Abra o arquivo Excel contendo o código VBA.
- Certifique-se de habilitar macros no Excel.
-
Execução:
- Insira os dados de produtos e suas respectivas gavetas.
- Escolha o algoritmo desejado para executar a otimização.
-
Resultados:
- Os resultados serão exibidos diretamente na planilha, com combinações marcadas ou produtos agrupados conforme os critérios.
Sinta-se à vontade para contribuir com melhorias no projeto, relatando problemas ou sugerindo novos algoritmos. Para colaborar:
- Faça um fork deste repositório.
- Crie um branch para sua feature (
git checkout -b minha-feature
). - Envie um pull request.
Este projeto está sob a licença MIT. Consulte o arquivo LICENSE
para mais informações.
Desenvolvido por Carlos Antonio
💼 LinkedIn: Carlos Antonio
📧 Portfólio: [Carlos Antonio](mailto:carlosantonio@email.com
“A tecnologia abre portas para o futuro, trazendo possibilidades infinitas e transformando sonhos em realidade.” 🚀