Caixa Preta

Abrindo a caixa preta

Uma visão geral dos conceitos e técnicas “quase secretos” da ciência da eficiência.

Todas as empresas lidam com problemas de decisão. No fim das contas, administrar é sempre escolher como aplicar recursos com o intuito de obter os melhores resultados. Tais problemas são também há muitos anos estudados pelos matemáticos, que sistematizam esse conhecimento descrevendo-os em fórmulas e agrupando-os em classes com características similares.

Um modelo matemático é, portanto, simplesmente uma representação estruturada de um problema real através de um conjunto de fórmulas que facilitam a comunicação e a troca de ideias dos matemáticos, sem que cada um precise saber os detalhes do problema real em que os seus colegas estão trabalhando. Por isso, um bom modelo é aquele que captura apenas aquilo que é essencial da operação que descreve.

Alguns modelos permitem responder sentenças do tipo “O que ocorreria se…”, a este chamamos de modelos descritivos, enquanto outros, os modelos prescritivos, permitem determinar “O que fazer…” para atingir um determinado objetivo.

Para exemplificar, imagine-se um planejador industrial. Você poderia querer saber “o que ocorreria se adquirisse uma nova máquina?”. Esse é o tipo de pergunta que leva os matemáticos a montar modelos descritivos. Mas se a sua pergunta fosse “qual a melhor maneira de ordenar os trabalhos na linha de produção para diminuir o número de setups e aumentar o volume de produção?”, somente um modelo prescritivo seria apropriado.

Através de técnicas estatísticas, de teoria de filas, de simulação de eventos discretos ou de Monte Carlo, é possível fazer modelos descritivos de tendências e comportamentos para avaliar estratégias, respondendo perguntas do tipo:

  • Qual será o novo tempo médio de entrega se construirmos um CD em uma determinada cidade do Nordeste?
  • Qual será o novo custo médio de produção com o investimento em máquinas novas para determinada etapa da produção?
  • Dado um cenário macroeconômico, qual será a demanda mais provável por cada produto do meu portfólio?

Em contrapartida, através de técnicas de otimização determinística e otimização estocástica, que englobam métodos de modelagem e resolução como programação matemática (em particular, programação linear e programação inteira mista), inteligência artificial e diversas heurísticas como redes neurais, algoritmos genéticos, buscas tabu, programação por restrições, dentre outras; podemos fazer modelos prescritivos e resolvê-los para gerar as programações, configurações, localizações e dimensões mais apropriadas para determinadas situações, respondendo perguntas do tipo:

  • Onde devo localizar meu novo CD para minimizar o tempo médio de entrega?
  • Que máquinas comprar, dentro de um orçamento limitado, para minimizar o custo médio de produção?
  • Dado uma demanda prevista, que mix de produtos produzir, em que ordem, para maximizar meu lucro?

Há várias abordagens e técnicas que podem ser utilizadas na modelagem matemática de processos. O importante é saber que ferramental analítico usar para cada tipo de problema.

Otimização Exata x Heurísticas

Quando se cria um algoritmo de resolução para um problema, tem-se como objetivo provar matematicamente que ele tem uma qualidade de solução ótima (ou suficientemente perto da ótima) e um tempo de execução adequado.

Uma heurística é um algoritmo que abandona um destes objetivos ou ambos. Por exemplo, pode normalmente encontrar em tempo adequado soluções razoavelmente boas, mas sem a garantia de qualidade das soluções geradas, podendo, em determinados casos, gerar soluções muito ruins.

Algoritmos exatos chegam a soluções provadamente ótimas ou com uma proximidade do ótimo que se pode medir (por exemplo, as soluções estarão a não mais que 3% do ótimo). São algoritmos que requerem um conhecimento mais profundo para se construir. Ainda mais difícil é conseguir essa garantia de qualidade de solução em tempos de execução apropriados. Mas quando atendem aos limites de tempo de execução e custos de desenvolvimento, algoritmos exatos são sempre a melhor escolha, ainda mais por serem mais robustos.

A robustez de um algoritmo tem a ver com sua capacidade de manter suas características de qualidade e tempo de execução quando novas condições do problema são incorporadas ao modelo. Essa é uma propriedade muito importante quando se desenvolve soluções para problemas reais, já que as operações das empresas estão sempre mudando e é preciso que as ferramentas evoluam para se adaptar a essas mudanças.

Heurísticas são mais fáceis de construir que algoritmos exatos, por exigir um conhecimento menos profundo. Porém, precisam de muitos experimentos para serem calibradas e começar a gerar soluções coerentes. Toda mudança no modelo exige recalibragens e não há garantias que a heurística manterá o desempenho anterior.

Métodos exatos dão soluções consistentemente melhores, mas usualmente são mais lentos. No fim, não há abordagem que seja melhor que outra, são escolhas. O importante é saber quando usar uma, outra ou, ainda, uma combinação de ambas.

Simulação ou Otimização?

No dia-a-dia é comum usarmos Otimização para falar dos modelos prescritivos, e Simulação para falar dos modelos descritivos. Em sítese:

  • Simulação = avaliar estratégias
  • Otimização = gerar estratégias

Tentar responder à pergunta acima sem saber de que problemas estamos falando seria equivalente a responder à pergunta: o que é melhor, um médico ou um advogado? Depende da necessidade.

Explosão Combinatória: o desafio da otimização

Modelar situações reais, de forma que suas características importantes sejam capturadas, é uma tarefa extremamente difícil. Milhares ou até milhões de dados precisam ser incorporados, regras muitas vezes complexas precisam ser precisamente formuladas e consideradas pelo modelo. O problema pode também mudar ao longo do tempo, tornando-o ainda mais difícil de ser descrito.

Normalmente essa descrição se dá na forma de condições ou restrições que uma solução deve satisfazer, e uma função de valor que permita comparar diferentes soluções. Esses são os elementos que compõem um modelo matemático prescritivo.

A dificuldade de obter os dados para definir as restrições e a função objetivo foi, no passado, a grande limitação que conteve o uso abrangente de aplicações de métodos matemáticos de otimização.

Com a disseminação de ferramentas de gestão em empresas de todos os portes, a evolução da capacidade de processamento e memória das máquinas e a facilidade da comunicação de dados com a internet, o desafio está cada vez mais na inteligência dos algoritmos de resolução dos modelos matemáticos, aquilo que chamamos de técnicas de resolução.

A dificuldade matemática de que estamos falando decorre de algo conhecido como Explosão Combinatória. Para explicar do que se trata, vamos ilustrar com um exemplo clássico, o problema do caixeiro-viajante:

Imagine-se como um vendedor (um caixeiro-viajante) que precisa definir a rota mais curta para visitar um conjunto de cidades, voltando para a cidade de origem ao final. Comecemos com 4 cidades: A, B, C e D. Com 4 cidades há 6 rotas diferentes: ABCDA, ABDCA, ACBDA, ACDBA, ADBCA, ADCBA (repare que mesmo que você comece em outra cidade, a rota será uma das já representadas acima). Agora, basta checar qual dessas 6 possíveis soluções é a “ótima”, ou seja, aquela que atende a função objetivo (minimizar a distância percorrida) da melhor forma possível.

O efeito da explosão combinatória fica claro quando se aumenta o número de cidades. Imagine que se aumente o número de cidades visitadas para 7. Com 7 cidades há 720 rotas possíveis, 6! (6 fatorial). Para 27 cidades há 403.291.461.126.606.000.000.000.000 possíveis rotas. Para dar uma ideia do que significa esse número de possibilidades para um problema de tamanho tão pequeno (apenas 27 cidades), imagine que você tenha a sua disposição um IBM Blue Gene, o computador mais rápido do mundo com a capacidade máxima de processamento de 546 Teraflops. Se esse computador fosse capaz de analisar cada uma das rotas em apenas uma operação, ainda assim, para checar cada rota uma a uma, ele precisaria rodar por 12 milhões de anos!

Com 60 cidades o número de possibilidades é algo em torno do número estimado de átomos no universo observável. Uma perspectiva nada animadora para empresas que lidam todos os dias com versões ainda mais complicadas desse problema com dezenas ou até centenas de pontos de carregamento e descarregamento. Obviamente, as técnicas avançadas de resolução incorporam diversos “insights” matemáticos para que se chegue à solução provadamente ótima, sem que seja necessário avaliar todas as alternativas.

Interessante é notar que na maioria das vezes os executivos não têm ideia da dimensão da complexidade dos problemas com que lidam todos os dias. É como se tivessem em um jogo de xadrez em um tabuleiro gigante, com milhares de casas, e nem se dão conta disso.

Sem Comentários em “Abrindo a caixa preta”



topo