1) O documento descreve um modelo de programação linear para gerenciar o fluxo de caixa de uma empresa de alimentos institucionais (IFS) ao longo de 8 semanas;
2) O objetivo é minimizar os custos líquidos de juros considerando empréstimos, atrasos no pagamento e investimentos de curto prazo;
3) Várias restrições são consideradas como balanço de caixa, dívida, limite de crédito e manutenção de saldo mínimo.
1. PROGRAMAÇÃO LINEAR Prova 1 INSTITUITIONAL FOOD SERVICES(IFS) CASH FLOW Guilherme Gomes N. de Oliveira Renzo Augusto L. Petri
2. Contextualizando Quase todos os tipos de modelos de PL exigem tempo de escalonamento na tomada de decisões, alguns dos mais óbvios, são os que envolvem gestão de fluxos de caixa. Todas as empresas devem manter um registro das entradas e saídas disponíveis, contraindo empréstimos quando necessário e investindo de maneira sensata (sábia).
3. Problemática – Exemplo 4.6 Nós ilustraremos os problemas com uma modelagem fictícia de uma empresa(IFS) que fornece alimentos e demais produtos para restaurantes, escolas e instituições similares. A Tabela 4.8 mostra as projeções de algumas contas relevantes da (empresa IFS ao longo das próximas 8 semanas (em milhares de dólares). s(sales) = Projeção de receitas em caixa na semana t referente a venda a pequenos clientes; r(receivable) = Projeção de receitas recebidas na semana t de grandes clientes que compram a crédito; p(payable) = Projeção de contas pagas aos fornecedores da empresa(IFS) na semana t; e(expenses) = Projeção de salários, utilitários, e outras despesas a serem pagas na semana t.
4. Vendas e contas recebidas produzem receitas imediatas na conta corrente da empresa (IFS). Assim como os gastos são deduzidos imediatamente na conta corrente. O montante de contas a pagar p(t) não é realmente devido até t + 3 semanas, e são descontados em 2% se forem pagos no início da semana t. Problemática – Continuação
5. Os valores da tabela 4.8 variam drasticamente em períodos próximos a feriados. Além da opção de contas a pagar, o agente financeiro da empresa (IFS) possui outras duas formas de lidar com as dificuldades implícitas do fluxo de caixa. Primeiro, o banco da empresa estendeu em US $ 4 milhões a linha de crédito mediante a 0,2% de juros por semana. No entanto, o banco exige que pelo menos 20% do montante emprestado seja mantido em conta corrente (sem ganhar juros). A outra opção é investir o excesso do dinheiro a curto prazo em mercados monetários. IFS (A empresa) dessa forma pode ganhar 0,1% de juros por semana, sobre o montante investido. O agente financeiro pretende minimizar custo total líquido de juros e descontos perdidos, mantendo em conta corrente por segurança e equilíbrio pelo menos $20.000 dólares. Nossa tarefa é ajudá-lo a decidir como trabalhar com as opções disponíveis. Problemática – Continuação
7. Identificação de Índices e Variáveis Identificação dos Índices: t = Número da semana atual; item = entradas e saídas do caixa; Identificação das Variáveis: s(t) = receitas pequenos clientes na semana t; r(t) = receitas grandes clientes na semana t; p(t) = despesas pagamento fornecedores na semana t; e(t) = despesas pagamento salário e outros na semana t; g(t) = valor emprestado na semana t; h(t) = valor pago do empréstimo na semana t; w(t) = valor a pagar na semana t depois de t+3 semanas atrasadas; y(t) = valor acumulado do empréstimo(dívida) na semana t; x(t) = valor investido durante a semana t; z(t) = valor disponível em caixa na semana t;
8. Colocando nomes nas variáveis: Rec_pq[t] = receitas pequenos clientes na semana t; Rec_gd[t] = receitas grandes clientes na semana t; Desp_pagFor[t] = despesas pagamento fornecedores na semana t; Desp_pagSal[t] = despesas pagamento salário e outros na semana t; Val_emprestado[t] = valor emprestado na semana t; Val_Pg[t] = valor pago do empréstimo na semana t; Val_Pg_atraso[t] = valor a pagar na semana t depois de t+3 semanas atrasadas; Val_investido[t] = valor investido durante a semana t; Val_acumulado[t] = valor acumulado do empréstimo(dívida) na semana t; Val_caixa[t] = valor disponível em caixa na semana t; Nomeando Índices e Variáveis
9. Identificação de algumas constantes: Credito juros = 0,2% de juros por semana; Linha de crédito = US $ 4 milhões; Crédito a manter = 20% do montante emprestado ; Min imo na Conta Corrente = $20.000 dólares. Desconto = 2%; Juros Monetários sobre montante = 0 ,1% de juros por semana, sobre o montante investido. Nomeando e atribuindo os valores as constantes: Cred_sem := 0.002; Lim_cred := 4000; Cred_manter := 0.20; Min_cc := 20; Desc := 0.02; Juros_mon := 0.001; Constantes
10. Minimizar o custo líquido dado por : Custo Líquido = (Acumulado da dívida de crédito) + (Soma valor pago por atraso de ( t+3 ) semanas) – (Soma do lucro sobre valor investido); t= 8 t= 8 t= 8 f(y(t), w(t), x(t)) = 4000*∑ y(t) + 0,02*∑ w(t) - 0,001*∑ x(t) t=1 t=1 t=1 Min f = Lim_cred * SUM(t: Val_acumulado) + Desc * SUM(t: Val_Pg_atraso) -Juros_mon * SUM(t: Val_investido); Função Objetivo
12. Restrições 1 ) Número de Semanas = 1≤ t ≥ 8 2) Caixa na semana t = ( C aixa semana anterior) + ( E mpréstimo) - ( D ívida paga) + ( I nvestimento da semana anterior) – (Investimento) + 0,001*( L ucro investimento semana anterior) – 0,002*( J uros sobre dívida) + ( R eceita peq. clientes) – (Despesas salário e outros) + (Receita grandes clientes) – (1-0,02)*( D ívida atraso ( t+3 ) semanas) - ( D ívida atraso semana t ); z(t-1) + g(t) – h(t) + x(t-1) – x(t) + 0,001*x(t-1) – 0,002*y(t-1) + s(t) – e(t) + r(t) – (1 -0,02)*(p(t) - w(t)) - w(t-3) = z(t); Val_caixa[t-1] + Val_emprestado[t] - Val_Pg[t] + Val_investido[t-1] - Val_investido[t] + Juros_mon * Val_investido[t-1] - Cred_sem * Val_acumulado[t-1] + Rec_pq[t] - Desp_pagSal[t] + Rec_gd[t] - 1 - Desc * Desp_pagFor[t] - Val_Pg_atraso[t] - Val_Pg_atraso[t-3]) = Val_caixa[t];
13. 3) Dívida na semana t = ( D ívida semana anterior) + (Empréstimo) – ( D ívida paga); y(t-1) + g(t) – h(t) = y(t); Val_acumulado[t-1] + Val_emprestado[t] - Val_Pg[t]) = Val_acumulado[t]; 4) Limite de crédito na semana t = ( D ívida de crédito) = 4 milhões; y(t) = 4.000.000; Val_acumulado[t] = Lim_cred; 5) Linha de crédito disponível na semana t = ( C aixa atual) > 0,20*( P elo menos 20% em conta)*( A cumulado da dívida); z(t) > 0,20*y(t); Val_caixa[t]) = Cred_manter * Val_acumulado[t]; 6) Contas a pagar na semana t = ( D ívida atraso ( t+3 ) semanas) < ( D espesas pgnto. fornecedores) w(t) = p(t); Val_Pg_atraso[t] = Desp_pagFor[t] Restrições
14. Restrições 7) Caixa seguro na semana t = ( C aixa atual) = 20.000(valor mantido em conta por segurança); z(t) > 20.000; Val_caixa[t] = Min_cc;