Planeta ANSOL

Os conteúdos abaixo são artigos de blogues de sócios da ANSOL agregados automaticamente, e são da inteira responsabilidade dos seus respetivos autores. Assim sendo...

  • não representam nenhuma opinião ou posição formal da ANSOL mesmo que possam coincidir ou a sua autoria ser de membros dos órgãos sociais;
  • não podem ser censurados ou modificados quaisquer conteúdos devendo tais solicitações ser orientadas aos respetivos blogues agregados, bem como tais solicitações poderão eventualmente ser expostas publicamente em repúdio.

Mais modelos.

Publicado por Ludwig Krippal em 13 de Abril de 2020 às 11:03

Em abstracto, um modelo matemático é um conjunto de operações sobre parâmetros ajustáveis. Conforme o que queremos fazer, seja separar exemplos em classes, estimar distribuições ou aproximar uma curva a um conjunto de pontos, mexemos nesses parâmetros até ficar como queremos. A popularidade da curva logística na modelação amadora da COVID-19, a tal curva que maltratei no post anterior (1), deve-se à facilidade com que aproxima qualquer coisa que pareça um “S”, seja o acumulado de infectados seja os casos novos por dia. No entanto, para o problema concreto de analisar os dados, o modelo não é uma mera abstracção matemática. É uma ferramenta que deve servir para ajudar a esclarecer o que se passa ou ajudar a prever o que ainda não sabemos. Há modelos que ajudam a prever mesmo sem se perceber o que fazem mas isso só funciona quando os dados aos quais se ajusta o modelo vêm da mesma distribuição daquilo que queremos prever. Com a COVID-19 em Portugal não dá para fazer isso porque não temos um lote de Portugais onde treinar e validar os modelos que depois serviriam para fazer previsões acerca deste Portugal em que vivemos. Portanto a abordagem tem de ser a outra. Precisamos de modelos cujos parâmetros correspondam a algum aspecto da realidade, que nos ajudem a perceber o que se passa e, se os parâmetros estiverem correctos, permitam prever o que pode acontecer a seguir. É isso que os epidemiologistas tentam fazer.

Eu não sou epidemiologista mas, aproveitando que se sabe poucos dos parâmetros necessários para um modelo a sério, vou atalhar com um modelo simplificado. O meu é assim:



Dos susceptíveis, no início quase toda a gente, vão saindo todos os dias uma fracção proporcional aos contagiosos. Esta fracção aumenta os infectados, que mais tarde se tornam contagiosos. Os valores nas arestas do grafo são as fracções por dia. Os contagiosos podem tornar-se sintomáticos ou assintomáticos, podem mais tarde curar-se e deixar de contagiar, ou ir parar ao hospital e ter mais azar com a doença. Assumo que no hospital já não vão contagiar muita gente pelo que quem contagia, neste modelo, são os contagiosos, os assintomáticos e os sintomáticos. Estes últimos são quem tem sintomas suficientes para ir ao hospital, ser declarado suspeito e eventualmente testado confirmando a doença. Por isso, é o total dos sintomáticos que comparo com o total de casos confirmados em Portugal para ajustar o modelo.

O parâmetro que ajusto é apenas o primeiro, a taxa de contágio*. Aquele valor de 0.522 resulta de ajustar a curva à fase inicial de crescimento exponencial. Depois, a partir do dia 31 da simulação (é o dia que optimiza o ajuste aos dados da DGS), o valor é reajustado para ter em conta as medidas de mitigação. Na curva que obtive fica a 0.031. Ou seja, cerca de 3% de probabilidade por dia, em média, de alguém com COVID-19 contagiar outra pessoa neste momento. Os restantes parâmetros são inventados com base no que parece ser o tempo de incubação e duração da doença, mas são muito questionáveis e, por isso, repeti o ajuste mil vezes variando aleatoriamente os outros parâmetros até ±30% do seu valor original. Estas são as curvas cujo ajuste foi pelo menos tão bom quanto o original:



Primeiro, as más notícias. É mais fácil prever o passado do que o futuro e se bem que todas as curvas se aproximem dos dados a dispersão das previsões é enorme, dependendo muito de parâmetros cujo valor desconhecemos. E uma percentagem significativa dispara para valores muito altos, com dois terços das simulações prevendo até 50 mil infectados nos próximos 3 meses, mesmo mantendo as medidas de mitigação. Julgo que na DGS também sabem disto e é por isso que estão a apertar com medidas adicionais. Não estamos safos ainda. Mas também há boas notícias. Primeiro, parece que o tal pico já passou. Na verdade, ocorreu logo quando se impôs as medidas de mitigação, iniciando o decaimento da fracção de infectados e, por isso, de contagiosos. O problema é que esse decaimento pode ser ainda lento e demorar a reflectir-se nos casos que observamos, os sintomáticos, que só surgem mais tarde com o progredir da doença. Segundo, mesmo nas simulações mais pessimistas é óbvio que as medidas que se tem tomado tiveram um impacto grande na propagação da doença. Mais importante ainda, apesar da curva com os parâmetros que escolhi estar no limite optimista da distribuição das simulações, o meu modelo em si é pessimista. Eu estou a assumir que a população é homogénea e a aplicar a toda a população os parâmetros que ajustam a curva aos casos confirmados. Mas a população é heterogénea, algumas pessoas resistem melhor que outras, e os casos que temos até agora são tendencialmente de pessoas mais susceptíveis. Não consigo estimar essa heterogeneidade mas é um factor importante e é provável que a curva real seja mais favorável do que a minha.

Adianta de pouco ajustar modelos arbitrários aos dados que temos ou tentar descobrir “o pico” porque o que importa é o que vem a seguir e isso depende de muitos parâmetros desconhecidos. Mais importantes ainda do que os parâmetros biológicos da doença são os factores psicológicos e económicos das pessoas. O bicho não está morto. Mexe-se pouco porque lhe pusemos um pé em cima e levantar o pé agora seria um desastre. Para evitar esse desastre é preciso resolver com urgência os problemas de quem não tem meios para ficar em casa à espera da vacina. Se bem que geralmente os problemas dos pobres sejam os menos prioritários, desta vez tenho esperança que lhes dêem a devida importância porque, situação rara, desta vez a saúde e a vida dos ricos depende das condições em que vivem os pobres. É preciso agora que todos percebam o perigo que correm se não colaborarem.

* Ajusto também o número inicial de infectados para dar certo com os dados da DGS a partir do 10º dia da simulação

Actualizei o código na pasta partilhada. Mas aviso que cada vez tem mais tralha feita cada vez com menos tempo e com código cada vez mais confuso.

1- Inflexão

Inflexão.

Publicado por Ludwig Krippal em 9 de Abril de 2020 às 22:35

Tenho implicado regularmente com quem usa a curva logística para prever quando a epidemia estará controlada. Em parte é feitio. Gosto de implicar. Mas, neste caso, tenho outras razões para isso.

Se pusermos um pouco de iogurte em leite morno, os bacilos começam a reproduzir-se. Cada um divide-se em dois, esses dois em quatro, oito, dezasseis, e assim por diante. A isto chama-se crescimento exponencial porque o número depende de uma constante elevada ao tempo e que, por isso, tem o tempo em expoente. Mas é mais fácil perceber a curva exponencial como sendo em cada instante proporcional ao que era no instante anterior. Seja a crescer seja a diminuir. Por exemplo, o pneu furado perde, a cada instante, uma fracção constante da pressão que tinha, num decaimento exponencial também.

Mas voltemos ao iogurte. Como o leite morno não é infinito, eventualmente os bacilos terão menos alimento e o seu crescimento irá abrandar até ficar tudo em iogurte. Assim, por causa desta limitação, o número de bacilos em função do tempo não dispara para o infinito mas faz uma curva em “S”, eventualmente estabilizando. A função logística é um bom modelo para estes casos em que o crescimento exponencial encrava no limite rígido da capacidade do sistema. É também isto que acontece quando um vírus se propaga tanto pela população que começa a ser difícil encontrar vítimas por infectar. Eventualmente há tanta gente doente ou imune que a infecção pára de crescer. Uma propriedade simpática da curva logística é que o ponto em que a taxa de crescimento deixa de aumentar e começa a diminuir (o famoso ponto de inflexão) corresponde a metade do valor máximo. Diz-nos logo onde a curva vai parar. Por isso muita gente procura o ponto de inflexão da COVID-19 para prever o patamar. Não é boa ideia.

O gráfico abaixo mostra o número de casos confirmados na Coreia do Sul contando a partir do dia em que houve pelo menos 100. Ajustando a curva logística aos dados até ao dia 15, até ao dia 16, e assim por diante até ao dia 20, o resultado é bastante consistente. Tendo passado o ponto de inflexão no dia 10, o abrandamento do crescimento a seguir sugere a tal curva em “S” que pára por volta dos oito mil casos. O problema é que não pára. E a razão para isto é que o “S”, neste caso, não tem nada que ver com o iogurte ou a infecção descontrolada. Com cinquenta milhões de habitantes, não é por ter oito mil infectados que o vírus fica com falta de espaço para crescer. O abrandamento deveu-se apenas à redução na taxa de novas infecções por causa das medidas tomadas e o crescimento a seguir depende do valor em que ficou essa taxa. E isso não dá para ver com a curva logística.



Para explorar isto corri umas simulações. Considero que uma pessoa infectada demora alguns dias até contagiar os outros, depois tem 50% de probabilidade de não ter sintomas, continuando a contagiar os outros até se curar. Se tiver sintomas acaba por ser testada*. São essas pessoas que notamos no número de confirmados. O gráfico abaixo mostra dois casos. Em ambos os casos, a infecção começa com 200 infectados, que uns dias depois se tornam contagiosos e começam a passar a doença a outra pessoa com 20% de probabilidade por dia. Isto dá o tal crescimento exponencial. Ao dia 40, nesta simulação, o governo toma medidas extraordinárias e a taxa de contágio cai abruptamente. Pode ver-se um efeito imediato no grupo das pessoas contagiosas. Mas isto só se vê na simulação. Na realidade, não sabemos o que se passa com essas pessoas porque só vemos o sub-conjunto que tem sintomas. Neste, o efeito surge gradualmente e aparenta chegar ao tal ponto de inflexão no dia 50, aproximadamente, quando a curva parece afastar-se da exponencial. Mas isto não é por ter chegado a meio caminho do máximo. Não é uma curva logística. É apenas o efeito da taxa de contágio ter diminuído por causa das medidas tomadas.



Isto também mostra como o resultado depende crucialmente da eficácia das medidas. O gráfico da direita mostra a simulação em que a probabilidade de contágio caiu para 1.2% por dia. Neste caso**, a propagação baixou o suficiente para a epidemia ficar controlada. Mas se as medidas tomadas baixarem a taxa de contágio dos 20% originais para 2.2% em vez de 1.2%, ficando aquém só um ponto percentual, a doença continua descontrolada. É por isso que me preocupa a travagem na queda da taxa de crescimento dos casos de COVID-19 em Portugal, que podemos ver no gráfico abaixo. Se chegarmos a 1 sabemos que o problema está controlado, pelo menos enquanto mantivermos as medidas de mitigação que temos agora em vigor. Mas até lá não adianta andar à procura do “ponto de inflexão” ou a fazer previsões de patamares com modelos logísticos. A curva logística é o modelo errado porque estamos muito longe de atingir o máximo de capacidade do vírus infectar a população. E o progresso futuro, mesmo mantendo as condições como estão agora, depende muito de diferenças demasiado pequenas para se detectar por enquanto olhando para os pontos.



* Na pasta partilhada incluí o código para estes gráficos e simulação. Estão lá os parâmetros para estas probabilidades para quem quiser ver, e simulo também os casos críticos, mortos e recuperados, mas esses detalhes não são importantes para este post. Está tudo aqui.
** A simulação é estocástica e não dá sempre exactamente os mesmos resultados. Mas corri várias vezes e, com estes valores, dá isto em geral.

Enfrentando a fera: Usando o GNU Health para ajudar na luta contra a pandemia do COVID-19

Publicado por Jaime Pereira em 2 de Abril de 2020 às 15:25

Nota sobre o texto que apresento abaixo: Passo a partilhar a tradução para português deste excelente texto de Luis Falcon que chegou ao meu conhecimento no dia 31 de Março. Reflexão: Há quantos anos andamos a perder autonomia, dinheiro, recursos humanos e técnicos com esta política de “submissão” às corporações detentoras de software proprietário que nos têm arruinado e posto em Jaime Pereirahttp://www.blogger.com/profile/02980045639129022747noreply@blogger.com0

Região do Norte.

Publicado por Ludwig Krippal em 30 de Março de 2020 às 23:57

A Câmara do Porto «deixa de reconhecer autoridade à senhora directora-geral da Saúde» se declarar medidas mais extremas para conter a propagação do SARS-CoV-2. Politiquices à parte, eu queria ver se havia alguma razão para preocupação com o aumento de casos confirmados de COVID-19 na Região do Norte. Um problema de olhar para os dados em mais detalhe, em vez de considerar o agregado, é que aumenta o peso relativo de factores estranhos ao que procuramos. Por exemplo, entre os dias 26 e 27 de Março não houve novos casos confirmados na região de Lisboa. Isto não foi por folga do vírus. Entre o vírus e os dados de que dispomos interpõem-se sempre atrasos nos testes, problemas nos registos e outros factores alheios à epidemia. Nos valores agregados estes desvios pontuais tendem a cancelar-se e o total de casos confirmados em Portugal varia de dia para dia de forma bastante estável. Mas visto de perto o ruído é maior. Os gráficos abaixo mostram a proporção de casos novos e casos acumulados somando por região NUTS-II os dados dos concelhos.



No gráfico da esquerda nota-se bem a grande variação diária. É um exemplo visual do perigo de fazer análises com grão mais fino que o do ruído. Mas o gráfico da direita, com os valores acumulados, é mais estável. Pode-se ver que, realmente, a Região do Norte tem um peso maior no total de casos confirmados mas, por outro lado, a proporção de casos no Norte não parece estar a aumentar muito. Talvez um pouco mas com oscilações tão grandes de dia para dia não é claro se é por tendência se é por acaso. Ainda assim, parece que nos três últimos dias o Norte tem sido responsável por uma fracção crescente dos casos novos.

Uma forma de tentar perceber porquê seria olhar em detalhe para os dados dos concelhos e procurar padrões que sugerissem uma explicação. Este método de data mining tem uma longa tradição, desde o tempo em que se fazia com folhas de chá ou entranhas de animais. O problema disto, além do ruído, é que o número de padrões possíveis explode combinatoriamente com a quantidade de factores considerados, praticamente garantindo à partida que vamos encontrar explicações para todos os gostos. O mais prudente é fazer o contrário: formular hipóteses que se possa testar com os dados e depois procurar especificamente o que nos permita testar essas hipóteses. O que vier a mais pode ser admitido como hipótese a testar com novos dados mas não mais do que isso.

Assim, decidi considerar três possibilidades. A primeira é a de que na região Norte a taxa de crescimento está maior por toda a região. A segunda é a de que o crescimento se deve mais à contribuição de muitos concelhos pequenos. E a terceira é que o problema principal está no concelho do Porto. Só esta última é que daria razão à directora-geral da Saúde. Para ver isto, represento abaixo a proporção de casos novos em cada dia distribuídos pelos vários concelhos. Cada concelho está marcado no eixo das abcissas em função do (logaritmo) do número total de casos. O Porto é o ponto mais à direita. As linhas mostram a distribuição de casos novos em cada dia. Até ontem, o Porto estava a contribuir uma fracção modesta, com o grosso dos casos provindo, em agregado, de concelhos no meio da distribuição. Mas hoje o cenário mudou radicalmente, com o Porto açambarcando a maior parte da área debaixo da curva. A menos que isto se deva a algum problema contabilístico (ou erro da minha parte), penso que a directora-geral da Saúde tem razão.



Como da minha opinião não dependem milhares de vidas, posso encarar esta conclusão como provisória e aguardar uns dias até ter mais dados para reavaliar estas hipóteses. Na DGS não têm esse luxo. Não lhes invejo a responsabilidade de decidir já o que fazer, ou não fazer, sabendo que qualquer opção poderá ter consequências trágicas.

Como das outras vezes, actualizei o código e os dados na pasta partilhada.

1- Público, Câmara do Porto critica cerco sanitário ao Porto. E questiona “autoridade” da directora-geral da Saúde

Nós e os outros.

Publicado por Ludwig Krippal em 28 de Março de 2020 às 22:24

Este gráfico mostra a evolução da taxa de crescimento dos casos confirmados para este grupo de países, contando o dia 0 como sendo o dia em que o número de casos confirmados passou os 100. Para cada período de 5 dias, começando nos dias 0 a 4, calculo a taxa de crescimento exponencial. Com base nessa, calculo uma dispersão de valores para a taxa de crescimento por bootstrapping residual (1). A linha mais grossa representa a mediana desses valores e as linhas mais finas os percentis 10% e 90%.



Em todos estes países houve uma fase inicial em que as curvas se afastaram da exponencial, o que julgo ser por causa da transição conforme tomavam medidas de mitigação. Isto nota-se pela maior dispersão dos valores. A Suécia parece ser excepção, talvez por não ter tomado medidas excepcionais. Apesar disso, a taxa de propagação do vírus na Suécia diminuiu e parece ser relativamente baixa. Mas mais sobre isso adiante. O maior crescimento nesta fase inicial foi na China, o que não é estranho porque foi o primeiro país afectado. Os outros já sabiam o que por aí vinha. Portugal parece ter aplicado bem a lição. Manteve a taxa de crescimento comparativamente baixa no início e agora tem estado a diminuir. Mas por cá a procissão ainda vai no adro. Metaforicamente, que procissões nesta altura é má ideia.

Na fase intermédia podemos ver que a Alemanha, Itália e EUA tiveram mais dificuldade do que a China a travar a propagação. A Alemanha agora está como a Itália estava há uns dez dias mas os EUA estão bem pior. As coisas nos EUA parecem estar a melhorar mas aquele tempo perdido pode ter resultados trágicos. Com crescimento exponencial não se brinca. E um exemplo disso é a Itália. Há quase duas semanas que a Itália tem conseguido manter a taxa de propagação relativamente baixa, entre 1.2 e 1.1. Mas isso não chega, e serviu para ultrapassar a China, porque um crescimento exponencial a 1.1 por dia duplica os casos a cada semana. É uma lição importante para a Alemanha, os EUA e para nós também. O nosso gráfico vai bem encaminhado mas não podemos adiar muito a chegada ao 1.0.

O que me traz à Suécia. Apesar das medidas na Suécia terem sido mais suaves do que nos outros países, a taxa de propagação tem-se mantido baixa. Não faço ideia porquê. Pode ser por factores culturais, pelo clima ou outra coisa qualquer. Mas o que se vê no caso da Itália é que baixo não chega. Se se mantiver em 1.1 eventualmente vai dar em tragédia.

Há quem critique as medidas tomadas em Portugal como extremas. Eu discordo. Portugal tem um avanço em relação à China por ter tomado medidas eficazes mais cedo e está melhor do que a Alemanha e os EUA estavam nesta fase. Mas o factor de crescimento não está muito abaixo do que estava na Itália há vinte dias atrás. É muito importante que o nosso percurso daqui em diante seja mais favorável, mesmo que isso exija sacrifícios.

Actualizei o código na pasta partilhada. Incluí o código que uso para recolher informação desta página do Ministério da Saúde, Ponto de Situação Atual em Portugal. Mas como recorro a API usadas pela página mas não documentadas, recomendo que usem essas funções com moderação não vá alguém chatear-se e mudar a API. Já perdi tempo que chegue com a porcaria dos boletins em pdf, cada um com um formato ligeiramente diferente.

1- Mais sobre isso no post anterior.

Os testes.

Publicado por Ludwig Krippal em 25 de Março de 2020 às 11:27

Tenho encontrado alegações de uma suposta ocultação de casos de COVID-19 por limitações no número de testes. É claro que os 2362 casos confirmados são uma fracção dos casos em Portugal. Há doentes ainda sem sintomas, outros cujos sintomas serão leves demais para irem ao médico e assim por diante. Seria bom testar toda a gente para encontrar os focos de infecção mas não é viável. Por isso, em valor absoluto, estamos a subestimar o número de casos. Mas, se os testes forem feitos de forma consistente, a variação diária será um bom indicador de como a infecção se está a propagar pela população e do efeito das medidas tomadas. O mesmo para os casos suspeitos. Basta que os critérios de diagnóstico sejam aplicados de forma consistente.

Antes de explicar por que me parece ser esse o caso, queria apontar que quando dizem que o número de testes está a diminuir estão a especular. Até dia 15 de Março, os boletins da DGS indicavam os casos confirmados, infirmados, e aguardando resultados. Havia também um gráfico com confirmados e excluídos por data de início de sintomas. A partir de dia 16 de Março passou a haver “não confirmados” e o os excluídos desapareceram do gráfico dia 17. Isto sugere que, a partir desta data, estão a incluir testes negativos e casos não testados na mesma categoria. Por isso, neste momento, não conseguimos saber pelos boletins quantos casos foram testados. Não vejo nada de sinistro nisto. Com o aumento do número de casos aumenta também a probabilidade de haver falhas pontuais, demoras e outros problemas. Se bem que me agradasse ver isso tudo discriminado, compreendo que a prioridade na DGS não seja satisfazer os epidemiologistas de Facebook. Portanto, se virem alguém dizer que olhou para o boletim e viu que ontem houve menos testes que anteontem, sejam cépticos. Não está lá essa informação.

O que parece preocupar algumas pessoas é ainda mais estranho. Assumindo que todos os suspeitos são testados (o que, a ser verdade, será bom), contam o número de novos casos suspeitos e concluem que há menos testes porque há menos casos suspeitos. Não percebo onde é que isso é má notícia. É precisamente o que esperamos resultar das medidas de mitigação. Olhando para os dados desde dia 16*, parece-me não haver qualquer crise ou rotura. O boneco abaixo mostra isto, à esquerda com os valores diários de casos novos e à direita com os valores acumulados até cada data. Os casos a aguardar resultados parecem estar a acumular-se, com mais peso em cada dia, mas isso não parece ter grande efeito na detecção dos casos confirmados e, quando comparados com o total, o problema não é significativo. Até porque reduzir o número de testes pode ter um impacto pequeno no número de casos confirmados porque os testes não são aleatórios. As prioridades tenderão a dar precedência aos casos mais prováveis e quanto mais para baixo na lista menos casos reais se perde.


Mas há outra forma de testarmos se o processo decorre com normalidade. Como a percentagem de infectados na população é ainda pequena, o aumento de casos é aproximadamente exponencial. O que varia com as medidas tomadas será a taxa de crescimento, que deverá ir diminuindo gradualmente, mas o tipo de curva deve manter-se em cada janela de tempo. Excepto se houver perturbações na recolha de dados. Se deixa de haver testes ou se mudam protocolos há um salto súbito nos números e, nesse período, a exponencial já não se ajusta bem. Podemos medir isso pelo erro residual de cada ponto à curva ajustada, e podemos usar depois esses erros, distribuindo-os aleatoriamente pela curva, para gerar curvas hipotéticas que teríamos se a perturbação tivesse calhado noutro lado. Este é o método de residual bootstrapping, que ilustro na figura abaixo.

Os pontos da esquerda fazem um “cotovelo” que não encaixa numa curva exponencial e por isso têm um desvio considerável da curva ajustada. Se distribuirmos esses desvios aleatoriamente pela curva podemos gerar pontos que darão curvas diferentes, representadas pela mancha de linhas laranja. À direita isso não acontece. A curva ajusta-se bem aos pontos, os residuais são pequenos e a família de curvas fica numa gama mais estreita. Foi assim que calculei famílias de valores para a taxa de crescimento em janelas de 5 dias terminando nas datas indicadas na figura abaixo, quer para casos suspeitos quer para casos confirmados. Cada pontinho é um valor calculado para a taxa de crescimento, e as nuvens dão uma ideia da dispersão desses valores em cada dia, com as “barrigas” indicando maior densidade de valores.

Podemos ver que a taxa inicial de crescimento dos casos confirmados era muito grande, provavelmente pelo aumento inicial no número de testes, mas depois aproximou-se da taxa de crescimento dos casos suspeitos. Entre 13 e 16 de Março houve um desvio grande em relação à curva exponencial, que se pode ver pela maior dispersão dos valores, que indica que o ajuste não é bom. Isto sugere uma alteração brusca, seja nos protocolos seja no comportamento dos suspeitos, o que não é de estranhar nessa altura. Mas a partir de dia 16 as coisas estabilizaram e, com uma taxa de crescimento a diminuir, os dados ajustam-se bem às curvas exponenciais. Além disso, nota-se que os suspeitos estão cerca de dois dias à frente dos confirmados, o que se explica pelo atraso relativo nos resultados dos testes. Este perfil não me parece consistente com uma rotura na capacidade de fazer testes ou outro problema súbito qualquer. Mais ainda, mesmo que houvesse uma conspiração da DGS para nos ocultar estes números, julgo que era preciso um esforço considerável para os falsificar tão bem. Portanto, neste momento, não partilho da opinião de quem diz que os números não valem nada porque não se está a testar. Mas será interessante ver o que acontece nos próximos dias, porque penso que haverá uma revisão dos protocolos de teste e diagnóstico. E isso poderá dar outro safanão nos números e demorar uns dias a estabilizar novamente.

* Porque é uma chatice extrair aqueles dados; o boletim parece ser uma coisa feita em Powerpoint e depois exportado para pdf, e mudaram várias vezes o formato...

Nota: actualizei o código na pasta partilhada. Seguindo a sugestão do Raúl Fernandes (obrigado, Raúl) incluí um ficheiro com a lista de bibliotecas que é necessário para correr isto. Já agora, se algum aluno meu olhar para este código, saliento que estamos a viver uma emergência e isto foi tudo feito à pressa.

Modelos

Publicado por Ludwig Krippal em 22 de Março de 2020 às 13:52

O modelo mais básico da epidemiologia é o dos susceptíveis (S), dos infectados (I) e dos recuperados (R), aos quais chamarei removidos por incluirem não só os que já não apanham a doença por terem ganhado imunidade mas também os que ficaram imunes por óbito. A ideia deste modelo é que pessoas infectadas contagiam os susceptíveis com uma certa taxa mas depois, no final do curso da doença, já não voltarão a contraí-la e, por isso, são removidos da população em risco. Assim, inicialmente o número de infectados vai crescendo exponencialmente em função da taxa de contágio mas, como o número de susceptíveis começa a diminuir, eventualmente a taxa de crescimento dos infectados é ultrapassada pela taxa de remoção (por recobro ou óbito) e o número de infectados começa a cair. O gráfico abaixo mostra uma comparação das curvas obtidas aplicando este modelo a uma gripe normal e à COVID-19 para uma população de 10 milhões de habitantes (1).

Tenho encontrado pessoas a criticar o alegado exagero das medidas que se está a tomar. Curiosamente, fogem de especificar a que medidas se referem. Lavar as mãos? Proibir missas e jogos de futebol? O que fazem é alegar vagamente que este novo vírus não é muito diferente da gripe normal. Mas é. É muito mais contagioso. A taxa de contágio dos vírus da gripe é aproximadamente 1.15, o número médio de pessoas que um doente infecta antes de recuperar. Para o vírus da COVID-19 as estimativas variam entre 2 e 2.5, ou mais se não houver sequer precauções elementares. Parece pouca diferença mas o que conta é o que está acima de 1, que é o que faz a epidemia crescer. Por isso podemos pensar na COVID-19 como sendo dez vezes mais contagiosa do que a gripe. E isto nota-se nas curvas simuladas assumindo estes parâmetros. Enquanto que um surto de gripe infecta, no pico, oitenta mil pessoas em Portugal, se deixarmos a COVID-19 à vontade ultrapassa os dois milhões. Isto é o número de pessoas doentes em simultâneo. Além disso, a doença é mais grave e prolongada. Em cada 10 pessoas, uma precisa de cuidados hospitalares, o que daria duzentos mil portugueses gravemente doentes para 35 mil camas e 1500 ventiladores disponíveis em Portugal. E isto assumindo que todos os outros doentes se curavam milagrosamente neste período para vagar lugares e equipamento. Eu simpatizo com quem questiona a autoridade e sou sempre a favor do cepticismo. Mas antes de dizerem asneiras façam as contas. Isto não é uma gripe.

Outra linha de argumentação que tem surgido é a comparação com o número de pessoas que morre em Portugal de pneumonia, de gripe e assim por diante. As contas são fáceis de fazer. A esperança média de vida em Portugal é 81 anos o que, com cerca de 10 milhões de habitantes, dá 10 mil mortes por mês. Morre por mês em Portugal quase tanta gente quanto as 13 mil pessoas que morreram em todo o mundo por causa do novo coronavírus desde o início do ano. Mas isto não são boas notícias. Primeiro, porque morreram 13 mil pessoas mesmo apesar de se tentar tomar as tais medidas que alguns acham exageradas. E, em segundo lugar, isto é apenas o início. O gráfico abaixo mostra a posição dos vários países contando as semanas passadas desde o primeiro caso reportado e se a corrida até ao pico fosse em Portugal (2).


Devo apontar que isto não são previsões. Pelo menos por cá, é provável que se consiga retardar a epidemia durante cerca de um ano até haver vacina. Com uma vacina a taxa de contágio fica muito reduzida (3) e a epidemia fica controlada. Infelizmente, as medidas de higiene e distanciamento social só funcionam onde há água canalizada e não é preciso reunir pessoas diariamente à volta do poço. Temo que muitos países farão a trágica escalada até ao cume daquele pico. Mas por cá as medidas que estamos a adoptar parecem fazer efeito e o aumento em proporção ao número de casos está a diminuir. O painel da esquerda mostra o número de casos em cada dia em proporção ao dia anterior a partir de 11 de Março (antes disso há muita flutuação porque os números são pequenos), a recta ajustada aos pontos e a mancha que dá ideia da incerteza no declive(4). Como esta redução faz os pontos desviarem-se da exponencial, podemos (pelo menos quem sofra do mesmo que eu) sentir-nos tentados a usar o modelo SIR. Isto é um erro porque o SIR pressupõe uma taxa constante de contágio e o que trava a infecção é a redução na fracção de indivíduos susceptíveis. Não é o que se passa agora e, como mostra o gráfico da direita, se formos ajustando o SIR aos dados que vêm vamos subestimar muito o perigo que ainda há por o modelo confundir o abrandamento causado pelas medidas tomadas com o ponto de inflexão na curva. Por exemplo, o modelo com os dados até hoje prevê um factor de contágio de 1.2 e um tempo de recuperação de cerca de um dia.


É por isso que eu prefiro ir seguindo o que acontece usando curvas exponenciais ajustadas ao período mais recente, conforme os dados vão chegando. Por um lado, isto dá uma ideia visual do impacto futuro das medidas que vamos tomando, algo que não é perceptível no gráfico do declive. Mas, por outro lado, não comete o erro de presumir que nos estamos a afastar da fase de crescimento exponencial. Enquanto apenas uma fracção pequena de pessoas estiver infectada, e é crítico que assim se mantenha, o crescimento será exponencial. O que muda é o factor de multiplicação. Aqui fica então o boneco para hoje:

Nota: Se alguém quiser experimentar isto, pus o código e os dados nesta pasta partilhada. Precisam de Python 3.x e algumas bibliotecas; o mais prático será instalar a distribuição Anaconda (https://www.anaconda.com/distribution/). Se notarem erros, agradeço que me digam, de preferência depois de os corrigirem :)

1- Os parâmetros para a gripe tirei desta apresentação e para a COVID-19 usei um r0 de 2.2 e uma duração média de duas semanas.
2- Segundo dados do ECDC, aqui, e considerando apenas países com mais de 200 casos confirmados num só dia.
3- Muita gente julga que a vacina serve para nos protegermos individualmente. Em geral, a eficácia para isso é pouca, reduzindo apenas a probabilidade de ser infectado. Mas, em colectivamente, se toda a gente se vacinar reduz-se o tal factor de propagação e a doença não arranca sequer. A protecção vem de não haver gente doente para nos contagiar.
4- A mancha e o desvio padrão no declive foram calculados por bootstrapping residual usando 1000 réplicas.

Remotely working from home

Publicado por João Neves em 12 de Março de 2020 às 08:00

I've been working from home either partially or fully in the last few decades. So here are the most important tips/adjustments that will help you adjust quickly:

  1. Keep a morning routine - while a lot of people talk about working from home in pyjamas, it's easier if you just keep …

Se o dinheiro é público, o código tem de ser público! #PublicCode #SignTheLetter

Publicado por Paula Simões em 27 de Setembro de 2017 às 21:52

As entidades que constituem a administração pública têm, muitas vezes, de desenvolver software: um website, uma plataforma, uma aplicação, etc. O desenvolvimento desse software é pago com dinheiro público, dinheiro dos impostos de todos nós.

O problema é que a administração pública permite que esse software tenha uma licença de software proprietário.

O que é que isto significa?

Esse software, que foi pago por todos nós, não pode ser reutilizado, nem verificado.

Mas se uma entidade pública licenciar o código do software que desenvolve com uma licença de software livre ou de código aberto, então qualquer outra entidade pode reutilizar esse código, para prestar serviços similares, poupando dinheiro, trabalho e tempo, uma vez que não é preciso estar a desenvolver novo código: reutiliza-se o que já existe!

Para além disto, é possível a qualquer pessoa ver o código desse software para verificar que o software não está a fazer nada que não deva fazer: que não está a enviar informação sobre o que têm no vosso computador para quem não deve enviar, que não tem backdoors, que possam servir de entrada a um ataque, etc.

Assim, a Free Software Foundation Europe (FSFe) criou uma carta aberta, a ser enviada aos representantes Europeus, para pedir a criação de legislação, que determine que o software financiado com dinheiro público e desenvolvido para o sector público tenha de ser disponibilizado com uma licença de software livre e de código aberto.

A carta já foi assinada por 80 organizações (incluindo as Portuguesas Associação Ensino Livre, a Associação Nacional para o Software Livre e a Associação D3 – Defesa dos Direitos Digitais). Assinem e enviem para os vossos contactos!

A lista de assinaturas que permite comentários tem vários bastante interessantes, que mostram bem como os cidadãos consideram esta medida óbvia e até que já devia estar implementada. Vale a pena percorrer os comentários aqui.

Para explicar melhor o que está em causa, a FSFe criou um vídeo, que deixo aqui:

Alteração à tabela da #PL118 pelo @cultura_pt @govpt

Publicado por Paula Simões em 25 de Setembro de 2017 às 21:46

 

bundle-1853667_1280Foto por Pexels CC0 Creative Commons

Já na discussão sobre a compensação da cópia privada, a VISAPRESS, entidade de gestão colectiva que representa os editores de notícias, fez saber, numa audição no Parlamento Português (ver o vídeo no final desta página entre o minuto 12 e 14), que os editores de notícias também deveriam ter direito a uma fatia da taxa da cópia privada.

Em resposta a uma pergunta do então sr. deputado Michel Seufert, o representante da VISAPRESS justificava o direito a tal fatia por as pessoas partilharem notícias umas com as outras:

“(…) Eu para mim, é uma coisa frequentíssima chegar a um sítio e as pessoas mostrarem-me um recorte de um jornal que receberam de não sei quem, que emprestou a não sei quem e que está lá, marcado, quem é a empresa que fez, etc. (…)”

Contextualizando, para clarificar:

Qualquer empresa, entidade, ou pessoa pode contratar o serviço de uma empresa de clipping, para recolher todas as notícias sobre um determinado assunto (tipo Google Alerts, mas pago). Mas para prestarem este serviço, as empresas de clipping precisam de uma autorização dos titulares dos direitos das notícias, ou seus representantes, como a VISAPRESS. Assim, as empresas de clipping contactam a VISAPRESS, que emite uma licença, que as empresas de clipping pagam para depois fazer a recolha de notícias e enviarem para as empresas, entidades ou pessoas que contrataram e pagaram o serviço.

Quando o clipping chega às empresas ou entidades que subscreveram o serviço é distribuído por pessoas, que têm direito a receber esse clipping. Na audição parlamentar, o sr. da VISAPRESS queixava-se que essas pessoas partilham essas notícias (que têm direito a receber) com pessoas que não fazem parte da empresa ou entidade que recebeu o clipping e, que portanto não têm o direito de aceder as essas notícias. Como não é possível saber quantas estas partilhas são, diz a VISAPRESS que não as pode incluir no preço da licença que vende às empresas de clipping. Por causa, disto, a VISAPRESS foi ao Parlamento defender que deveria ter direito a uma fatia da taxa da cópia privada para compensar essas tais partilhas, cuja quantidade não se sabe.

Na altura, a VISAPRESS não teve direito a uma parte da taxa da cópia privada. E muito justamente. Porque a queixa da VISAPRESS não dizia respeito à cópia privada. A VISAPRESS queixou-se da partilha de ficheiros sem fins comerciais, ou seja, queixou-se da pirataria de notícias. Uma cópia só é privada se for feita para fins exclusivamente privados, segundo a lei, logo só a pessoa que fez a cópia é que pode usar a cópia, mais ninguém pode usar aquela cópia. Ora, a notícia recebida “de não sei quem, que emprestou a não sei quem” não é uma cópia privada. Se não é uma cópia privada e não está incluída em mais nenhuma excepção ao direito de autor (utilizações livres), então só pode ser pirataria.

Se o Governo queria dar dinheiro aos órgãos de comunicação social por conta da tal partilha de notícias, deveria ter criado uma proposta de lei que alargasse a definição de cópia privada à partilha de ficheiros sem fins comerciais, legalizando essa tal partilha das notícias de que a VISAPRESS se queixou no Parlamento.

Mas nada disto foi feito.

O Ministério da Cultura fez saber hoje que alterou a designação dos equipamentos na tabela da compensação da cópia privada, substituindo as descrições referentes a equipamentos de áudio e vídeo, para descrições mais generalistas de “conteúdos e dados” de forma a que a VISAPRESS possa passar a receber a tal fatia da taxa.

Ou seja:

O Ministério da Cultura fez saber hoje que uma parte da compensação que pagamos por conta da cópia privada vai servir para compensar a pirataria de notícias de que se queixou a VISAPRESS, e que vai continuar a ser pirataria.

As pessoas continuam a não poder partilhar notícias inteiras e, portanto, uma parte da taxa que pagamos vai compensar uma acção que não podemos fazer.

Como se isto não fosse suficientemente mau, o Ministério da Cultura ainda fez saber através de comunicado oficial [PDF] que o Governo Português defende o artigo 11º da proposta de Reforma do Direito de Autor da Comissão Europeia, que estipula a criação de um novo direito conexo a ser dado aos editores de notícias.

Se esta proposta Europeia for aprovada, passamos também a não poder partilhar sequer excertos de notícias, a menos que seja paga uma nova taxa, que provavelmente será gerida pela VISAPRESS.

Um obrigada à D3 – Defesa dos Direitos Digitais, que encontrou o comunicado oficial.

Subscreva Planeta ANSOL