Otimização (?) Matemática

Há um fascínio enorme dos executivos em geral, sobre métodos mágicos matemáticos que pegam um monte de variáveis e chegam numa solução ótima, coisa que chamaremos aqui de “Otimização Matemática”.
 

Mas na verdade, isto é uma “pseudo-otimização”, ou uma otimização sob certas circunstâncias artificiais. Vejamos o por quê.

 


Há diversos métodos de otimização matemática, para diversos tipos de problema. Há problemas de otimização para funções contínuas, utilizando métodos de cálculo diferencial, que tem muita aplicação em engenharia, química. Para problemas do mundo corporativo, como definir a localização e fluxos de centros de distribuição, minimizar as perdas numa máquina de corte ao escolher uma combinação correta de pedidos, utiliza-se métodos de Programação Linear e Inteira.

 
Acontece mais ou menos assim: o processo do mundo real tem que ser mapeado para um problema, que será uma simplificação do mundo real. Fazer esta simplificação, que atenda os pontos principais do problema e deixe de fora detalhes que não importam, é a grande arte da modelagem. Este modelo terá uma formulação matemática, que será resolvido por um solver de Programação Linear e Inteira.
 

Mas, por melhor que seja a modelagem, há objetivos conflitantes na vida real que devem ser equilibrados.


Vejamos o planejamento da produção de uma fábrica.

 
Temos uma demanda de clientes, cada um com um produto, um volume diferente, um deadline diferente. Para o cliente, o ideal são as máquinas produzirem o que ele quer quando ele quer.

Clientes

Para a fábrica, temos uma programação de corridas de produtos. Para a fábrica, quanto mais tempo ela conseguir produzir o mesmo produto, melhor, porque evita perdas no setup de máquina – note que conflita com o desejo da demanda de clientes, que é ter o que quer na hora que quer.

Setup

 

Em termos de estoque, quanto menor o estoque, melhor. Então, se a fábrica adiantar muito a produção de um cliente, vai pagar a conta de manter o material em estoque.

 

Então, olhando só para este exemplo simples, temos três forças conflitantes: demanda dos clientes, setup de máquina e estoques.

ForçasOtimizacao

 

Como se resolve tal conflito? Pode-se colocar um dos itens, como a demanda de clientes, como uma restrição a ser atendida, que é o que é feito na maioria dos livros de Pesquisa Operacional. Mas, na prática, há demandas de clientes que não precisam ser atendidas, e há clientes que precisam ser atendidos. Além disto, na prática uma restrição tão pesada pode dar “infeasible”, ou seja, não dar solução porque a fábrica não consegue atender.
 

Um outro método de resolver o conflito é ponderando todas as forças. Cada cliente gera uma receita (em $ por tonelada) se atendido, sendo que o cliente mais importante vai remunerar a empresa melhor. O setup tem um custo, ou seja, quanto mais setups, pior. Cada item em estoque tem custo proporcional ao tempo que ficar nos estoques.
 

E a ponderação disto seria a fórmula a ser maximizada.

 

Lucro = receita – custoSetup – custoEstoque

 

Ponderar os fatores conflitantes pelo seu custo é uma forma poderosa de se resolver este tipo de problema, e isto ajuda muito.

 


Problema resolvido? Não.
 

Muitas vezes, acontece de o analista rodar o modelo, e aí descobrir que alguma coisa ruim aconteceu.

  • Exemplo 1: Cliente tal é importante, mas não foi atendido. E não foi atendido porque, apesar de importante, o preço que ele paga pelo produto não é tão mais alto que o do cliente ruim. E assim, o analista aumenta artificialmente a receita do produto para ele.
  • Exemplo 2: Tenho o custo de estoques, mas pela ponderação dos custos, o custo de estoques pode ser muito menor que os demais. Aí o modelo, que é matemático, vai lotar os estoques. Aí o analista dá um peso maior para os estoques e coloca uma regra adicional: coloca uma restrição de estoque máximo.

 

O modelo matemático é burro, ele faz exatamente a conta que lhe é informada. Não tem discernimento para entender se está coerente ou não.

E assim, a gente vai martelando os pontos problemáticos do modelo, para tapar os furos que ele vier a ter, e se chegar numa solução compatível com a do mundo real. É sim um método de otimização, mas não é algo que pode funcionar sozinho: tem que ter um analista bom, capaz de analisar, criticar os resultados e mexer alguns pauzinhos para se chegar numa solução.


 

Este é um ponto de vista eminentemente prático, de alguém que trabalha de verdade com estes métodos. Dificilmente algo assim vai estar escrito em algum livro-texto do mundo acadêmico.

 

Arnaldo Gunzi

Set 2015

Deixe um comentário

Faça o login usando um destes métodos para comentar:

Logo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s