À medida que mais e mais organizações adotam a análise de dados, uma gama mais ampla de problemas está sendo trazida para ser resolvida. Embora as equipes de ciência de dados geralmente sejam bem versadas em técnicas tradicionais como análise estatística e aprendizado de máquina, bem como tecnologias emergentes como IA, ainda existe uma classe de problemas que é mais facilmente abordada usando otimização matemática.
As funções de negócios geralmente têm a tarefa de tomar decisões que maximizem os benefícios de um processo enquanto gerenciam múltiplas, às vezes conflitantes, restrições. Ao contrário do aprendizado de máquina clássico que prevê um resultado futuro com base em variáveis de estado atuais, a otimização ajuda os tomadores de decisão a identificar o conjunto de ações necessárias para melhor alcançar um determinado resultado. As soluções para esses problemas raramente são diretas e exigem o exame de inúmeros componentes interativos para identificar a melhor solução. Alguns desafios frequentemente encontrados desse tipo incluem:
As soluções para esses problemas são frequentemente encontradas testando repetidamente cenários de "e se" - fazendo ajustes em cada cenário para simular várias condições para avaliar riscos e estratégias. Para acelerar esse processo, podem ser utilizadas soluções de software especializadas. Existem soluções prontas para uso específicas para tipos específicos de problemas de otimização, bem como solucionadores de otimização comerciais e de código aberto que permitem modelos matemáticos personalizados para atender a uma ampla gama de necessidades de negócios. No coração de todas essas soluções estão algoritmos de otimização projetados para encontrar eficientemente uma solução ótima sem ter que enumerar exaustivamente todas as opções possíveis.
Solucionadores de nível comercial como o Gurobi, juntamente com plataformas de dados e análises como o Databricks, estão sendo cada vez mais utilizados por empresas para resolver desafios de otimização. Essas plataformas ajudam a preparar as entradas de dados e transformar as saídas do solucionador em aplicações acionáveis. Neste blog, demonstraremos como o Gurobi e o Databricks podem trabalhar juntos para resolver um problema simples de otimização, fornecendo às equipes um ponto de partida para enfrentar desafios semelhantes em suas próprias organizações.
Para nos ajudar a explorar como o Gurobi e o Databricks podem ser usados para resolver problemas de otimização, começaremos com um cenário simples e ilustrativo. Imagine que você é uma criança (ou um adulto) e possui os seguintes quatro conjuntos de LEGO® Star Wars:
Como muitas pessoas, você monta cada conjunto de acordo com as instruções, e quando termina, desmonta cada um, combinando os blocos em um grande balde (Figura 1).
A pergunta que você tem agora é, quais outros conjuntos oficiais você poderia construir com este balde de blocos? Para responder a isso, precisamos esclarecer quatro elementos de um problema de otimização:
Com esses elementos definidos, agora podemos começar a analisar as possíveis soluções. Com 730 blocos individuais em nosso balde, poderíamos enfrentar mais de 1075 combinações possíveis. O fato de haver muitos blocos idênticos em cada conjunto e mais entre esses conjuntos reduz esse número, mas o número resultante de combinações potenciais ainda é esmagador. Precisamos de uma maneira inteligente de navegar no espaço do problema. É aqui que o solucionador entra.
A mágica por trás do solucionador é que ele pode examinar o problema (definido em termos de parâmetros de entrada, variáveis de decisão, etc.) e explorar matematicamente o espaço do problema para se concentrar apenas nas soluções que satisfazem as regras de negócio e melhoram os resultados. Para ilustrar isso, considere os 730 tijolos individuais em nosso balde. Não existem conjuntos a considerar que consistem em apenas 1, 2 ou 3 tijolos, então qualquer iteração que possa explorar combinações como essas pode ser eliminada da consideração.
Ao examinar de perto a definição do problema, o solucionador pode restringir fortemente o espaço do problema a ser explorado. O número esmagador de possíveis combinações agora se torna muito mais gerenciável, e através de um motor de solução altamente otimizado, os resultados restantes podem ser rapidamente avaliados para fornecer a resposta correta rapidamente.
À medida que mais e mais organizações consolidam seus ativos de dados no Databricks, é essencial que elas possam desbloquear o potencial total desses dados para resolver uma ampla gama de necessidades de negócios. A integração perfeita do Gurobi com a Plataforma de Inteligência de Dados Databricks significa que, quando as organizações encontram desafios de otimização, elas podem preparar os ativos de dados no local sem a necessidade de replicá-los para outra plataforma. A equipe de operações, familiarizada com a otimização, pode então empregar os recursos do ambiente Databricks para resolver o problema de maneira escalável, eficiente em tempo e recursos.
Com a saída do solucionador capturada dentro do Databricks, a organização pode então integrar os resultados do solucionador nos vários fluxos de trabalho operacionais orquestrados dentro do ambiente. E, com acesso às capacidades integradas de gerenciamento de modelos do Databricks, essas equipes podem integrar seu trabalho às práticas padrão de gerenciamento e governança de modelos centradas na plataforma.
Para ajudar as organizações a começar a explorar o uso do solucionador Gurobi no Databricks, convidamos você a dar uma olhada nos seguintes notebooks de amostra, fornecendo acesso ao código passo a passo por trás do nosso exemplo de bloco de brinquedo. Por favor, note que os dois primeiros notebooks dependem da solução de exemplos de pequena escala que podem ser resolvidos usando a licença de teste gratuita que a Gurobi oferece com a instalação de sua biblioteca API Python. O terceiro notebook usa um modelo de maior escala: entre em contato com a Gurobi para obter uma licença apropriada para executar os modelos no terceiro notebook.
Para entender como as organizações podem expandir o uso do Gurobi com o Databricks, também convidamos você a assistir o seguinte webinar da Aimpoint Digital, uma empresa líder de mercado em análise na vanguarda da resolução dos desafios de negócios e econômicos mais complexos por meio de dados e tecnologia analítica. Neste vídeo, as pessoas da Aimpoint Digital examinam a integração técnica entre Databricks e Gurobi em maior detalhe e exploram várias maneiras pelas quais as organizações podem combinar essas tecnologias para resolver uma variedade de problemas de neg ócios.
Por fim, incentivamos você a voltar ao site do blog Databricks para revisar nosso próximo blog sobre Otimização de Sortimento, que irá desenvolver os conceitos ilustrados aqui para lidar com um cenário mais complexo e realista de interesse para muitas organizações de varejo e bens de consumo.
(This blog post has been translated using AI-powered tools) Original Post