EN ES PT
EN ES PT

Programação matemática: a única Inteligência Artificial capaz de garantir a otimização

13 de Abril de 2022 Blog por Cassotis Consulting

As tecnologias de inteligência artificial, como aprendizado de máquina, programação matemática e heurística, estão sendo cada vez mais usadas por empresas de diferentes tamanhos e setores. As aplicações são muito variadas: vão desde logística e supply chain (problemas como roteamento e localização de centros de distribuição e fábricas), serviços financeiros (minimização de riscos, detecção de fraudes, análise de crédito) a processos industriais (sequenciamento, otimização de matérias-primas), por exemplo.

 

Esse aumento no uso de tais tecnologias pode estar ligado a vários motivos, como avanços no poder de computacional das máquinas, coleta   e   uso intensivo de dados, e tomadores de decisão se baseando mais em   sistemas de apoio à decisão (e não apenas em seus sentimentos e   experiências). Essa transformação digital está forçando as empresas a   usar novas tecnologias e evoluir suas estruturas.

 

No entanto, a decisão sobre qual tecnologia usar para resolver um problema não é fácil. Cada um deles tem suas vantagens e desvantagens, visto que irão resolver o problema de maneiras diferentes, por isso é importante utilizar aquela que mais se adapta à aplicação, observando aspectos como agilidade para encontrar uma solução, adaptabilidade da aplicação às mudanças nos dados e interpretabilidade dos resultados, por exemplo. Outro aspecto é a otimalidade das soluções propostas.

 

Uma solução aqui pode ser definida como a decisão proposta pela tecnologia. Uma solução viável é aquela que satisfaz todas as restrições existentes. Uma solução ótima é uma solução viável que garante o melhor resultado: nenhuma outra solução pode resultar em uma decisão melhor. Existe apenas uma tecnologia de IA que pode garantir a otimização de uma solução em alguns casos: a programação matemática.

 

 

A programação matemática consiste na criação de modelos matemáticos, contendo um conjunto de variáveis ​​e parâmetros que serão utilizados nas equações que definem as restrições e a função objetivo que será maximizada ou minimizada. A natureza das variáveis ​​e equações vai determinar a classe do modelo, se é uma programação inteira ou não linear, por exemplo. Dependendo das características do modelo (como a convexidade e suavidade das funções), é possível garantir a otimalidade das soluções propostas. Isso ocorre porque os solvers - softwares capazes de resolver tais modelos - são capazes de comprovar a otimalidade da solução.

 

Claro, nem sempre é importante garantir que a solução proposta seja ótima. Por exemplo, há muitos casos em que o problema é tão complexo que basta encontrar uma solução viável ou "boa". No entanto, em algumas situações, a decisão é tão importante, ou a diferença entre uma solução "boa" e uma ótima é tão significativa (em termos financeiros, por exemplo), que é importante ter certeza de que a decisão que está sendo tomada é ótima.

 

Portanto, ao definir qual tecnologia de IA usar, certifique-se de identificar claramente quais são os principais aspectos de sua aplicação: se a otimização for importante, você deve considerar a programação matemática como sua opção principal.


 

Autor: Cassiano Lima - Consultor Senior na Cassotis Consulting

                                    Coautor: Emmanuel Marchal - Managing Partner na Cassotis Consulting