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 você aprendeu no último capítulo, aqui você aprenderá como ajudar um distribuidor que está tentando otimizar a forma como combina seus produtos em remessas. Você colocará tudo o que aprendeu em prática e adquirirá diversos novos detalhes ao longo do caminho.
Tarefa
Compreender os Objetivos
Analisar os objetivos do programa e consultar o vídeo para orientação e inspiração;Localizar o Arquivo Excel
Identificar o arquivo que contém dados sobre bins e padrões industriais para paletes;Importar os Dados
Utilizar uma biblioteca como Pandas para carregar o arquivo Excel, extraindo dados sobre bins e padrões de classificação industrial;Gerar Combinações de Bins
Criar todas as combinações possíveis de bins para agrupá-los em paletes, conforme demonstrado no último capítulo;Avaliar Cada Combinação
Para cada possível combinação de bins:Analisar Cada Palete: calcular propriedades médias (por exemplo, resistência à tração e percentual de defeitos) dos bins em cada palete;
Classificar e Precificar Paletes: atribuir classificações e calcular preços com base nas médias e nos padrões industriais 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;
Identificar a Melhor Combinação
Após determinar a combinação ótima, extrair as tags dos bins correspondentes utilizando os índices das linhas;Exportar Resultados
Salvar os resultados finais, incluindo a melhor combinação e os detalhes associados, de volta em um arquivo Excel;Controle de Qualidade
Conferir a saída do programa com os resultados apresentados no vídeo, garantindo que o preço ótimo corresponda;
Validar as propriedades das paletes em relação aos padrões industriais utilizando cálculos em planilha;
Iterar e Refinar
Projetar o programa com uma abordagem modular para melhor organização;
Ajustar e testar a implementação iterativamente para garantir precisão e confiabilidade.
Importação de Dados
Propriedades dos Bins: importar como uma matriz contendo propriedades como peso, resistência à tração e percentual de defeitos;
Tags dos Bins: importar como uma matriz separada;
Padrões Industriais de Classificação: importar como uma matriz contendo resistência mínima à tração, percentual máximo de defeitos e preço por palete de 3 bins (7500 lbs);
Nomes das Classificações Industriais: importar como um array de células;
Gerar Combinações
Em vez de usar
Generate_Combinations_MMS_M
do capítulo 3, utilizar a funçãoperms
para gerar permutações diretamente;
Identificação das Tags dos Bins
As tags dos bins são registradas como índices que indicam as posições das linhas nos dados originais. Converter esses índices em tags dos bins utilizando os índices das linhas da matriz de tags dos bins;
Garantir que os índices das linhas estejam corretamente correspondentes entre as tags dos bins e os dados originais;
Manipulação de Dimensões e Índices
Matrizes 2D: utilizadas para importar e exportar dados do Excel. Certificar-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;
Abordagem Dividir para Conquistar
Limitar o loop
for
a uma única iteração (por exemplo,for 1:1
) para finalizar o restante do programa e gerar resultados iniciais;Focar em fazer o programa exportar tags dos bins, classificações das paletes e o preço ótimo para o Excel um de cada vez. É possível comentar partes do código para focar em aspectos específicos;
Verificação
Verificar 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, utilizar essas verificações para diagnosticar problemas dentro do loop
for
;
Testar Permutações Específicas
Se os resultados estiverem corretos para uma permutação, mas a combinação ótima não for encontrada, limitar o loop
for
para testar uma permutação específica, comofor 32280:32280
oufor 16640:16640
. Isso permite verificar o desempenho em combinações drasticamente diferentes;
Solução de Problemas
Se o problema persistir após verificar diferentes permutações, pode haver um problema na lógica que seleciona a melhor permutação das iterações avaliadas. Consultar o vídeo para comparar seus resultados e garantir a precisão.
Obrigado pelo seu feedback!