Desvendando os Mistérios dos Algoritmos
De forma simples e para que todos possam perceber o que são algoritmos: Algoritmos não são um programa de computador ou algo que possa ser entendido como tecnológico, apesar de hoje serem aplicados como quase tudo pela tecnologia, um Algoritmo é uma sequência finita de passos (etapas) ou instruções sequenciais necessários para realizar uma tarefa. Podemos dizer que uma receita culinária é um algoritmo, já que segue uma sequência de etapas, até atingir um resultado. Por exemplo quando cozinha um bolo, tem que seguir uma sequência que vai seguindo uma determinada ordem até alcançar o resultado final, o bolo. Vou dar outro exemplo: Imagine construir uma casa, primeiro prepara o terreno ou as fundações, depois ergue as paredes, o telhado, as janelas, etc.. Ou seja, cada etapa depende da anterior, formando uma sequência de ações. Podemos dizer que estes dois exemplos são algoritmos simples. No entanto, os algoritmos podem ser muito mais complexos e serem encadeados, ou seja, o resultado obtido com o algoritmo inicial, pode desencadear um novo algoritmo e assim sucessivamente. A computação possibilita a criação de algoritmos extremamente complexos, que obtêm o resultado final muito rapidamente após realizarem milhares de interacções. A Inteligência Artificial e a capacidade matemática de realizar algoritmos complexos é actualmente os sistemas ditos “inteligentes”, a Identificação de padrões em que um algoritmo compara o resultado obtido com outros resultados, permitindo-lhe encontrar padrões (sejam de comportamento, de recomendações, de criptografia, na escrita, etc.).
O que são Algoritmos e porque este termo é tão falado actualmente ?
Como já foi dito no parágrafo anterior, um Algoritmo identifica uma sequência finita de acções executáveis, etapas que visam alcançar um determinado objectivo ou tarefa. Partindo deste pressuposto, sempre que se objectiva chegar a um determinado resultado, sabemos que há um conjunto de questões que são colocadas. Vou dar o exemplo de pedido de crédito bancário, em que são realizados diversos algoritmos, que determinam alguma validações iniciais, como a idade do cliente e quais os rendimentos, o que lhe permitem definir um perfil do cliente, e a capacidade de cumprir o empréstimo, qual a taxa de esforço do cliente, etc. Se por qualquer motivo nesta sequência algo estiver fora dos parâmetros e não for possível dar sequência, então o algoritmo chega ao seu fim e assim a sequência termina, caso contrário dar-se-á inicio ao processo de empréstimo, iniciando-se um novo algoritmo.
Já agora um pouco de história na palavra algoritmo.
O termo algoritmo deriva de um nome de um matemático, geógrafo e astrónomo (entre outras vocações técnicas) que viveu por volta do ano 780 (D.C.) depois de cristo, que segundo se crê nasceu em territórios da antiga Persia (Corásmia) e o seu nome era Abu Abedalá Maomé ibne Muça ibne Alcuarismi, ao longo da sua vida (viveu 70 anos), este matemático, por muitos considerado o fundador da álgebra como nós a conhecemos hoje, derivando da palvra “Álgebra” que na fonética orginal do senhor Muça ibne Alcuarismi diz-se al-jabr, e que em latim é algoritmi, que significava “o sistema numérico decimal” e foi usado com esse significado durante séculos. A noção moderna de algoritmo surgiu em inglês no século XIX, e tornou-se mais comum ser utilizada a partir da década de 1950 desencadeada pelo surgimento das ciências da computação e na forma de executar um conjunto de acções ou etapas sequenciais, de modo a atingir a solução para um determinado problema. Também muitos historiadores, consideram que o termo algoritmo provém de Euclides de Alexandria (no ano 300 Antes de Cristo) e que foi um professor, matemático platónico e escritor grego, muitas vezes referido como o “Pai da Geometria” e nos diversos livros por ele escritos, como na sua obra Os Elementos, onde se salienta o exercício matemático, Algoritmo de Euclides.
Mas voltando aos nossos algoritmos e na forma como lidamos com ele na nossa vida quotidiana
A nossa vida, desde o momento em que acordamos até o momento em que nos deitamos, pode ser vista como uma sequência complexa de algoritmos. Quando nos levantamos o nosso subconsciente executa um conjunto instruções ao nosso corpo de forma ordenada e sequencial, dependente dos diversos estímulos, ou seja, damos inicio a um algoritmo. Sem nos apercebermos que definimos uma sequência, ou um algoritmo. Quando tomamos uma decisão, estamos, de forma inconsciente a processar uma grande quantidade de informações, sensações e experiências até chegar a uma conclusão. Esse processo de tomada de decisão pode ser visto como um mini-algoritmo dentro do algoritmo maior que é a nossa vida. Pense: quando nos vestimos diariamente, isso é uma sequência de tarefas que se vão encadeando umas nas outras, com base numa aprendizagem. Ninguém calça primeiro os sapatos antes de calçar as meias, por exemplo, e dizemos isso é óbvio. Mas nessa simples troca de informações, o nosso cérebro está a executar uma sequência de troca de informações, pois já aprendeu essa sequência e executa-a sem problema.
No seu livro “Homo Deus: Uma Breve História do Amanhã”, o historiador Yuval Noah Harari propõe uma visão intrigante do corpo humano: em que compara diversos processos biológicos a um algoritmo avançado. Essa analogia, embora ousada, oferece uma perspectiva interessante sobre nossa biologia e abre caminho para reflexões sobre o futuro da humanidade. Pode parecer estranha esta comparação, mas eu vou dar dois exemplos práticos dessa lógica biológica de algoritmia:
- Regulação da Glicemia: O corpo humano possui um algoritmo complexo para regular os níveis de glicose no sangue. Quando ingerimos alimentos, a insulina, um hormônio produzido pelo pâncreas, é libertado na corrente sanguínea. A insulina sinaliza às células que absorvam a glicose do sangue, convertendo-a em energia ou armazenando-a como glicogénio. Se os níveis de glicose no sangue subirem muito, outro hormônio, a glicagina, é libertado para estimular a produção de glicose pelo fígado. Este algoritmo mediante determinada quantidade de açúcar garante que os níveis de glicose se mantenham dentro de uma faixa segura, evitando problemas como a diabetes.
- Respiração: A respiração, processo essencial para a vida, também é controlada por um algoritmo biológico. O dióxido de carbono, um produto residual da respiração celular, que se acumula no sangue e actua como um sinal para o cérebro. Em resposta, o cérebro envia sinais para os músculos respiratórios, iniciando o processo de inspiração e expiração. Esse ciclo garante a troca gasosa nos pulmões, fornecendo oxigênio ao corpo e eliminando o dióxido de carbono, um algoritmo presente quando respiramos (Inspirar e Expirar).
Há quem diga que os seres vivos estão constantemente a executar algoritmos. Por exemplo: quando um veado se sente ameaçado por um qualquer predador, existe um conjunto de processos e sequências que lhe vão dizer para fugir e não ficar parado frente à ameaça.
Sintetizando: qualquer que seja a tarefa que seja executada e que segue uma determinada sequência, isto é, especifica o que você deve fazer em primeiro, qual o passo seguinte e assim por diante, mesmo que as possibilidades possam ser várias e possam existir variantes que encaixam e iniciam um novo algoritmo.
No exemplo abaixo, com imagens e como um fluxograma, temos um algoritmo que é genericamente simples e que executamos quando vamos ligar um candeeiro e este não acende a luz, o nosso cérebro executa perante esta situação um conjunto de hipóteses, seguindo uma ordem e uma sequência, ou seja, um algoritmo como abaixo se demonstra:

Ou seja, no exemplo acima e neste algoritmo muito simples, visualizamos de forma gráfica uma sequência dos passos que realizamos. Contudo, grande parte dos algoritmos que realizamos, são porque aprendemos determinada sequência e não o fazemos de forma inata, ou seja, tivemos uma aprendizagem prévia.
É importante perceber que um algoritmo possui um determinado fluxo e que pode seguir diferentes caminhos, dependendo da situação (como no exemplo do candeeiro). Outro aspecto que deve ser considerado é que um algoritmo é finito, como aliás, qualquer tarefa, mesmo que o resultado do fim dessa tarefa possa despoletar uma nova tarefa e assim consecutivamente.
Exemplo do algoritmo de vida, ensinado em cursos de socorrismo e de SBV:

Os Algoritmos na computação
Todas as tarefas executadas pelo computador, são baseadas em algoritmos, um algoritmo deve ser bem definido, pois é uma máquina que o irá executar. Vamos pensar numa calculadora, sabemos que para executar uma operação de multiplicação é executado um algoritmo que irá efectuar um conjunto de somas consecutivas um número de vezes.
Vamos fazer o seguinte exercício para perceber o que é um algoritmo, faça o seguinte: crie mentalmente um algoritmo, ou desenhe num papel a sequência e tarefas que realizou num determinado dia, vai perceber como estas etapas se vão encadeando, formando um algoritmo, eventualmente já mais complexo, já que vai tendo diversas interacções ao longo do dia.

Percebemos que de facto, os algoritmos hoje fazem parte do nosso dia-a-dia e há até quem diga que os seres vivos pensam e actuam com base numa premissa que desencadeia quase sempre um determinado algoritmo. Com a computação a complexidade e a rapidez no processamento de algoritmos podemos dizer que são omnipresentes. Os veículos de condução autónoma, processam milhões de algoritmos, analisando constantemente diversos sensores (óticos, de proximidade, etc.).
O xadrez é um imenso algoritmo
um jogo de xadrez é um conjunto de algoritmos encadeados e analisados aritméticamente. Mediante a jogada efectuada é feita uma análise dos movimentos da próxima jogada e depende da jogada do seu oponente vai evoluindo. Os computadores executam essa tarefa rapidamente, validando as diferentes possibilidades. O tempo que um ser humano leva para executar uma jogada é muito maior que um o computador (normalmente milésimos de segundos). O computador em 1997 ganhou pela primeira vez ao campeão mundial Garry Kasparov um jogo de xadrez.
Algoritmos e inteligência artificial (IA)
Actualmente os chamados algoritmos inteligentes, que permitem aprender por eles, a denominada Aprendizagem Automática (Machine Learning), ou de forma muito mais avançada a aprendizagem profunda (deep learning) são algoritmos inteligentes e já estão inseridas nas nossas actividades diárias e nem nos apercebemos. Quando vemos um filme na Netflix, ouvimos uma música no Spotify, encomendamos um livro na Amazon, vamos ao Facebook, Instagram ou outra rede, por trás dessa escolha que nos é apresentado existe a influência de algoritmos de recomendação. Quando consultamos a sugestão do caminho que é proposto pelo Google Maps ou quando vai de um ponto para outro e o UBER indica o caminho que o condutor deve seguir. Todas estas tarefas são baseados em algoritmos.
Veja como hoje funcionam os algoritmos, neste excelente video de uma Ted Talk
Actualmente os sistemas que utilizam inteligência artificial conseguem aceder, armazenar e analisar milhões de dados, podendo realizar automaticamente tarefas com base nessa análise, fechar acordos, vender, controlar uma linha de produção etc., mas não são capazes de criar estratégias do zero, necessita de quem programe o seu objectivo (por enquanto o ser humano), pelo menos por enquanto e nas próximas décadas, apenas previsível com a Inteligência Artificial Geral.
Além disso, tudo o que envolve humanização, sentimentos como empatia ou características como dedicação, mesmo em num contexto tecnológico de IA, ainda é função do ser humano. Muitos dos empregos como os que conhecemos hoje vão ser extintos ou irão transformar-se radicalmente, mas tantos outros novos irão surgir. Podemos ter uma certeza em 2050, nada será como é hoje.
Implicações Filosóficas e Tecnológicas:
Os algoritmos podem levantar questões filosóficas e éticas sobre nossa natureza e o futuro da humanidade.
- A Inteligência Artificial e os algoritmos: O enviesamento de dados nos algoritmos, já que existe uma aprendizagem com dados e se esses dados forem tendenciosos, o algoritmo também será. Isso pode levar a discriminação e injustiças, como por exemplo, algoritmos de recrutamento que discriminam candidatos com base em raça ou género.
- Seres Humanos como Algoritmos?: Se somos apenas algoritmos biológicos, qual é o lugar da consciência, do livre arbítrio, da vontade e da moral na nossa existência?
- Engenharia Biológica: A compreensão do corpo como um algoritmo pode abrir caminho para avanços na engenharia biológica, permitindo o desenvolvimento de novas terapias para doenças, o aprimoramento de capacidades físicas e até mesmo a criação de órgãos artificiais.
- Transcendência Biológica?: Se podemos manipular e aprimorar nossos corpos através da engenharia biológica, qual o limite entre o humano e o artificial? Será que um dia seremos capazes de transcender nossa biologia e nos tornar algo além de simples algoritmos biológicos?
Conclusão
Os algoritmos são sequências de instruções para resolver problemas, são a base da computação desde os primórdios. Desde os antigos métodos de cálculo até os complexos sistemas de inteligência artificial de hoje, os algoritmos evoluíram e se tornaram cada vez mais sofisticados. Os primeiros algoritmos foram elaborados no passado por matemáticos da Antiguidade, tendo chegado aos nossos tempos (século XX) com trabalhos pioneiros de Alan Turing e Alonzo Church. Actualmente, com o avanço significativo da tecnologia, falamos em Algoritmos de aprendizagem de máquina (machine learning) e deep learning, que impulsionam avanços em áreas como reconhecimento de imagem, processamento de linguagem natural e veículos autónomos, auxiliando no diagnóstico de doenças, no desenvolvimento de novos medicamentos e na personalização de tratamentos. Os algoritmos transformaram o mundo e continuarão a moldar o futuro. É fundamental entender como eles funcionam e quais são suas implicações para a sociedade. Ao mesmo tempo, é preciso desenvolver mecanismos para garantir que os algoritmos sejam usados de forma ética e responsável.
Se gostou deste artigo e o achou interessante, dê o seu “Gosto” e partilhe-o com os seus amigos. Este site/blog serve para isso mesmo: elucidar, ensinar e relembrar algum assunto a quem gosta de Informática, vá até ao separador Menu Artigos e faça as suas escolhas de leitura.
Em caso de alguma dúvida ou questão, envie um e-mail para formacaoajuda@gmail.com para qualquer esclarecimento.
Aproveite e subscreva o nosso blog e receba os novos artigos.
Obrigado
One comment