Conteúdo do Curso
Noções Básicas de Matlab
Noções Básicas de Matlab
Aplicação: Problema de Logística
Dando continuidade ao que foi aprendido no capítulo anterior, aqui você aprenderá a ajudar um distribuidor que está tentando otimizar a forma como combina seus produtos em remessas. Você aplicará tudo o que aprendeu na prática e adquirirá diversos novos detalhes ao longo do caminho.
Tarefa
Analisar os objetivos do programa e consultar o vídeo para orientação e inspiração.
Identificar o arquivo que contém dados sobre bins e industry grades para palettes.
Utilizar uma biblioteca como Pandas para carregar o arquivo Excel, extraindo dados sobre bins e industry grading standards.
Criar todas as combinações possíveis de bins para agrupá-los em palettes, conforme demonstrado no capítulo anterior.
Para cada possível combinação de bins:
- Analisar cada palette: calcular propriedades médias (por exemplo, resistência à tração e percentual de defeitos) para os bins em cada palette;
- Classificar e precificar palettes: atribuir grades e calcular preços com base nas médias e nos industry standards do arquivo Excel;
- Comparar preços de venda: acompanhar a melhor combinação comparando o preço total de venda da combinação atual com os resultados anteriores.
Após determinar a combinação ótima, extrair as bin tags correspondentes utilizando índices de linha.
Salvar os resultados finais, incluindo a melhor combinação e detalhes associados, de volta em um arquivo Excel.
- Conferir a saída do programa com os resultados apresentados no vídeo, garantindo que o preço ótimo corresponda;
- Validar as propriedades das palettes em relação aos industry standards utilizando cálculos em planilha.
- Projetar o programa com uma abordagem modular para melhor organização;
- Ajustar e testar a implementação iterativamente para garantir precisão e confiabilidade.
- Propriedades dos bins: importar como uma matriz contendo propriedades como peso, resistência à tração e percentual de defeitos;
- Etiquetas dos bins: importar como uma matriz separada;
- Padrões de classificação da indústria: importar como uma matriz contendo resistência à tração mínima, percentual máximo de defeitos e preço por palete de 3 bins (7500 lbs);
- Nomes das classificações da indústria: importar como um array de células.
Em vez de usar Generate_Combinations_MMS_M
do capítulo 3, utilize a função perms
para gerar permutações diretamente.
- As etiquetas dos bins são registradas como índices que indicam as posições das linhas nos dados originais. Converta esses índices em etiquetas de bins usando os índices de linha da matriz de etiquetas dos bins;
- Certifique-se de que os índices de linha estejam corretamente correspondidos entre as etiquetas dos bins e os dados originais.
- Matrizes 2D: são utilizadas para importar e exportar dados do e para o Excel. Certifique-se de referenciar as linhas e colunas corretas;
- Matrizes 3D: a matriz
palette_permutations
contém todas as possíveis combinações de bins organizadas em uma matriz 3D; - Cada linha representa uma combinação específica de bins em paletes;
- Cada coluna representa o índice de um bin específico;
- A terceira dimensão (1, 2, 3) corresponde a diferentes paletes.
- Limite o loop
for
a uma única iteração (por exemplo,for 1:1
) para finalizar o restante do programa e gerar resultados iniciais; - Foque em fazer o programa exportar etiquetas dos bins, classificações dos paletes e o preço ótimo para o Excel um de cada vez. Você pode comentar partes do código para focar em aspectos específicos.
- Verifique manualmente as propriedades médias de cada palete para garantir que estão corretamente calculadas e classificadas, assim como o preço total da combinação de paletes;
- Se surgirem problemas, utilize essas verificações para diagnosticar falhas dentro do loop
for
.
Se os resultados estiverem corretos para uma permutação, mas uma combinação ótima não for encontrada, limite o loop for
para testar uma permutação específica, como for 32280:32280
ou for 16640:16640
. Isso permite verificar o desempenho em combinações drasticamente diferentes.
Se o problema persistir após verificar diferentes permutações, pode haver um erro na lógica que seleciona a melhor permutação entre as iterações avaliadas. Consulte o vídeo para comparar seus resultados e garantir a precisão.
Obrigado pelo seu feedback!