Para tomar decisões com um volume impensável de informações, não basta aumentar a memória ou a inteligência computacional, diz Mihnea Moldoveanu, da Rotman School; é preciso desenhar algoritmos

As grandes massas de dados –o que vem sendo chamado de “big data”– podem ser um megaproblema para o mundo dos negócios, e com razão: gerir empresas diz respeito a tomar muitas decisões, e decisões melhores dependem da posse de informações confiáveis e disponíveis no tempo certo. Ter os dados de que precisamos para as decisões que temos de tomar, portanto, é um desafio e tanto em uma era em que a capacidade de armazenamento, concentração e processamento de dados dobra a cada 18 meses ou dois anos.

A questão não é apenas técnica. Imagine que a capacidade de memória de todas as suas máquinas e a banda de todo o seu aparato de comunicação se multiplicassem por dez. O problema dos grandes dados teria ido embora? Com certeza não; muito provavelmente, pioraria. Agora, você teria mais dados relevantes e também menos informação útil.

O enorme problema com os grandes dados, então, é: como se transformam, de modo eficaz, eficiente e confiável, dados relevantes em informações úteis? Por exemplo, o mundo em desenvolvimento representa uma grande oportunidade para produtos ocidentais na próxima década. No entanto, para vencer a corrida, as companhias têm de predizer preferências, gostos e padrões comportamentais específicos de um grupo novo, grande e diversificado de usuários principais. Mas como?

A internet transformou cada usuário em um hub que conecta pessoas, ideias, produtos, tecnologias, filosofias e modos de ser e comportar-se. Cada um dos mais de 7 bilhões de humanos pode ser visto como um processo constante de geração de dados. Suas escolhas de estilo de vida e de consumo, seus humores e fisiologia, tudo isso gera dados que podem nos ajudar a prever seu comportamento, auxiliá-los em emergências, responder a suas preocupações. Como explorar tal quantidade de informações?

Memória x operações x engenhosidade

O tamanho do desafio só pode ser medido pelo número de operações requeridas para converter em informações os dados disponíveis. Conforme o tamanho das entradas de dados aumenta, o tamanho do problema “mega-aumenta”, pois a relação entre o número de variáveis de entrada e o de operações necessárias é não linear. Eis o motivo de a maioria dos problemas que as empresas enfrentam ser intratável tecnicamente.

Imagine como seria analisar o padrão de relações gerado por conexões no LinkedIn para prever quem será apresentado por quem, ou o padrão de decisões de compra na Amazon das pessoas conectadas entre si pelo Facebook para prever quem são os principais influenciadores. Para solucionar as equações que resultarão da modelagem desses padrões, é necessária uma explosão de operações, e não apenas uma explosão de memória para reter os dados. Será que a explosão de capacidade de processamento que nosso planeta experimentou pode ajudar? Apenas em parte.

Ainda que dobremos a capacidade de processamento por segundo (flops) a cada 24 meses, como diz a Lei de Moore, inteligência não é suficiente para lidar com problemas cujo tamanho cresce mais rápido do que tal lei pode dar conta.

Conforme o tamanho das entradas de dados aumenta, o tamanho do problema “mega-aumenta”

Para que fique mais claro, considere o problema que enfrenta uma vendedora que tenta passar por todas as 4.663 cidades canadenses no menor tempo possível, deslocando-se de carro. Quão difícil é esse problema? Ele é impossível de resolver pela força bruta dos computadores hoje disponíveis. Em termos de operações, ela teria de considerar 4.663! (ou quatro mil seiscentos e sessenta e três fatorial) permutas entre cidades para chegar aos caminhos alternativos, que consumiriam quase 163.213 anos, só para enumerar (à capacidade de processamento atual, que é de 1.012 operações por segundo).

O que se precisa aqui , portanto, não é de inteligência (realizar muitas operações em curto espaço de tempo), mas de engenhosidade; trata-se da capacidade de encontrar e implantar o melhor método de solução de problemas.

A vendedora pode encontrar a rota mais curta em seis minutos de processamento de CPU em seu desktop, usando um método de busca de solução criado por Shen Lin e Brian Kernighan há cerca de 40 anos, por exemplo. O algoritmo Lin-Kernighan baseia-se em fazer o primeiro chute de um caminho plausível e, então, modificá-lo aos poucos, avaliando o resultado e mantendo os caminhos modificados que contenham uma solução melhor. O constante incremento de melhorias na solução inicial é rápido o suficiente, nesse caso, para tornar possível o impossível.

Cada um dos mais de 7 bilhões de humanos pode ser visto como um processo constante de geração de dados

Engenhosidade Google

O que é engenhosidade? Diz respeito à capacidade de conceber um modo pelo qual as operações sejam sequenciadas. Trata-se de desenhar os algoritmos (sequências de instruções bem definidas) e a heurística (um procedimento simplificador que substitui problemas mais complexos por outros de mais fácil resolução, a fim de encontrar soluções viáveis, mesmo que imperfeitas) para solucionar os grandes problemas com os grandes volumes dados.

É a engenhosidade que nos tem permitido otimizar fábricas, calcular interações essenciais entre genes ou explorar as variações por minuto do preço da ação da Apple. A engenhosidade tanto dá forma ao problema como encontra maneiras de solucioná-lo.

Considere o número de patente norte-americana 6.285.999, concedido à Stanford University, pleiteado pelos cofundadores do Google, Larry Page e Sergey Brin, além de colaboradores. Trata-se de uma solução paradigmática e engenhosa para um problema de grande massa de dados, que era ordenar aproximadamente 1 bilhão de páginas ativas da web de modo a permitir ao usuário uma busca efetiva usando pesquisas simples. Um algoritmo de busca bem-sucedido ofereceria ao usuário a mais recente ordenação de páginas que contivessem uma palavra-chave ou frase, ordenada segundo sua importância entre todas as outras páginas. Como você faria isso?

Pode-se pensar na web como uma rede gigantesca de páginas, em que os padrões de citação entre elas são os links, e as páginas, os nós de rede. Esses são os grandes dados de entrada. O problema é processar, no hardware disponível (limitação técnica), algum tipo de ranking com base no status ou proeminência de cada página (saída) em 24 horas ou menos (prazo de processamento).

A ideia básica por trás do algoritmo de ranqueamento de páginas é a engenhosidade pura e simples: o procedimento calcula um peso aproximado para cada página, a partir de um número relativo de links que chegam (citados por) e saem (citam) –o que estimula o comportamento do usuário que navega na web–, e mede a probabilidade de o usuário simplesmente se entediar e sair da página. O algoritmo, então, constrói uma matriz muito grande, mas altamente dispersa, que um banco de mainframes de 1999 pode facilmente inverter para oferecer a atualização diária da importância de cada página na web.

A patente, que valia mais de US$ 300 milhões em opções sobre ações para Stanford à época do IPO do Google, em 2004, evidencia todos os elementos de engenhosidade que os grandes problemas trazidos pelos grandes volumes de dados exigem: transforma dados relevantes (comportamento do usuário e hyperlinks de cocitação) em informação útil (uma classificação para cada página) e de modo eficiente (pode-se processar essa métrica em menos de um dia).

Questão de história

A longo da história, foi a engenhosidade, e não a inteligência, que tornou possíveis os avanços significativos em comunicação, computação e acesso. Eis uma história oficiosa da inovação:

  1. Newton. Suponha que smartphones e desktops desapareçam de uma hora para outra e que muito dependa de o oitavo dígito da raiz quadrada de 2 ser 5. O que fazer? Bem, o método de Newton considera que a raiz quadrada de 2 é a equação a ser resolvida e chega a f(x) = x2 – 2 em torno do ponto em que f(x) = 0, e calcula o valor de “x” iterativamente (conceito que significa que a resposta melhora conforme se sucedem as aproximações). O método funciona como uma manivela: entra a última iteração, sai uma nova e melhora a aproximação à resposta. Se virarmos mais a manivela, mais conseguiremos. É engenhoso, pois soluciona problemas “impossíveis” ao criar outros modos de fazê-lo, em vez de resolver problemas existentes mais rapidamente.
  2. Andrew Viterbi e Bernard Glavieux. Viterbi, engenheiro de telecomunicações, cofundador da Qualcomm, concebeu um algoritmo de programação dinâmica para encontrar “a sequência mais provável de estados ocultos responsáveis por gerar uma sequência de estados observáveis do mesmo processo”. Funciona da seguinte maneira: um sinal wireless é corrompido e distorcido pelo canal que atravessa. Seus estados originais, gerados pelo transmissor, são escondidos do receptor pelo ruído e distorção do meio sem fio. O que o receptor vê, porém, é uma sequência de estados corrompidos e distorcidos do sinal. O algoritmo Viterbi possibilita que o receptor infira os estados ocultos do sinal a partir de sequências de estados observáveis. Isso gerou um faturamento maciço para a Qualcomm e permitiu que dispositivos de comunicação digital aperfeiçoassem muito seu desempenho e funcionassem com circuitos integrados muito pequenos.

A ideia básica desse algoritmo é que sempre é possível extrair mais informações de um canal wireless fazendo mais cálculos. É esse também o insight engenhoso por trás do código “turbo” de Bernard Glavieux, que viabilizou ainda outro grande avanço na eficiência do uso do espectro wireless pelos telefones celulares. Glavieux encontrou um algoritmo para codificar e decodificar dados que faz com que o designer de um smartphone possa adaptar o uso do decodificador ao canal e à quantidade de silício que exista dentro do dispositivo. O código permite, àqueles que podem fazer mais operações, conseguir melhor desempenho em som e escolher a complexidade do decodificador para diferentes condições do canal. Esse é o poder da iteração na versão século 21.

A partir de Moore

Gordon Moore acreditou que o limite mecânico dos dispositivos físicos seria também um limite de velocidade para nossa capacidade de solucionar problemas, mas estava errado. Há descontinuidade nos avanços que fizemos em velocidade de processamento, graças à engenhosidade. Faço dois adendos à Lei de Moore:

1. A Lei da Lacuna. O tamanho de nossos maiores problemas supera, em média, nossa capacidade de processamento em dez vezes. Os grandes problemas aumentam não linearmente, mas exponencialmente muitas vezes. Acrescente mil variáveis ao problema de otimização e você terá provavelmente de resolver um problema 1 bilhão de vezes maior. Assim, inteligência computacional e o progresso de Moore nunca alcançarão a capacidade de solução. Por isso, precisamos de engenhosidade.

No entanto, a Lei da Lacuna tem brecha; ela é verdadeira “na média”. Em certas ocasiões, a engenhosidade produz rupturas na solução de problemas, saídas não plausíveis para a Lei da Lacuna, o que sugere que somos melhores em solucionar grandes problemas do que supõe a Lei de Moore.

2. O efeito engenhosidade. Nossa capacidade média de solucionar problemas dobra a cada seis meses. Como a Lei da Lacuna, o efeito engenhosidade trabalha com a média. Não nos informa quais grandes problemas seremos capazes de resolver em seguida, mas diz que podemos solucionar, com a tecnologia existente, problemas maiores do que nosso nível de capacidade de processamento sozinho proporcionaria, já que nós também buscamos modos novos e muito mais eficientes de solução de problemas.

Cultive a engenhosidade

Eis as capacidades que precisamos cultivar em prol da engenhosidade:

 Modelagem**. Para interagir com grandes dados, é preciso entender o processo que os produz. A famosa declaração do Google “Em um mundo em que a informação é grátis e abundante, os modelos não são necessários” está muito errada. Sem o modelo do processo subjacente que gera os dados, não há como saber o que é relevante e o que não é. Mas precisamos mais do que modelos para o fenômeno de base. Também são necessários modelos para os problemas que os grandes dados alimentam.

• Codificação. As grandes massas de dados são estranhas para a maior parte dos graduandos em administração de empresas porque residem em um domínio difícil de acessar, o ciberespaço, codificadas por protocolos e linguagens estranhas. Não é de surpreender que as inscrições em cursos de introdução à inteligência artificial e à programação de computadores, em plataformas de e-learning como iTunes, Coursera, EdX e Udacity, superem as de todos os demais cursos.

Percepção. A informação não é dada; é produzida, construída. Precisamos percebê-la. A ciência da mensuração transforma qualidade em quantidade, ou seja, representa intuições, sentimentos e percepções em dados observáveis e mensuráveis. A ciência da percepção e da mensuração ainda está na infância.

A maior oportunidade para startups de internet está na construção de negócios que explorem e deem sentido aos terabytes de dados gerados por usuários do LinkedIn, Facebook etc. Os novos mestres em big data serão os mestres da engenhosidade cultivada que desafie a Lei da Lacuna.

O problema da vendedora que precisa percorrer o Canadá solucionado -O caminho mais curto que liga as 4.663 cidades canadenses, de acordo com o algoritmo de Lin-Kernighan

O problema da vendedora que precisa percorrer o Canadá solucionado 

-O caminho mais curto que liga as 4.663 cidades canadenses, de acordo com o algoritmo de Lin-Kernighan Stanford University, que valia US$ 336 milhões em opções do Google em 2005O que gera a ordenação de 1.000.000.000 páginas em cerca de (100.000) (1.000.000) operações.