O que é um algoritmo? Como computadores sabem o que fazer com dados

Por que cada curtida, compartilhamento ou comentário numa rede social faz o computador tomar decisões por você que parecem que são tomadas por você mesmo?

Existem muitas variáveis a serem consideradas ao escolher o que vestir. Chris / Flickr, CC BY-NC

O mundo da computação está cheio de chavões: IA, supercomputadores, aprendizado de máquina, nuvem, computação quântica e muito mais. Uma palavra em particular é usada em toda a computação – algoritmo.

No sentido mais geral, um algoritmo é uma série de instruções que dizem a um computador como transformar um conjunto de fatos sobre o mundo em informações úteis. Os fatos são dados e a informação útil é o conhecimento para as pessoas, instruções para máquinas ou entrada para outro algoritmo. Existem muitos exemplos comuns de algoritmos, desde a classificação de conjuntos de números até a localização de rotas em mapas e a exibição de informações em uma tela.

Para ter uma ideia do conceito de algoritmos, pense em se vestir de manhã. Poucas pessoas pensam nisso. Mas como você escreveria seu processo ou diria a uma criança de 5 anos sua abordagem? Responder a essas perguntas de maneira detalhada produz um algoritmo.

Entrada

Para um computador, input é a informação necessária para tomar decisões.

Quando você se veste de manhã, de quais informações você precisa? Em primeiro lugar, você precisa saber quais roupas estão disponíveis em seu armário. Então você pode considerar qual é a temperatura, qual é a previsão do tempo para o dia, em que estação é e talvez algumas preferências pessoais.

Tudo isso pode ser representado em dados, que são basicamente coleções simples de números ou palavras. Por exemplo, a temperatura é um número, e uma previsão do tempo pode ser “chuvoso” ou “sol”.

Transformação

Em seguida, vem o coração de um algoritmo – computação. Os cálculos envolvem aritmética, tomada de decisão e repetição.

Então, como isso se aplica a se vestir? Você toma decisões fazendo algumas contas sobre essas quantidades de entrada. O fato de você colocar uma jaqueta pode depender da temperatura, e a jaqueta que você escolher pode depender da previsão do tempo. Para um computador, parte do nosso algoritmo de vestir seria semelhante a “se estiver abaixo de 50 graus e estiver chovendo, escolha a capa de chuva e uma camisa de mangas compridas para vestir por baixo”.

Depois de escolher suas roupas, você precisa colocá-las. Esta é uma parte fundamental do nosso algoritmo. Para um computador, uma repetição pode ser expressa como “para cada peça de roupa, coloque-a.”

Resultado

Finalmente, a última etapa de um algoritmo é a saída – expressando a resposta. Para um computador, a saída geralmente é “mais dados”, assim como a entrada. Ele permite que os computadores agrupem algoritmos em formas complexas para produzir mais algoritmos. No entanto, a saída também pode envolver a apresentação de informações, por exemplo, colocar palavras em uma tela, produzir pistas auditivas ou alguma outra forma de comunicação.

Então, depois de se vestir, você sai para o mundo, pronto para os elementos e os olhares das pessoas ao seu redor. Talvez você até tire uma selfie e coloque no Instagram para exibir suas coisas.

Aprendizado de máquina

Às vezes é muito complicado descrever um processo de tomada de decisão. Uma categoria especial de algoritmos, algoritmos de aprendizado de máquina, tenta “aprender” com base em um conjunto de exemplos de decisões anteriores. O aprendizado de máquina é comum para coisas como recomendações, previsões e busca de informações.

Para o nosso exemplo de como se vestir, um algoritmo de aprendizado de máquina seria o equivalente a se lembrar de decisões anteriores sobre o que vestir, saber como você se sente confortável ao usar cada item e talvez quais selfies receberam mais curtidas e usar essas informações para melhorar escolhas.

Portanto, um algoritmo é o processo que um computador usa para transformar dados de entrada em dados de saída. Um conceito simples, mas cada peça de tecnologia que você toca envolve muitos algoritmos. Talvez da próxima vez que você pegar seu telefone, assistir a um filme de Hollywood ou verificar seu e-mail, você possa refletir sobre que tipo de conjunto complexo de algoritmos está por trás das cenas.

Jory Denny é professor assistente de ciência da computação na University of Richmond

Traduzido por Cezar Xavier

Autor

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *