Guten Tag, Hannover!

I’m attending the #hannovermesse2022, in Germany. It is the most important industrial fair of the world, with more than 5.000 expositors and 200.000 visitants from all around the world, including we, from Brazil.

Some technological trends and curiosities:

– Every year there is a partner country. This year is Portugal

#iot is not only sensors anymore. Current solutions integrate sensors, transmission, data storage in cloud, also training algorithms, in order to have an almost plug and play solution

– Energy and #sustainability continue to be very hot topics, and Germany takes if very seriously. In the route between Frankfurt and Hannover, I saw at least a dozen wind turbines, for example

– A closed loop of information is a trend: seamless integration of several internal and external sources of information, to facilitate data mining and insights. Also, integration of information along the supply chain

– The noble area of #operationsresearch is also present: Google showed a case of optimization of data centers. Modern data centers are estimated to consume around 1,8% of the energy of the world. There are huge fluctuations in the demand and also in weather conditions, affecting costs and sustainability. Using OR techniques, they’re able to double the energy efficiency of their data centers.

– Hannover is a wonderful city, with a mix of green areas, modern city and historical architecture. With less than 1 million inhabitants, it has a fairly good structure of trains, easy even for tourists like us.

Danke, Hannover!

See also:

Os efeitos gênesis e apocalipse dos modelos de otimização

 
Quando falamos que encontramos a “solução ótima”, esta é com aspas mesmo: todo modelo é necessariamente uma simplificação do mundo real, extremamente complexo e cheio de efeitos de segunda e terceira ordem.
 
O “efeito gênese” ocorre no início, quando as variáveis ainda não estão “a todo vapor”. É a fase de aquecimento, transitória, e o modelo ainda é jovem demais para aproveitar.
 
Já o “efeito apocalipse” ocorre no final. Como o mundo do modelo acaba com o fim da simulação, ele tende a otimizar tudo: para de produzir, consome todo o estoque, curte a vida adoidado.
 
Nem todos trabalhos sofrem com esses efeitos, obviamente depende do caso. São mais frequentes principalmente nos que envolvem o tempo.


 
Para contrabalancear. No caso da gênese, começar com variáveis iniciais próximas ao estável – ou deixar rodar por alguns períodos e desprezar esse começo. No caso do apocalipse, a mesma coisa: ter restrições contrabalanceando o mínimo de variáveis, e/ou deixar ele rodando por um tempo e desprezar os períodos finais.
 
Quando a gente constrói um modelo e manda otimizar, ele otimiza mesmo, e encontra furos que não fazem sentido na vida real. Boa parte do trabalho é ficar fechando esses furos lógicos.
 
Fica a dica.

Veja artigos semelhantes e me siga no LinkedIn:

https://ideiasesquecidas.com/2021/12/19/o-bilionario-que-fazia-graficos-com-lapis-coloridos/

https://www.linkedin.com/in/arnaldogunzi/

Manufacturing summit

Participei do Manufacturing Summit 2022, discutindo sobre #advancedanalytics e #AI.

Alguns temas principais abordados:

– A cada dia, mais sensores estão gerando dados, e bases estão sendo digitalizadas e integradas;

– Por outro lado, métodos analíticos avançados e AI estão cada vez mais acessíveis, por avanços em software e hardware;

– Existe uma tendência mundial de centros de excelência, para acelerar a transformação digital, agregar valor de forma eficiente e colher ganhos;

– Começar pequeno, agregar valor, mostrar trabalho, e isso vai retornar em demandas cada vez mais nobres, um ciclo virtuoso;

– Além de agregar valor diretamente com projetos, também é possível dedicar parte do tempo para treinamentos, eventos e mentoria de analistas das áreas de negócio da empresa;

– Por fim, ter em mente que a otimização de recursos, aumento de produtividade, etc, vai retornar para o consumidor final e a sociedade como um todo, na forma de um produto mais barato e sustentável.

Agradeço pelo convite, e estou à disposição de quem quiser trocar experiências.

Conhece algum gênio na área de Advanced Analytics / Data Science?

Alguém apaixonado por números e por aplicações na vida real?
Divulgue esta vaga para ele!

A gigante Klabin S.A., do setor de papel e celulose, está montando um time de altíssimo nível para os enormes desafios de otimização combinatória, simulação de eventos discretos, inteligência artificial, data science e temas correlatos, tanto na indústria quanto na área florestal.

Procuramos alguém com imensa vontade de implementar modelos na prática, agregar valor de verdade, devorar livros e liderar esta revolução que está chegando!

(É uma vaga diretamente no time que gerencio).

Link:

https://www.linkedin.com/jobs/view/2954724699/?refId=54Up20t6Ro%2B9IToUtwhmlg%3D%3D

Uma bobina a mais e o MP Load

Descrevendo uma situação que me deixou bastante feliz. Durante visita à unidade de Sacos, em Lages, o meu amigo Marcelo Oliveira contou que a utilização do MP-Load, descrito abaixo, possibilitou o envio de um pallet a mais no contêiner. “Não cabe”, dizia o pessoal; “Cabe, olha só o estudo”, disse o Marcelo.

O MP Load é uma ferramenta extremamente simples, feita em Excel – VBA.

Basta preencher as dimensões (Altura – Largura – Comprimento) e carga máxima do contêiner; e dimensões da bobina a ser transportada – diâmetro externo, largura e peso individual.

As unidades das dimensões estão em milímetros.

Como hipótese, as bobinas sempre vão de pé, e todas as bobinas são iguais. O limite é o volume geométrico ou o peso máximo, o mais restritivo.

Há ferramentas de formação de carga extremamente mais complexas, que conjugam bobinas de vários tipos, deitadas, de pé, etc. Porém, a situação simples de bobina única e de pé deve atender uns 90% das situações, e a beleza é ela ser puramente geométrica, simples de resolver.

O MP Load surgiu com a inspiração acima, pelo amigo Didiel Peça. A ideia era utilizar na hora de tirar pedidos dos clientes de mercado externo, de modo que o valor solicitado fechasse exatamente a carga de um contêiner.

Para o caso de Pallets, basta escolher “P” no campo. As dimensões agora são comprimento – largura – altura (pelo pallet ser retangular) e o peso por pallet.

Há também uma folga adicional de 10 mm no comprimento e na largura, por hipótese.

E que diferença faz uma bobina a mais por carregamento, ou um pallet a mais? Otimização de frete.

Uma bobina faz pouca diferença, individualmente. Mas uma bobina, multiplicada por todas as áreas que otimizam o carregamento, multiplicada por todos os dias em que o estudo é feito, faz toda a diferença.

Segue link.

https://1drv.ms/x/s!Aumr1P3FaK7jn2hfs8JKd7qiZX30

Hipóteses utilizadas:

  • As bobinas são todas idênticas (idem para pallets)
  • As bobinas sempre vão de pé
  • No caso de pallets, há uma folga considerada de 10 mm
  • O comprimento do contêiner é maior do que a largura do mesmo

Como o cálculo é realizado?

Tanto para bobinas quanto para pallets, são analisados dois padrões: retangular e zig-zag

O padrão retangular é um do lado do outro.

Para o cálculo, arrendondar para baixo as dimensões do contêiner dividido pelo diâmetro da bobina.

Já o padrão zig-zag (por falta de um nome melhor), considera um encaixe tipo laranjas empilhadas:

Sejam c e d catetos de um triângulo retângulo, com a hipotenusa sendo o diâmetro externo.

d = sqrt ( Dext^2 – c^2)

Se encontrarmos o valor de c, o valor de d estará definido pela fórmula acima.

No zig-zag, o contorno externo terá um Dext de dimensão, e as camadas internas serão X vezes a dimensão c.

O limite máximo para X é dado pela (Largura do contêiner – Dext) dividido pelo Dext, arredondando para cima.

Com isso, calculamos o número de linhas X, o c e o d, todos os parâmetros para a distribuição.

Por fim, analisamos o carregamento pelo padrão retangular x padrão zig-zag, e pegamos o que ficou melhor.

Um mundo melhor através do Analytics.

https://ideiasesquecidas.com

Veja também:

Ideias Analíticas Avançadas

Estou lançando uma publicação na plataforma Medium: a Ideias Analíticas Avançadas (https://medium.com/ideias-anal%C3%ADticas-avan%C3%A7adas).

Os objetivos são:

  • Escrever sobre Analytics Hard: Otimização, Matemática, Python, Computação Quântica, com código e tudo
  • Convidar outros autores a publicar sobre o tema.

Fica já o convite, quem quiser escrever sobre alguns dos temas e divulgar ali.

Método de Monte Carlo e os perigos de ignorar o desvio padrão

Método de Monte Carlo

Este pequeno experimento visa demonstrar o efeito e perigos de fazer dimensionamento a partir da média, desconsiderando o desvio padrão. Utilizaremos o método de Monte Carlo, em Excel, para isto. Download do arquivo.

Suponha a seguinte situação. Uma fábrica produz 10 mil itens por dia, envia para um centro consumidor, e neste, 10 mil itens são consumidos por dia. Pergunta: qual o estoque necessário para suportar a demanda?

Monte01.jpg

Montando num excel, é só considerar uma coluna para produção (10 mil), outra para demanda (10 mil).
Só tem uma fórmula: estoque de hoje = estoque dia anterior + produção – consumo.

Monte02.png

Resposta: É necessário estoque zero. Nada.
Se o mundo fosse determinístico, perfeito, não seria necessário ter item algum em estoque. Produção é igual à demanda, e fim de papo.


 

Mundo não-determinístico

O único problema é que o mundo não é determinístico. É o livre-arbítrio de cada um de nós que decide o que queremos fazer, o que queremos consumir. A soma de todas essas decisões individuais é o mercado. Não controlamos o mercado. É o mercado que dita as regras, e tais regras podem ter um comportamento estatístico modelável (ou não). Para descrever este comportamento estatístico, podemos lançar mão de ferramentas como o Método de Monte Carlo.

Basicamente, o método de Monte Carlo simula o comportamento da fábrica e o do consumidor, segundo alguma distribuição estatística.

Uma normal (ou gaussiana) é completamente definida por uma média e um desvio padrão. Quanto maior o desvio padrão, maior a chance do valor observado estar mais distante da média.

Monte03.png

No mesmo caso descrito, digamos que tanto a produção quanto o consumo sejam modelados por uma normal de média 10 mil e desvio padrão de 3 mil.

Monte04.jpg

O Monte Carlo vai sortear um valor para a produção, que vai ser próximo de 10 mil, talvez um pouco para cima ou um pouco para baixo. 65% dos valores estarão entre 7 mil e 13 mil (mais ou menos um desvio padrão), 95% dos valores estarão entre 4 mil e 16 mil (dois desvios padrões). Portanto, pode haver um dia com consumo muito acima da média, mas tais ocorrências serão raras. Por haver sorteios, este método lembra um cassino, por isso o nome “Monte Carlo”, em referência ao cassino.

Em termos de modelo Excel, usamos a função genNormal(média, desvio) para simular um sorteio de uma variável aleatória normal. Esta função é do pacote Yasai, cujas fórmulas estão contidas na planilha anexa. O Yasai é um pacote open source para simulação em planilha. Alguns pacotes mais famosos são o Cristal Ball e AtRisk.

Para um trial, ou seja, uma rodada aleatória, a produção gira em torno de 10 mil, a demanda também em torno de 10 mil. Estoque inicial igual a zero. Mas o estoque varia ao longo dos dias.

Monte05.png

No gráfico, nota-se que o estoque ficou negativo a maior parte do tempo.

Monte06.png

Para um outro trial:
(para simular outro trial no excel, apertar F9).

Monte07.png

Deve-se simular o modelo diversas vezes e guardar os resultados, para ter massa de dados para compensar o efeito da aleatoriedade de um trial.

Rodando uns 1000 trials neste caso, vai dar que 50% das vezes haverá problemas de desabastecimento e 50% sem problemas.

Na média, o consumo é igual à produção, mas o problema é o desvio padrão. Para suportar tais flutuações, são necessários os estoques.

 

Digamos, um estoque de 7 mil peças dá um aumento da garantia de abastecimento. O estoque tem que ser suficiente para cobrir o efeito somado dos desvios padrões (consumo e produção).

Monte08.jpg

Deve-se variar o estoque inicial, rodar outros tantos 1000 trials, e verificar a probabilidade de desabastecimento.

A pergunta final a responder é: qual o risco que quero correr? Qual o estoque mínimo que compense o custo do desabastecimento?

  • Se o produto não for importante, pode faltar à vontade, e é necessário pouco ou nenhum estoque.
  • Se o produto for crucial, é bom que o estoque seja bem calculado.
  • Quanto maior o custo do desabastecimento, maior o estoque de segurança necessário.

 

O método de Monte Carlo pode ser utilizado para modelar situações complexas da vida real, e fornecer uma estimativa dos riscos associados. O modelo apresentado é muito simples, mas este pode ser tão complicado quanto se queira, com outras distribuições estatísticas, etc.

Ponderar Riscos x Seguros é exatamente a mesma conta de fazer o seguro do carro. Pagar o seguro é salgado, digamos 2 mil reais, mas ter o azar de ter o carro roubado é muito pior, digamos 50 mil reais.

Um seguro, um estoque, custa caro, mas vale a pena se este for dimensionado para evitar um prejuízo ordens de grandeza maior.

 

 

 

Blogs técnicos

Prezados leitores,
Estou lançando hoje mais dois outros blogs, ambos com viés técnico. Um com ferramentas em Excel-VBA, e outro sobre Otimização Matemática.
O de Excel VBA (https://ferramentasexcelvba.wordpress.com/) deriva diretamente de anos de expertise no assunto. Conterá ferramentas plug & play em Excel, automatizando tarefas úteis. Ainda não tem muita coisa, mas a ideia é colocar toda semana algo novo.
SimuladorMinMax.png
O de otimização combinatória (https://forgottenmath.home.blog/) explica métodos matemáticos e disponibiliza uma série de aplicações sobre o assunto. É um dos assuntos mais difíceis da matemática e da computação.
simplex.png

O Forgotten Lore é um experimento. Sempre gostei de escrever, e, como em qualquer coisa na vida, tenho que treinar para melhorar. O meu estilo de escrita melhorou imensamente nos últimos meses, graças à prática.
Devido aos muitos feedbacks positivos, me sinto seguro a manter este trabalho e escrever sobre esses outros dois assuntos específicos e muito ricos.
Agradeço aos leitores pela companhia e feedbacks.
Arnaldo Gunzi

Boids e inteligência de enxame

O algoritmo Boids é um algoritmo de inteligência de enxame, inspirado no comportamento de pássaros.

Vide vídeo a seguir.

 

As regras são muito simples. O algoritmo começa com um número X de boids. Cada boid tenta seguir as seguintes regras:

 

  • Cada boid tenta ir em direção ao centro de massa de seus vizinhos mais próximos
  • Cada boid mantém uma distância mínima para outros objetos (inclusive outros boids)
  • Cada um tenta igualar a velocidade com outros boids próximos

 

O engraçado é que são três regras muito simples, que podem gerar uma complexidade e beleza inimaginável.

São inúmeras configurações possíveis, e ninguém sabe de antemão como será a dança dos boids.

 

boids

 

Arnaldo Gunzi

Ago 2015

 

Link do pseudocódigo do Boids

http://www.kfish.org/boids/pseudocode.html

A quadratura do círculo

Na época da Grécia antiga, alguns problemas matemáticos desafiavam a imaginação das melhores cabeças da época. Um desses problemas era a “quadratura do círculo”. Mas o que é esta tal de quadratura do círculo?

Quadratura é o mesmo que medir uma área, e surgiu de problemas usuais, cotidianos. Na época, como se fazia para medir a área de um terreno? É muito fácil se o terreno for um quadrado, basta multiplicar o tamanho do lado ao quadrado, para se chegar a área (não por acaso, a área tem como medida o metro quadrado, pé quadrado, etc).

Mas os terrenos da vida não são quadrados. São irregulares, tortos. E como se faz para medir uma área de forma fácil? Basta separar a área irregular em quadrados, fazer a conta em cada quadrado separado e somar os resultados.
Por isso, medir uma área tornou-se sinônimo de tirar a quadratura do objeto desejado. E isto é o mesmo que desenhar um quadradão com a mesma área do objeto irregular.

Então, para polígonos com linhas retas consigo fazer a quadratura da área. Mas, e para um círculo? Qual a área de um círculo? Qual o quadrado equivalente à área de um círculo? E como construir tal quadrado utilizando apenas régua (sem escalas) e compasso?

Hoje, sabemos que área do círculo é dada por pi*r^2/2. E que o Pi é um número irracional, ou seja, que não pode ser representada por nenhum número fracionário com coeficientes inteiros. Métodos do tipo régua e compasso geram necessariamente resultados fracionários, porque trabalham com medidas conhecidas (como o raio do círculo) que podem ser somadas, divididas por 2, e outras operações simples. Mas não dá para chegar no valor de Pi em um número finito de passos.

Portanto, os gregos não conseguiram quadrar o círculo porque era impossível, pelos métodos utilizados.

Como eram os computadores antes dos computadores?

 

 

Na verdade, não eram computadores, e sim, computadoras. Uma sala cheia de mulheres, cada uma em sua baia, fazendo contas com lápis e papel.

 

As computadoras foram utilizadas no Projeto Manhattan, na Segunda Grande Guerra. O Projeto Manhattan foi o projeto secreto com a finalidade de fabricação da bomba atômica. Para a execução deste, juntaram-se os maiores gênios da física da época, incluindo judeus foragidos da Alemanha Nazista.

Continue a ler o post  no meu blog de tecnologia:

http://exceltequila.wordpress.com/2014/02/01/computadoras/

A solução ótima para o problema errado

De que adianta obter a solução ótima para o problema errado?

solucaoOtima.JPG

Primeiro, uma definição. A solução ótima é a melhor solução possível, analisada do ponto de vista global, para um determinado problema. Nas ciências exatas, as áreas de Pesquisa Operacional, métodos analíticos, têm como objetivo resolver problemas difíceis para encontrar soluções ótimas.

A grande complexidade dos problemas do mundo real não está em resolver com perfeição um problema difícil. Está em formular tal problema. A realidade é, e sempre será, muito mais complexa do que qualquer modelo matemático concebível pelo ser humano. E, para colocar em moldes matemáticos “resolvíveis”, é necessário simplificar a realidade. É aí o calcanhar de Aquiles.

 

Além disso, a solução ótima é ótima para um cenário estacionário. Onde nenhuma hipótese vai mudar, e se tudo continuar da forma que sempre foi. Ora, não foi dada ao ser humano a capacidade de prever o futuro. E quando o mundo mudar? Não seria mais interessante ter respostas rápidas para acompanhar o mundo mutante?

Na natureza, não se encontra um único caso em que dada espécie tente otimizar algum recurso pensando de forma global. Isto porque:

  1. A demanda de energia de processamento para encontrar o ótimo é desproporcionalmente grande
  2. O mundo muda constantemente. Não é possível chegar num ótimo global quando as perguntas mudam. O que pode ser bom hoje não necessariamente será amanhã.
  • Portanto, vejo um extremo desequilíbrio entre os trabalhos acadêmicos desta área e o mundo real. É um caso de “Mura”, do sistema Toyota. Tenta-se resolver com precisão indescritível e métodos cada vez mais mirabolantes os problemas errados. E o por que disto? Talvez em algum post futuro eu tente descrever o que penso.