• Aucun résultat trouvé

2.3 Résolution de la redondance

2.3.2 Redondance dynamique

O modelo de programação linear inteira mista representa parte dos aspetos descritos na secção 4.2.2.1, por forma a ceder uma solução ótima de programação da produção. A tabela 17 revela quais as condições atendidas pelo modelo de otimização.

Tabela 17 Verificação da inclusão de cada consideração inicial no modelo matemático. Lista de verificação das considerações iniciais no modelo PLIM:

Minimização do atraso total;

Datas de entrega ao forno de chacote;

Disponibilidade permanente das máquinas;

Máquinas paradas ou em atividade;

Elegibilidade de máquinas;

Ininterrupção de lotes;

Total diário de setups em todo o sistema;

Relação entre setups e dias úteis e não úteis;

Alocação de referências urgentes, com prazo de entrega inferior à dimensão do horizonte temporal;

Alocação de referências com necessidade, com prazo de entrega superior à dimensão do horizonte temporal;

Alocação de amostras e pré-produções.

Disponibilidade dos moldes;

Total de cavidades de moldes em utilização em todo o sistema;

Estado de ocupação dos cavaletes;

Relação entre cavidades de molde e ocupação dos cavaletes;

Seleção de referências particular para vésperas de feriados e fins-de-semana;

Total de referências em biscuit, em processamento em todo o sistema;

Total de referências com requisição de placas refratárias, em processamento em todo o sistema;

Total de referências com requisição de placas refratárias do tipo grande, em processamento em todo o sistema;

Total de referências de lastras, em processamento em todo o sistema;

Total de referências com requisição de lastras, em processamento em todo o sistema;

Precedência de 1 dia no processamento de referências com requisição de lastras e as próprias lastras;

Dimensionamento de lotes;

Trata-se, assim, de uma variante mais simplificada de representação do problema, apresentada com as seguintes notações:

• Índices:

𝑵 – Número de referências a agendar. 𝑖 = 1, 2, … , 𝑁

𝑴 – Número de máquinas paralelas não relacionadas. 𝑗 = 1, 2, … , 𝑀 𝑻 – Número de períodos (dias) do horizonte temporal. 𝑡 = 0,1, … , 𝑇

𝑼 – Limite superior do total, em todo o sistema, de setups de máquinas praticados num dia. • Parâmetros:

𝑬𝒊 – Número de períodos (dias) entre o período 𝑡 = 0 e o período correspondente à data de entrega

da referência 𝑖 ao forno de chacote.

𝑷𝒊𝒋 – Número de períodos (dias) de processamento da referência 𝑖 na máquina 𝑗.

𝑴𝒆𝒊𝒋 – Conjunto de máquinas 𝑗 elegíveis de cada referência 𝑖: {1, se a máquina 𝑗 é compatível com

o molde da referência 𝑖; 0, em caso contrário}.

𝒓𝒋 – Conjunto de referências em processamento no período 𝑡 = 0, nas máquinas 𝑗.

𝑫𝒊𝒂𝒕 {1, se o período 𝑡 corresponde a um dia útil; 0, se o período 𝑡 corresponde a um sábado,

domingo ou feriado}. • Variáveis de Decisão:

𝒙𝒊𝒋𝒕 {1, se a máquina 𝑗 inicia o processamento da referência 𝑖 no período 𝑡; 0, caso contrário}.

𝒚𝒊𝒋𝒕 {1, se o processamento da referência 𝑖, na máquina 𝑗, se conserva do período 𝑡 para (𝑡 + 1);

0, caso contrário}.

𝑪𝒊 – Período de conclusão do processamento da referência 𝑖.

𝑨𝒊 – Atraso na conclusão do processamento da referência 𝑖, atendendo ao período correspondente

à sua data de entrega.

O modelo de programação linear inteira mista pode ser formulado tal como se segue: 𝑀𝑖𝑛 ∑(𝐴𝑖+ 𝐶𝑖) 𝑖 (1) 𝐶𝑖

∑ [(𝑡 − 1 + 𝑃

𝑖𝑗

) ⋅ 𝑥

𝑖𝑗𝑡

]

𝑗: 𝑀𝑒𝑖𝑗=1

≥ 0 ,

∀ 𝑖, 𝑡: 𝑡 ≥ 1 (2)

(

𝐶𝑖

𝐸𝑖

) ≤

𝐴𝑖

,

∀ 𝑖 (3)

∑ 𝑥𝑖𝑗𝑡 𝑖: 𝑀𝑒𝑖𝑗 =1 ≤ 1, ∀ 𝑗, 𝑡: 𝑡 ≥ 1 (4) ∑ ∑ 𝑥𝑖𝑗𝑡 𝑇 t=1 𝑗: 𝑀𝑒𝑖𝑗=1 = 1, ∀ 𝑖: 𝑖 ≠ 𝑟𝑗 (5) 𝑦𝑖𝑗𝑣 ≥ 𝑥𝑖𝑗𝑡, ∀ 𝑖, 𝑗: 𝑀𝑒𝑖𝑗 = 1 , ∀ 𝑡, 𝑣: (𝑡 ≥ 1) ∧ (𝑣 ≥ 𝑡) ∧ (𝑣 < (𝑡 − 1 + 𝑃𝑖𝑗)) (6) ∑ ∑ 𝑦𝑖𝑗𝑡 𝑗 𝑇 t=1 ≤ (𝑃𝑖𝑗− 1), ∀ 𝑖 (7) 𝑥𝑖𝑗𝑡+ 𝑥𝑧𝑗𝑣≤ 1, ∀ 𝑗, 𝑖, 𝑧: (𝑧 ≠ 𝑖) ∧ (𝑀𝑒𝑖𝑗= 1) ∧ (𝑀𝑒𝑧𝑗 = 1) , ∀ 𝑡, 𝑣: (𝑡 ≥ 1) ∧ (𝑣 ≥ 𝑡) ∧ (𝑣 ≤ (𝑡 − 1 + 𝑃𝑖𝑗)) (8) 𝑥𝑖𝑗𝑡+ 𝑦𝑧𝑗𝑣≤ 1, ∀ 𝑗, 𝑖, 𝑧: (𝑧 ≠ 𝑖) ∧ (𝑀𝑒𝑖𝑗= 1) ∧ (𝑀𝑒𝑧𝑗 = 1) , ∀ 𝑡, 𝑣: (𝑡 ≥ 1) ∧ (𝑣 ≥ 𝑡) ∧ (𝑣 ≤ (𝑡 − 1 + 𝑃𝑖𝑗)) (9) 𝑥𝑖𝑗𝑡+ 𝑦𝑧𝑗(𝑡−1)≤ 1, ∀ 𝑗, 𝑖, 𝑧: (𝑧 ≠ 𝑖) ∧ (𝑀𝑒𝑖𝑗= 1) ∧ (𝑀𝑒𝑧𝑗= 1) , ∀ 𝑡: 𝑡 ≥ 1 (10) ∑ ∑ 𝑥𝑖𝑗𝑡 𝑗: 𝑀𝑒𝑖𝑗=1 𝑖 ≤ 𝑈 , ∀ 𝑡: (𝐷𝑖𝑎𝑡 = 1) ∧ (𝑡 ≥ 1) (11) ∑ ∑ 𝑥𝑖𝑗𝑡 𝑗: 𝑀𝑒𝑖𝑗=1 𝑖 = 0 , ∀ 𝑡: (𝐷𝑖𝑎𝑡= 0) ∧ (𝑡 ≥ 1) (12) 𝑥𝑖𝑗0= 0

,

∀ 𝑖, 𝑗 (13) 𝑥𝑟𝑗𝑗𝑡= 0

,

∀ 𝑗, 𝑡 (14) ∑ 𝑦𝑟𝑗𝑗𝑡 𝑃𝑟𝑗𝑗−1 𝑡=0 = (𝑃𝑟𝑗𝑗− 1)

,

∀ 𝑗 (15) 𝐶𝑟𝑗= (𝑃𝑟𝑗𝑗− 1)

,

∀ 𝑗 (16)

𝑥

𝑖𝑗𝑡

∧ 𝑦

𝑖𝑗𝑡

∈ {0,1} ,

∀ 𝑖, 𝑗, 𝑡 (17) 𝐶𝑖

𝐴𝑖

∈ 𝑁

+

,

∀ 𝑖 (18)

A função-objetivo (1) procura antecipar, para todas as referências, a conclusão dos seus processamentos, minimizando o atraso entre as suas datas de entrega ao forno de chacote e os respetivos períodos de finalização, obtidos através da restrição (2). O cálculo do atraso, para qualquer referência, é efetuado a partir da restrição (3), isto é, da diferença entre o seu período de conclusão e a sua data de entrega. Caso resulte num valor negativo, o atraso é considerado zero, pois trata-se de uma variável que toma apenas valores inteiros positivos.

Na restrição (4) é indicado que em qualquer máquina, em qualquer período, esta encontra- se ou parada, ou a processar uma referência com ela compatível. Por outro lado, a restrição (5) garante que cada referência inicia certamente o seu processamento numa das suas máquinas elegíveis, exceto aquelas que, no período 0, estão já em produção em ambiente fabril. Note-se que o programa produtivo, em real funcionamento, nesse período, é um dado adquirido, que constitui a base da construção da solução concedida pelo modelo PLIM.

A restrição (6) permite assegurar que as referências conservam o seu processamento de um período para o outro, numa dada máquina, atendendo ao período no qual foram iniciadas. A complementar está a restrição (7), que relaciona o número de períodos associado à conservação de uma dada referência, com a duração do seu processamento.

A restrição (8) assegura que, enquanto não terminar o processamento de uma determinada referência, já iniciado numa dada máquina, não se poderá iniciar o de outra, nessa mesma máquina. Em contrapartida, a restrição (9) garante que, enquanto não terminar o processamento de uma dada referência, iniciado numa determinada máquina, não se poderá conservar o processamento de outra, nessa máquina. Quanto à restrição (10), esta certifica-se que o início do processamento de uma referência, numa certa máquina, só acontece se o processamento da referência em atividade nessa máquina, no período anterior, não for conservado no período atual.

As restrições (11) e (12) limitam o número de setups realizados num dia, em todo o sistema, com a consideração adicional dos fins-de-semana e feriados. Por outras palavras, a restrição (11) possibilita, para dias úteis, o planeamento de setups até um limite superior do total de setups diários, ao passo que, para fins-de-semana e feriados, proíbe completamente quaisquer setups, logo o início do processamento de novas referências.

A restrição (13) veda a possibilidade de iniciar a produção de novas referências no período 0, pois este está associado unicamente ao plano em ação no chão-de-fábrica, a partir do qual se descobrirá uma solução de agendamento para os próximos períodos. Consequentemente, as referências que estão em processamento no período 0 nunca iniciarão processamento em nenhum período do horizonte temporal, tal como demonstrado pela restrição (14). Contudo, poderão conservá-lo durante o intervalo de períodos ainda necessário para a sua conclusão (restrição (15)), que decorrerá no último período desse intervalo (restrição (16)).

Por fim, a restrição (17) afirma que as variáveis 𝑥𝑖𝑗𝑡 e 𝑦𝑖𝑗𝑡 só tomam valores binários,

enquanto que a (18) garante que o período de conclusão e o atraso das referências admitem apenas valores inteiros positivos.