Atividade 8: Seja o mais rápido! - Redes de Ordenação

Apresentação

Mesmo os computadores sendo rápidos, há um limite na sua velocidade de resolução de problemas. Uma forma de acelerar as coisas é usar vários computadores para solucionar diferentes partes de um problema. Nesta atividade, usamos as redes de ordenação, as quais efetuam várias comparações de ordenação ao mesmo tempo.

Disciplinas e conteúdos relacionados

Habilidades

Nível de Ensino

Material

Esta é uma atividade de campo que deve ser feita pela sala toda em conjunto. Será necessário:

Redes de Ordenação

Discussão

Antes dessa atividade, utilize giz para desenhar essa rede em uma área externa.

Instruções para as crianças

Esta atividade lhe mostrará como os computadores colocam números aleatórios em ordem utilizando o que se chama de rede de ordenação.

  1. Organizem-se em grupos de seis. Apenas uma equipe de cada vez pode utilizar a rede.

  2. Cada membro da equipe pega um cartão numerado.

  3. Cada membro fica em um quadrado no lado esquerdo (Entrada) da rede. Seus números devem estar embaralhados.

  4. Você se move ao longo das linhas marcadas e, ao chegar em um círculo, você deve esperar outra pessoa chegar.

  5. Quando outro membro da equipe chegar ao círculo no qual você está, vocês comparam suas cartas. A pessoa com o menor número segue o caminho da esquerda. Se você tiver o maior número na sua carta, tome o caminho à direita.

  6. Você estará na ordem correta quando chegar ao outro extremo da rede

Se uma equipe cometer um erro, as crianças devem recomeçar. Verifique se você compreendeu o funcionamento de um nó (círculo) da rede, no qual o menor valor vai para a esquerda e o outro valor vai para a direita. Abaixo você pode conferir o passo a passo de uma rede de ordenação iniciada com os números de 1 a 6 embaralhados:


Variações

  1. Quando as crianças estiverem familiarizadas com a atividade, use um cronômetro para determinar quanto tempo cada equipe leva para chegar ao final da rede.

  2. Use cartões com números maiores (por exemplo, os cartões de três dígitos da fotocópia-mestre).

  3. Elabore cartões com números maiores, os quais necessitarão de maior esforço para serem comparados, ou use palavras e as compare por ordem alfabética.

Atividades de Extensão

  1. O que acontece se o menor for para a direita ao invés de ir para a esquerda e vice-versa? (Os números são ordenados em ordem inversa).

Será que a rede funciona se for utilizada ao contrário? (Ela não funcionará necessariamente e as crianças devem ser capazes de encontrar um exemplo de uma entrada que saia na ordem errada.)

  1. Tente desenhar redes maiores ou menores. Por exemplo, aqui está uma rede que ordena apenas três números. As crianças devem tentar chegar a esta rede por conta própria.

  1. Abaixo estão duas redes diferentes que ordenam quatro entradas. Qual é a mais rápida? (A segunda. Porque a primeira exige que todas as comparações sejam realizadas, uma após a outra. A segunda tem algumas comparações sendo realizadas ao mesmo tempo. A primeira rede é um exemplo de processamento em série enquanto que a segunda utiliza processamento paralelo para executar mais rápido.

  1. Tente fazer uma rede de ordenação maior.

  2. As redes também podem ser usadas para encontrar o valor mínimo ou máximo das entradas. Por exemplo, aqui está uma rede com oito entradas e a única saída conterá o menor dos fatores da entrada (Os outros valores serão bloqueados na rede).

  1. Quais procedimentos do cotidiano podem ou não ser acelerados utilizando paralelismo? Por exemplo, cozinhar uma refeição seria muito mais lento utilizando apenas uma panela para cozinhar porque os itens teriam de ser cozidos um após o outro. Quais tarefas podem ser completadas mais rapidamente empregando mais pessoas? Quais tarefas não podem?

Folhas de Atividades e Materiais Adicionais

Você também pode baixar todas as folhas de atividade e materiais adicionais em formato editável aqui.

Do que se trata tudo isso?

Quanto mais usamos os computadores, queremos que estes processem as informações o mais rápido possível.

Um jeito de aumentar a velocidade de um computador é escrever programas que usam menos passos de computação (como mostrado nas Atividades 6 e 7).

Outra maneira de resolver problemas mais rapidamente é ter alguns computadores trabalhando em diferentes partes de uma mesma tarefa ao mesmo tempo. Por exemplo, na rede de ordenação de seis números, apesar de haver um total de 12 comparações para ordenar os números, até 3 comparações são feitas simultaneamente. Isso significa que o tempo requerido será o mesmo necessário para apenas 5 passos de comparação. Esta rede paralela ordena a lista mais que duas vezes mais rápido do que um sistema que realiza apenas uma comparação por vez.

Nem todas as tarefas podem ser completadas mais rapidamente utilizando computação paralela. Fazendo uma analogia, imagine uma pessoa cavando uma vala de 10 metros de comprimento. Se 10 pessoas cavarem um metro da vala cada uma, a tarefa seria completada muito mais rapidamente. Por outro lado, a mesma estratégia não poderia ser utilizada para um buraco de 10 metros de profundidade - o segundo metro não é acessível até que o primeiro metro tenha sido cavado. Os cientistas da computação continuam ativamente tentando encontrar os melhores métodos para dividir problemas de forma que estes possam ser resolvidos por computadores trabalhando em paralelo.