O algoritmo como tecnologia

Um algoritmo é basicamente uma sequência de instruções que tem como objetivo a realização de alguma tarefa. Um exemplo simplório de um algoritmo poderia ser os passos necessários para se trocar uma lâmpada ou, melhor ainda, uma receita de um prato, onde são descritos os ingredientes e suas quantidades necessárias e o passo a passo (as instruções) de como preparar.

Em computação, os algoritmos descrevem o processamento computacional por meio de instruções precisas e detalhadas do que deve ser realizado (um cálculo, por exemplo).

O tempo de execução é influenciado pelo algoritmo, uma máquina mais rápida pode demorar mais tempo para executar a mesma tarefa em uma máquina mais lenta, dependendo do algoritmo escolhido para realizar a tarefa. Sendo assim, os algoritmos podem ser considerados tecnologia.

Para ilustrar esse cenário, considere como o exemplo dois computadores hipotéticos que serão utilizados para ordenar n números cada um. Os computadores são o CA e o CB:

  • CA: processa 10 bilhões de instruções por segundo (10^10 instruções/s)
  • CB: processa 10 milhões de instruções por segundo (10^7 instruções/s)

Os algoritmos escolhidos para a ordenação são:

O computador CA é muito mais rápido que o computador CB. Enquanto isso, o algoritmo de ordenação por intercalação é muito mais eficiente que o algoritmo de ordenação por inserção.

Combinando o algoritmo de ordenação por inserção com o CA temos o seguinte tempo de execução para ordenar 10 milhões (10^7) de números:

2n² instruções / 10^10 instruções por segundo
2(10^7)² / 10^10
20.000 segundos

Por outro lado, ao combinar o CB, computador menos rápido, com o algoritmo de ordenação por intercalação para ordenar os mesmos 10 milhões (10^7) de números, tem-se:

50 n log n instruções / 10^7 instruções por segundo
50 . 10^7 log 10^7 / 10 ^7
350 segundos

O computador CB, mesmo sendo inferior ao computador CA, graças ao algoritmo de ordenação por intercalação, conseguiu executar a tarefa em 350 segundos, enquanto que a mesma tarefa realizada em um computador mais eficiente com um algoritmo menos eficiente levou 20.000 segundos.

Este cenário ilustra a importância e o impacto que os algoritmos tem no desempenho computacional e o motivo por considerá-los como tecnologia.

Leave a Reply

Your email address will not be published. Required fields are marked *