Arte com primos – visualização do crivo de Erastóstenes

Este post, do meu blog de Ideias aleatórias, pode ser interessante.

Arte com primos.

A seguir, uma visualização do crivo de Erastótenes. Os números primos aparecem em destaque.

Vi um painel assim num livro de matemática antigo, e resolvi escrever um pequeno programa em JS D3. Assim, não preciso pagar direitos autorais quando for usar imagens assim (não que eu pague)!

Visualização com outro zoom.

Para brincar de forma interativa, vide:

https://asgunzi.neocities.org/Experimentos/SequenciaPrimos/ArtePrimos

É possível mudar a quantidade de números. Dar zoom, diminuir o tamanho da janela, etc. O design é responsivo (essa é a beleza de html).

Mais avançado, porém possível, é mudar o critério. Ao invés de primos, outra lógica, como números ímpares, etc. Só que aí teria que mudar via código.

Também pedi para o DallE desenhar um “Crivo de Erastónes ao estilo Kandinsky”. Só que ele não entendeu, fez tudo errado. Como, mesmo assim ficou bonito, reproduzo aqui.

Vide também:

Ver o post original

Não seja bonzinho demais. Nem vil demais. Mas, como?

Sobre teoria dos jogos.

Gosto muito do conceito de “assertividade”, utilizado quando se fala em comunicação assertiva.

Uma definição possível de assertividade é o “Not nice, not nasty”. Não sei traduzir muito bem. Talvez, algo como “Não seja bonzinho demais. Nem vil demais.”

Não seja aquele que vai e esmaga o oponente, aproveitando suas fraquezas para extrair o máximo possível, de forma injusta. Por outro lado, não seja aquele “bonzinho”, o “bobo”, que todos montam em cima, que será o saco de pancadas dos valentões.

Porém, mesmo com o conceito acima, fica a dúvida: como operacionalizar o conceito? Como calibrar ações de forma a ser assertivo?

Para tal, gosto muito de um resultado da Teoria dos Jogos, um algoritmo chamado “Tit for Tat”. Algo como “Olho por olho”, derivado do código de Hamurabi, “Olho por olho, dente por dente”.

Pois bem, vamos por partes.

O que é a Teoria dos Jogos?

A Teoria dos…

Ver o post original 743 mais palavras

Prova de que 0 = 1

Considere a série
x = 1 – 1 + 1 -1 + 1 -1 + 1 -1 + 1 -1 + …

Se agruparmos os termos (1 – 1) teremos uma soma de fatores iguais a zero:

x = (1 – 1) + (1 – 1) + (1 – 1) + (1 – 1)+ (1 – 1) + …

Ou seja,

x =…

Porém, se fizemos um agrupamento levemente diferente:
x = 1 + (- 1 + 1) + (- 1 + 1) + (- 1 + 1) + (- 1 + 1) …

Chegaremos à conclusão de que:

x = 1

Dessa forma, a conclusão é de que 0 = 1.

Note também que podemos fazer o mesmo procedimento com outros números. Digamos, para provar que 0 = 8:

x = 8 – 8 + 8 – 8 + 8 – 8 + 8 – 8 + …

Se…

Ver o post original 43 mais palavras

Como desenhar a sequência de Fibonacci no VBA

Um meme viralizou, representando o golaço do jogador Richarlison com uma sequência de Fibonacci ao fundo.

Esta é uma sequência descoberta pelo matemático Leonardo de Pisa, mais conhecido como Fibonacci.
Comece com 1, 1, e o próximo termo é a soma dos dois anteriores:
1, 1, 2, 3, 5, 8, 13, 21, 34, …

É possível visualizar essa bela sequência na forma retangular, aproveitando o fato de que o próximo termo será igual ao lado dos dois anteriores:

Além disso, é possível colocar um arco de círculo de 90 graus em cada quadrado, explicitando uma espiral.

Como a sequência acima é formada apenas de retângulos e arcos, é possível escrever uma macro VBA, seguindo a espiral, de forma a fazer o desenho acima.

Essencialmente, são só comandos de shape, e mais um monte de cálculos para posicioná-los corretamente:

ActiveSheet.Shapes.AddShape(msoShapeRectangle, x, y, width, height) ‘Retangulo
ActiveSheet.Shapes.AddShape(msoShapeArc, x, y, width, height) ‘Arco

Ver o post original 56 mais palavras

Como converter de Milhas para Km de forma fácil? E de Fahrenheit para Celsius?

Esse pensamento ocorreu quando eu estava na Califórnia, dirigindo um carro alugado, e vi uma placa escrita “40”. Esta indicava a velocidade máxima permitida de 40 milhas por hora. Como a gente não tem noção de quanto isso significa, sempre tentamos converter para a unidade que conhecemos, km/h.

Ora, a forma mais precisa de fazer a conversão é multiplicar o valor em milhas por 1,609 e obter o valor em Km. Só que não tem como fazer essa conta dirigindo um carro, de forma que é muito melhor obter um valor aproximado.

A forma mais fácil que pensei foi a de arredondar a conversão para 1,5.

Pegue as 40 milhas por hora, some metade do valor (20):
40 + 20 = 60 km/h

Um pouquinho mais complicado, arredondar para 1,6:

1,6 = 1 + 0,5 + 0,1

Pegue as 40 milhas por hora, some metade do valor (20) e depois…

Ver o post original 168 mais palavras

O equilíbrio de Nash do filme “Uma mente brilhante” não é um equilíbrio de Nash

O filme “Uma mente brilhante”, com Russell Crowe e Jennifer Connely, é baseado na vida do matemático americano John Nash, famoso pela sua contribuição na muito interessante Teoria dos Jogos.

No filme, o grande insight de Nash ocorre na cena do bar. Nash e quatro colegas da faculdade estão bebendo. Uma loira atraente chega, acompanhada de algumas amigas não tão atraentes.

Vide vídeo no Youtube:

A primeira reação do grupo é citar Adam Smith: “Na competição, a ambição individual serve ao bem comum”. “Cada um por si”, diz um dos amigos, implicando que todos tentarão a sorte com a loira.

A conclusão de Nash é diametralmente oposta. Se todos chegarem todos primeiro na loira, levarão um fora, e as outras amigas se sentirão menosprezadas também darão um fora em todos.

A solução seria uma espécie de colaboração. Ninguém tem como alvo primário a loira. Cada um dos amigos chega em…

Ver o post original 257 mais palavras

Caminho com retângulos

Mais uma forma de fazer arte com retângulos.

É bem simples plotar um retângulo no Excel (ou em outra linguagem de programação) – e mudar propriedades como coordenadas, tamanho, cor e borda.

ActiveSheet.Shapes.AddShape(msoShapeRectangle, 50, 30, 50, 30).Select

Selection.ShapeRange.Fill.ForeColor.RGB = RGB(0, 0, 200)

Selection.ShapeRange.Line.ForeColor.RGB = RGB(0, 0, 0)

Este vai traçar um retângulo nas coordenadas (x,y) = (50,30), com largura 50 e altura 30. Cor azul escuro e contorno preto.

Uma sucessão de retângulos vai formar um caminho.

Podemos variar o centro do caminho, de modo a ficar assimétrico.

Ou podemos fazer este caminho seguir uma senoide.

O limite é a imaginação.

Baixe o arquivo Excel em:

https://github.com/asgunzi/Caminho-Seno

Vide também:

Ver o post original

Experimentos no DALL-E

O DALL-E é uma inteligência artificial que faz desenhos a partir de imagens (não confundir com o Mini-DallE, que é um clone mais pobre).

A empresa responsável pelo Dall-E, a OpenAI, liberou um trial de 50 imagens grátis no primeiro mês (e 15 por mês subsequente).

Qualquer um pode se cadastrar em: https://openai.com/dall-e-2/

Seguem alguns experimentos.

“Ornitorrinco (platypus) desenhado num estilho Kandinski”.

“Nietzsche com águia à direita e serpente à esquerda com background do sol se pondo” (essa é uma descrição de um capítulo do livro Assim falou Zaratustra, de Friedrich Nietzsche, um dos mais impactantes pensadores de todos os tempos).

“Balanço corpo e mente” – inclusive já usei uma figura gerada assim para post anterior.

“Tartaruga de Esopo vencendo corrida contra lebre”. Note que não ficou muito bom. O Dall-E não entende contos. O ideal é descrever detalhamente o que queremos que seja desenhado.

“Inferno com background tech” –…

Ver o post original 80 mais palavras

Números aleatórios e gerador de Bingo

Post do blog Ideias Esquecidas.

Funções de números aleatórios no Excel

Números aleatórios podem ser úteis para Análises estatísticas como Monte Carlo, e também é possível fazer algumas brincadeiras.

A fórmula “Aleatório()” do Excel fornece um número real aleatório entre 0 e 1:

Clicando F9 ou a qualquer mudança na planilha, este valor é recalculado.

Outra função útil é “=ALEATÓRIOENTRE(min;max)”: vai gerar um número aleatório inteiro entre o valor mínimo e o máximo.


Gerador de cartelas de Bingo

Vamos criar um gerador de cartelas de Bingo com números aleatórios.

Não podemos simplesmente jogar “=aleatórioentre(1, 15)”, porque provavelmente vai dar algum número repetido.

Então, temos que ser um pouquinho mais sofisticados.

Imagine que tenho que escolher 5 números entre 1 e 15, para a coluna “B” do Bingo.

Na célula imediatamente à esquerda, sorteio um número aleatório qualquer.

Uma forma de sortear 5 números da lista seria ordenar a coluna aleatória em ordem decrescente e pegar…

Ver o post original 91 mais palavras

Easy AI e Explainable AI

Sobre modelos simples e Explainable AI.

“Não há benefício em ter modelos complicados”

Baseado em palestra de Cynthia Rudin, Duke University, na Informs 2022.

A Inteligência Artificial (IA) tradicional é uma caixa-preta: entramos com dados (digamos, um milhão de fotos diversas) e com os outputs desejados (quais das fotos são rotuladas como gatinhos ou não), e o circuito interno é uma caixa-preta a ser treinada (uma rede neural de dezenas de camadas e milhares de neurônios por camada). O grande poder da IA dos últimos 10 anos derivou de conseguirmos melhorar essa caixa-preta cada vez mais.

Uma grande desvantagem desse tipo de método é como a rede neural vai se comportar com input totalmente desconhecido? Com algum caso nunca antes visto? Pode ser que ela classifique corretamente, pode ser que dê um resultado totalmente esdrúxulo.

Exemplos abundam, de como “enganar” uma IA.

Em métodos tradicionais de modelagem, entramos com inputs, as regras de decisão, e saímos…

Ver o post original 450 mais palavras