• Nenhum resultado encontrado

Auxiliando o aprenzizado de métodos de busca utilizando simulação

N/A
N/A
Protected

Academic year: 2021

Share "Auxiliando o aprenzizado de métodos de busca utilizando simulação"

Copied!
59
0
0

Texto

(1)

PROGRAMA DE PÓS-GRADUAÇÃO EM CIÊNCIA DA

COMPUTAÇÃO

Claudia Dell’Agnolo Petry

Auxiliando o aprendizado de Métodos de Busca

utilizando Simulação

Dissertação submetida à Universidade Federal de Santa Catarina como parte dos requisitos para a obtenção do grau de mestre em Ciência da Computação.

Prof. Jorge Muniz Barreto, D. Sc. A.

(2)

Auxiliando o aprendizado de Métodos de Busca utilizando

Simulação

Claudia Dell’Agnolo Petry

Esta Dissertação foi julgada adequada para a obtenção do título de mestre em Ciência da Computação, área de concentração Inteligência Artificial e aprovada em sua forma final pelo Programa de Pós-Graduação em Ciência da Computação.

Prof. Fernando Alvaro Ostuni Gauthier, Dr. Coordenador do Curso

Banca Examinadora

Prof. Jorge Muniz Barreto, D. Sc. A.

Profa. Maria Augusta Machado, Dra.

Prof. Mauro Roisenberg, Dr.

(3)
(4)

iv

Ofereço a meus pais, a meu marido e à criança que está crescendo no meu ventre enquanto termino esta dissertação.

(5)

Agradecimentos

Agradeço a Deus, Senhor da existência de todo conhecimento e sabedoria.

Ao meu Orientador Jorge Muniz Barreto, pela paciência e confiança em mim deposi-tada.

À VISYS SISTEMAS, empresa em que trabalho pela disponibilização de tempo para executar este mestrado. Aos sócios da empresa: Marcio Francisco de Amorim, Denilson e Sonia Bogo pela amizade, confiança e por me entenderem.

Ao meus pais e irmãs, pelas vezes que pensei em desistir, e eles sempre me apoiaram e incentivaram a continuar que valeria a pena.

Aos amigos, de perto e de longe, pela força.

À Fátima companheira de caminhada, que entre risos, discussões, viagens, cansaço, continuou presente até aqui.

À Almir Saul Petry, meu amado marido, que esteve presente neste período, muitas vezes, chorando, outras rindo, outras vezes cansada mas em todos os momentos ele con-tinuou forte me apoiando e me incentivando. Obrigada.

(6)

Sumário

Lista de Figuras viii

Lista de Siglas ix Publicações xi Resumo xii Abstract xiii 1 Introdução 1 1.1 Motivação . . . 1 1.2 Objetivos . . . 2 1.3 Estrutura do trabalho . . . 2 2 Paradigmas do Ensino 3 2.1 Introdução . . . 3

2.1.1 Fases do ensino com computador . . . 4

2.2 A situação ensino-aprendizado . . . 5

2.2.1 As Estratégias de Aprendizado . . . 6

2.2.2 Como utilizar o computador na Educação? . . . 7

2.3 Educação e Programas de Computador . . . 12

2.3.1 Utilização do Computador no Ensino . . . 13

2.3.2 Primeiras Aplicações na Educação . . . 14

2.3.3 Utilização do Computador no ensino no Brasil . . . 15

3 IA e Simulação 18 3.1 Inteligência Artificial . . . 18

3.1.1 Origens . . . 18

(7)

3.1.3 Abordagens da IA . . . 21

3.2 Simulação . . . 24

3.2.1 Simulação Física e Simbólica . . . 25

3.2.2 Vantagens e desvantagens da Simulação no ensino . . . 25

3.2.3 Utilizando Simulação . . . 26

3.2.4 Formulação de modelos . . . 28

3.3 Exemplos de Sistemas Educacionais . . . 29

4 Simulando Métodos de Busca 31 4.1 O Programa . . . 31

4.2 Ambiente de desenvolvimento - Delphi . . . 39

5 Conclusões 41

(8)

Lista de Figuras

2.1 Jogo que utiliza a estrutura de instrução programada [22] . . . 17

4.1 Organograma do protótipo . . . 33

4.2 Tela Inicial . . . 34

4.3 Busca em Profundidade . . . 35

4.4 Busca em Largura . . . 35

4.5 Tela da atividade e da busca . . . 36

4.6 Atividade . . . 37

4.7 Procurando Nó Específico . . . 38

(9)

Siglas e Símbolos Principais

Siglas:

BDE : Borland Database Engine. CAI : Computer Aided Instruction.

CENIFOR : Centro de Informática Educativa. CERL :Compute Education Research Laboratory. CMI : Computer Managed Instruction.

IA : Inteligência Artificial.

IAC : Inteligência Artificial Conexionista. IAS : Inteligência Artificial Simbólica. IAE : Inteligência Artificial Evolucionária. IBM : International Business Machines.

ICAI : Instrução Inteligente auxiliada por computador. MEC : Ministério da Educação e Cultura.

MIT : Massachusetts Institute of Technology.

PLATO : Programmed Logic for Automated Teaching Operations. RAD : Rapid Application Development.

RNA : Redes Neurais Artificiais.

SBC : Sociedade Brasileira de Computação. SE : Sistema Especialista.

(10)

x

SOCRATES :Systems for Organizing Content Rewiew to and Teach Educational Subjects. STI : Sistema Tutor Inteligente.

SUCESU : Sociedade de Usuários de Computadores e Equipamentos Subsidiários. UFBA : Universidade Federal da Bahia.

UFMG : Universidade Federal de Minas Gerais. UFPE : Universidade Federal de Pernambuco.

UFRGS : Universidade Federal do Rio Grande do Sul. UFRJ : Universidade Federal do Rio de Janeiro. UNICAMP : Universidade de Campinas.

(11)

Publicações

1. Jorge Muniz Barreto e Claudia Dell’Agnolo Petry. Ensinando métodos de busca, utilizando simulação. Resumo para 6o Encontro de Atividades Ciêntificas -

(12)

Resumo

Ao entrar no cenário do ensino/aprendizado de Inteligência Artificial se depara com a utilização dos Métodos de Busca. Neste trabalho é utilizada a inteligência artificial e o que se quer ensinar com ela é o funcionamento dos Métodos de busca, a princípio utilizando a busca em Árvores. Melhorando a eficácia do ensino utilizando para isto uma forma atrativa de ensino/aprendizado, atraindo alunos e professores, a utilizarem a si-mulação como forma de auxílio ao ensino e também o aprendizado. A ferramenta, utiliza linguagem de programação visual com embasamento educacional que fornece ao aluno uma forma a mais para aprender. Além dos livros e do professor ele terá a ferramenta que o auxiliará visualmente no aprendizado, pois demonstra a maneira que funciona o método de busca de maneira visual, mostrando como fazer uma procura em uma árvore, por exemplo. Conclui-se então que esta é, uma ferramenta de auxílio ao professor e ao aluno em seu estudo de IA.

(13)

Abstract

When entering in the scenery of the teaching/learning of Intelligence Artificial he comes across the use of the Methods of Search. In this work the artificial intelligence is used and the one that one wants to teach with her is the operation of the Methods of it looks for, at first using the search in trees. Improving the effectiveness of the teaching using for this a form attractive of teaching/learning, attracting students and teachers, the they use the simulation as form of aid to the teaching and also the learning. The tool, uses language of visual programming with educational embasamento that supplies to the student a form the more to learn. Besides the books and of the teacher he will have the tool that will aid him visually in the learning, because it demonstrates the way that the method works of search in a visual way, showing as doing a search in one tree, for example. It is concluded then that this is, one tool of aid to the teacher and the student in its study of IA.

(14)

Capítulo 1

Introdução

1.1

Motivação

A necessidade de criar uma ferramenta nos conceitos desta que está se propondo nesta dis-sertação, partiu da falta de recursos a serem utilizados em aulas de graduação em Ciências da Computação, para especificar técnicas de Inteligência Artificial, tais como Métodos de Busca, Raciocínio Baseado em Casos (RBC), Sistema Especialista.

A experiência universitária como aluna e como professora mostrou a autora a dificul-dade de entender e de ensinar a lógica utilizada nos métodos de busca, desta maneira se percebeu que seria útil uma ferramenta que auxiliasse aos alunos neste aprendizado.

A tradição da UFSC no estudo da IA na Educação tem mais de 10 anos. Isso motivou a autora a realizar este trabalho nesta universidade. Exemplos de trabalhos nesta área podem ser encontrados em [1] [2] [3] [4] [8] [52] [53].

Sabendo de toda a dificuldade que o aluno já possui ao ingressar na universidade este trabalho vem auxiliar o professor a lecionar e ajudar o aprendiz a melhor entender, visualizando o andamento dos métodos de busca.

Este não é o único trabalho no ensino com computador em Inteligência Artificial. Muitas são as áreas escolhidas para se trabalhar o ensino, desde salas de aula, até mesmo com a utilização de um recurso multimídia, até treinamentos especializados em empresas, laboratórios. Visa-se sempre o aprendiz e sua maior interatividade com o que irá trabalhar e executar. Os programas são gerados de maneira fácil de entender e fácil de dar treina-mento. Pode-se encontrar trabalhos em [2], [29], [30], [33], [37], [58], [52], [53] entre outros.

(15)

1.2

Objetivos

É necessário preparar a sociedade, em especial os jovens, para absorver a tecnologia que está sendo desenvolvida, criando formas de aplicar a computação a toda a população. E é por esta porta que a informática na educação entra e vai tomando forma, desempe-nhando assim seu papel. Pois de nada adiantaria a fabricação de computadores, se não tivermos uma sociedade capaz de utilizá-los de maneira correta, trazendo benefícios ao desenvolvimento de todos.

Desta maneira o objetivo deste trabalho é adaptar o ensino dos métodos de busca, algo que auxilie o professor e principalmente o aluno, neste aprendizado, proporcionando ao aluno uma forma interativa de aprender Inteligência Artificial.

A idéia principal, não é a de entregar ao aluno um programa pronto, onde ele não precise aprender a programar a busca. O objetivo, é ensinar-lhe a lógica que é utilizada em busca em profundidade e em largura. Assim, o aprendiz tem a possibilidade de, en-quanto vai desenvolvendo seu raciocínio, em relação à programação, ter como auxílio o sistema, apresentado neste trabalho, para verificar se ele está realizando corretamente o desenvolvimento do método.

1.3

Estrutura do trabalho

Buscando atender os objetivos propostos, este trabalho está estruturado da seguinte forma: Neste primeiro capítulo encontra-se a introdução. Nela há a motivação para o desen-volvimento deste trabalho, seus objetivos e a estrutura do trabalho como um todo.

No Capítulo 2, encontra-se os Paradigmas do ensino. Nele é apresentado o quanto é importante a informática na educação, o ensino com computador dentro do contexto nacional, as formas de utilização do computador para o ensino/aprendizado.

No Capítulo 3 é abordado Inteligência Artificial, focando os Métodos de Busca para poder situar o leitor no que o trabalho se propõem. Também é apresentado a Simulação, baseando-se no doutorado de Pagano [48], mostrando sua conceituação e a descrição de seus elementos. E alguns, programas utilizados no ensino com computador. Este capítulo é importante por ressaltar o modelo computacional utilizado no trabalho.

O Capítulo 4 apresenta o protótipo, sua construção, as telas, a forma de utilização e a linguagem utilizada para fazê-lo.

E por fim o último capítulo apresenta as conclusões e as dificuldades encontradas ao realizar o trabalho.

(16)

Capítulo 2

Paradigmas do Ensino

Mestre não é quem sempre ensina, mas quem de repente aprende.(Guimarães Rosa)

2.1

Introdução

Desde as primeiras utilizações dos computadores já se queria tirar dele algum tipo de in-teligência, alguma forma dele fazer trabalhos humanos. Tendo esta visão, com a evolução dos máquinas eletrônicas mais ou menos no início da década de 40 do século XX, já aparecia entre os pesquisadores uma grande vontade de utilizar os computadores para ensinar, ou seja que pudesse ensinar através de programas computacionais criados para isso.

No início, esta idéia assustou, visto que alguns professores entenderam que, com a uti-lização de computadores nos colégios, universidades e meios de ensino, sua estabilidade profissional estaria então em perigo, podendo então desaparecer das escolas. Mas isto não ocorreu e não era este o objetivo dos pesquisadores.

A máquina seria nada mais do que um auxílio, da mesma forma que um livro, com características mais avançadas, permitindo que se criasse programas que ensinem o aluno. O computador não vai pegar na mão de uma criança da 1a série primária e a ajudar a escrever suas primeiras letras. Isso é tarefa de um professor especializado para fazer este trabalho.

Hoje em dia, já se pode ver a utilização dos computadores de maneira concreta dentro das escolas. Atendendo a diversos propósitos, inclusive na interação direta com o aluno. Isto está ocorrendo pela crescente facilidade de acesso às novas tecnologias, tanto por parte dos educadores como dos estudantes. Pode-se considerar também o custo que está cada vez mais reduzido, e isto também se deve aos significativos avanços na área de

(17)

tecnologia de software.

Portanto, para suprir esta demanda abre-se caminhos para a construção de programas de auxílio à educação, que transmitam aos estudantes conteúdo compatível com as neces-sidades de aprendizagem.

Há uma idéia errada de que uma apresentação simples de um material educacional através do computador possa trazer benefícios ao aprendizado. Por este motivo existem programas educacionais ineficientes. Há necessidade de ferramentas educacionais efi-cazes e completas.

Partindo desta concepção errada criaram-se programas que simplesmente, transcreviam, na tela do computador textos que antes estavam em livros. Nele o estudante tinha a faci-lidade de passar de uma página para a outra através do mouse ou do teclado.

Nos primeiros desenvolvimentos de programas educacionais, o instrutor tinha que pro-gramar todos os detalhes da interação [55], [54]. Construía-se programas incorporando lições que eram otimizadas para cada estudante.

Conforme Barreto [7], as formas corretas de comunicação são importantes para pro-moção do diálogo. São criados ambientes de comunicação que permitem esta troca de informações. A comunicação educacional, especificamente, consiste de conteúdos e re-lações das pessoas participantes no processo educacional.

Partindo deste princípio, os sistemas educacionais devem ter um diálogo com o es-tudante de maneira a suscitar nele o raciocínio do aprendizado, para o entendimento do assunto proposto. Uma forma deste aprendizado ser caracterizado seria utilizando nesta conversa maneiras onde se estimulasse o estudante a pensar em algo que depois caracteri-zaria o que se está propondo.

2.1.1

Fases do ensino com computador

Caracterizando as fases dos programas para ensino com computador, segundo [4] [19]: Primeira geração: chamados de Instrução Programada - aulas instrucionais, chamados de “eletronic page turners” ou monitores de práticas de exercícios. Tem seu início por volta dos anos 60.

Segunda geração: denominada de Instrução auxiliada por computador (CAI) - onde o Tutor deve ter poder indutivo, responder adequadamente às perguntas do aprendiz e o aprendiz deve estar ativamente compromissado com o sistema educacional e seus interes-ses e problemas, e deve guiar o diálogo.

Terceira geração: envolvendo Inteligência Artificial (por volta dos anos 80), segue com o nome de Instrução Inteligente auxiliada por computador (ICAI). Outro termo

(18)

tam-5

bém utilizado é Sistemas Tutoriais Inteligentes (ITS) [23], [24], [25], [26]. O ICAI possui um módulo especialista em sua estrutura, já o ITS não necessariamente possui um mó-dulo especialista. Também este contexto pode ser denominado de Aprendizado Inteligente auxiliado por computador, sendo o aprendizado através de textos e gráficos cabendo ao aprendiz selecionar a seqüência dos tópicos.

Quarta geração: Tem inicio nos anos 90, compreende o aprendizado via rede de com-putadores usando implementações de Realidade Virtual [10], Imersão Virtual.

Enquanto a segunda e a terceira gerações cresciam, os recursos computacionais se tor-navam cada vez mais rápidos e eficientes. Andando paralelamente crescem as pesquisas utilizando simulação. Com a característica de eficiência no campo computacional torna as pesquisas nesta área muito mais reais, podendo gerar meios de treinamento para em-presas, tanto máquinas quanto programas, capazes de auxiliar na simulação. [62]

2.2

A situação ensino-aprendizado

Conforme Pagano [48], são quatro as categorias envolvidas na situação ensino-aprendizado, ela define-as da seguinte maneira:

• O domínio do conhecimento: é o conhecimento a ser comunicado;

• O professor: são considerados dimensões, certos aspectos do conhecimento

peda-gógico, da estratégia pedagógica do professor para comunicar seu conhecimento. Esta estratégia compreende teoria pedagógica geral, que está relacionada a disci-plina que ele ensina;

• O diálogo: compreende três aspectos importantes: a forma de apresentar o assunto

(gráficos, texto. sons, Etc.); o suporte para a apresentação do assunto (um quadro, um discurso, um vídeo, etc.); a habilidade em manipular os conceitos.

• O aprendiz: Leva-se em conta certos tipos de estratégia de aprendizado para

aquisi-ção de conhecimento, que permite ao professor melhor adaptar o diálogo às neces-sidades do aprendiz.

Considera-se que a abordagem pedagógica mais aceita, seja a abordagem cognitiva. Ela enfatiza o conceito de estrutura, explicando o processo de aprendizado. Pagano [48] ainda diz que cada indivíduo possui uma representação mental (modelo) de seu ambiente, que é construído com base em sua experiência pessoal. Ocorrendo, então, um aprendizado

(19)

significativo quando o indivíduo reorganiza sua estrutura cognitiva (modelo) de forma a agregar a nova informação.

Nesta abordagem tanto professor como aluno têm papel ativo na reorganização da estrutura para ligar nova informação. Considerando que o aluno seja o autor final da reorganização de sua estrutura cognitiva, é o professor quem possui o papel central no processo, ou seja um ensino mais diretivo. [48]

Também existe a abordagem centrada no aluno, ou seja, centrada na escolha, da ma-neira de aprender feita pelo aprendiz. Podendo ser chamada de aprendizado exploratório. É baseada na idéia de que o estudante é capaz de controlar seu processo de aprendizado.

Conforme Pagano [48] “Muitas teorias pedagógicas foram desenvolvidas para me-lhor compreender o processo de aprendizado e torná-lo mais eficiente. Dependendo de qual filosofia, diferentes usos do computador foram feitos visando resolver o problema -aprender. Três formas principais foram identificados: tutor, ferramenta e tutorado.”

• Como Tutor: o computador auxilia na apresentação do novo material (exercício

e prática); o computador apresenta um contínuo de tarefas: como as de exercitar o estudante em assuntos necessários levando o estudante passo a passo ao domínio do conhecimento, conferir suas respostas antes de continuar o ensino a assuntos mais complexos;

• Como Ferramenta: o computador serve como facilitador, ajudando a executar uma

tarefa;

• Como Tutorado: o computador é dirigido pelo aluno; possui um papel mais

pas-sivo; existe interação e liberdade constante por parte do estudante;

2.2.1

As Estratégias de Aprendizado

Segundo Carbonell [16], existem cinco maneiras pelas quais se pode aprender:

1. Aprendizado de rotina: memorização através de rotina ou repetição sem total compreenssão; forma mais simples de aprendizado; o aprendiz é completamente passivo; exemplo: tabuada e as quatro operações aritméticas;

2. Aprendizado por ouvir falar ou por instruções: necessita de um pouco mais de esforço por parte do aluno; ele precisa associar algumas semânticas ao material apresentado [34]; exemplo: aprender as capitais dos vários países do globo, uti-lizando para isso a associação da capital a alguma foto dela ou sua localização no mapa;

(20)

7

3. Aprendizado por analogia: o conhecimento existente carrega uma similaridade com o novo conceito que se deseja aprender [32] [59]. O estudante transforma e aumenta o conhecimento existente; pode-se considerar este aprendizado muito próximo da técnica de resolver problemas;

4. Aprendizado por exemplo: caso especial de aprendizado induzido [28]; os exem-plos são dados e as regras dos assuntos são induzidas pelo aluno; este aprendizado recebeu grande atenção devido às possibilidades no sistema conectivista seguindo este paradigma [35];

5. Aprendizado por observação e descoberta: maior independência do aprendiz; re-quer uma atividade mais intensa de inferência do que qualre-quer outro método [27] [40] [43] [42]; é o paradigma adotado por vários pesquisadores no campo do apren-dizado. Este paradigma é exemplificado com LOGO como ferramenta de ensino;

Além destas formas de aprendizado, existem três tipos de conhecimento que se pode adquirir [8]: conhecimento factual (ex.:conhecer a sintaxe da linguagem); conhecimento de racionalização (ex.: conhecer boas regras de programação); e conhecimento por habi-lidade (ex.: saber como escrever programas eficientes).

Conforme Pagano [48]: Tipos de conhecimento e estratégias de aprendizado estão relacionados uns aos outros. Por exemplo, o conhecimento factual é apropriado para aprendizado por rotina ou aprendizado por ouvir falar. O conhecimento por racionali-zação está relacionado ao aprendizado por analogia (racionaliracionali-zação baseada em casos similares para chegar a uma conclusão) ou por exemplos, onde diferentes exemplos ilus-tram as estratégias de conhecimento por racionalização. O conhecimento por habilidade é, sem negligenciar outras formas de aprendizado, o domínio do aprendizado pela desco-berta.

Com esta visão, pode-se argumentar que a simulação no ensino, poderia ser eficiente ao aprendizado factual e ao aprendizado pela descoberta. Esse tipo de sistema, pode ser adequado e flexível para ajudar aos professores a preparar as aulas.

2.2.2

Como utilizar o computador na Educação?

Existem diversas maneiras de utilizar o computador na educação, conforme [22]. Uma delas é na própria administração da escola (contabilidade geral, contas a pagar e a receber, folhas de pagamento, entre outras atividades de administração.

Outra forma de uso é na secretaria da escola, auxiliando em textos a serem digitados e impressos, podendo a impressão estar diminuindo custos com xerox. Também na redação

(21)

de cartas e ofícios para e de professores.

Na administração acadêmica, onde o processo de cadastro dos alunos se tornaria algo fácil de ser trabalhado, para poder buscar os dados a qualquer momento: histórico escolar de notas, lista de chamada, cálculos de média entre outros.

Outra modalidade é o uso do computador como meio para o ensino da própria com-putação. Pelo fato de algumas escolas não conseguirem oferecer aos alunos habilitações atraentes, elas abrem seus laboratórios, contratam professores para ensinar informática aos alunos. Assim facilitam que este conhecimento chegue aos estudantes, sabendo que em um futuro próximo, na vida, estarão necessitando.

E por último e não menos importante, a utilização do computador no processo ensino-aprendizado é subdividido em em algumas formas de utilização:

• Instrução Programada: método que coloca o computador na posição de quem ensina

o aluno. Conforme Chaves [22]:A sigla CAI, tem sido freqüentemente utilizada como denominação resumida dessa modalidade de utilização do microcomputador na educação.

Segundo Chaves [22] pode-se dizer que este é o método mais difundido, pois é utilizado em escolas, empresas, nas forças armadas e em outras instituições. Nas escolas essa abordagem resulta na utilização do computador como uma máquina de ensinar ou como equipamento audiovisual sofisticado ensinando fatos, conceitos ou habilidades, resumindo-se então a exercícios repetitivos ou tutoriais,e demons-trações. Um exemplo é apresentado na figura 2.1, que mostra um jogo de dominó, onde as peças possuem operações de multiplicação.

Das diversas formas de utilização da instrução programada, a mais utilizada são os exercícios repetitivos, ou seja, programas que fazem os alunos praticar repetitiva-mente, as atividades aritméticas, a memorização das capitais de todos os países, a prática de ortografia, o vocabulário de línguas estrangeiras, os símbolos das subs-tâncias químicas, etc. Os professores utilizam estes programas para facilitar a mem-orização. As principais críticas a este tipo de utilização centram-se no fato de que a pedagogia utilizada - basicamente estímulo e resposta - é muito estreita, condun-cente a uma forma limitativa ou mesmo errônea de aprendizagem: a aprendizagem por absorção e assimilação de informações.[22]

Se bem programado e implementado esse tipo de exercício de instrução progra-mada pode ser de grande utilidade, pois por haver o computador como meio para o aprendizado, cria uma motivação maior do estudante. Tarefas que pareciam ser maçantes aos alunos, passam a ser estudadas com interesse e até prazer.

(22)

9

Figura 2.1: Jogo que utiliza a estrutura de instrução programada [22]

Como funcionaria uma instrução programada? A princípio é feito a pergunta pe-dindo pelo nome do aluno. Após é então passado ao aluno qual a disciplina ou parte dela que será lhe perguntado e se ele necessita de algum material para responder as questões que lhe serão feitas. Passado essa primeira etapa, inicia-se as questões que podem vir acompanhadas de um gráfico com um sorriso e um som agradável caso o aluno acerte a resposta e de um rosto triste e uma música triste caso o aluno erre a questão.

As respostas corretas ou erradas ficam registradas em memória para serem apresen-tadas ao final do programa e podem ser gravadas em disco para uma futura avaliação do professor.

Essa maneira de utilização do computador pode ser empregada em qualquer disci-plina, em qualquer nível ou grau. Na pré-escola, é necessário ter maior cuidado em utilizar outras técnicas, pois as crianças ainda não são alfabetizadas.

Uma instrução programada um pouco mais sofisticada pode ser chamada de tutorial. Neste caso o objetivo é levar o computador a instruir o aluno em uma determinada área, como se fosse um tutor, onde o contato seria individualizado, com restrições

(23)

pois um computador não é humano.

Nesse caso o programador tem uma tarefa um pouco mais difícil visto que tem que tentar antecipar a maior parte das respostas dos alunos, inclusive as respostas erradas, para tentar criar um diálogo significativo.

As demonstrações que são feitas com o computador têm um potencial mais rico do que as realizadas com quadro e giz, ou transparências. As váriaveis são ma-nipuladas com facilidade, e os efeitos são instantâneos [22]. As áreas de aplicação são ilimitadas. Podendo determinada área exigir programação sofisticada, portanto mesmo as demonstrações mais modestas podem ser de grande utilidade aos profes-sores.

• Simulação e Jogos: são constituídos por modelos que pretendem imitar um sistema,

real ou imaginário. Nas forças armadas e no governo uma das principais aplicações de computadores é a de simular alguns ambientes, a fim de testar os efeitos neles produzidos por diversas formas de intervenção.

Os computadores já possuem capacidade para fazer simulações de sistemas com-plexos. Podem ser programados para responder a intervenções de maneira realista e predizíveis, e podem processar significativas quantidades de dados.

Esse recurso não pode e não deve substituir totalmente o trabalho em laboratório, se isso ocorrer as crianças serão privadas de experiências importantes de aprendiza-gem. O contrário também pode priva-las de aprendizados importantes e estimu-lantes.

Percebendo o potencial pedagógico deste tipo de programa, empresas de desen-volvimento de programas têm colocado no mercado interessantes simulações. Um exemplo disto são os programas de simulação de pilotagem de vários aviões. Mas há jogos que são criados sem pensar em propósitos pedagógicos, que podem ser tão instrutivos quanto algumas simulações que foram criadas visando exclusiva-mente isto. Boas simulações utilizam, para alcançar seu objetivo, gráficos, ani-mação, texto, entre outras formas de mídias.

As simulações dentro de uma sala de aula podem servir para uma série de obje-tivos educacionais. Na área de ciências, o computador pode simular experimentos e sistemas naturais. No caso de experimentos químicos possibilita a diminuição de riscos, economia de dinheiro e tempo para a escola.

Uma restrição para a simulação ocorre nos estudos sociais pois, os eventos e pro-cessos não funcionam ou então operam, a maior parte do tempo, em obediência a

(24)

11

regras e princípios precisos. Esse fato faz com que a necessidade de que depois do trabalho com uma simulação, o professor oriente seus alunos no sentido de es-clarecer a eles o motivo pelo qual o programa que eles acabaram de utilizar teve o resultado obtido, mostrando a eles as limitações do computador.

A princípio não há restrições no uso de simulações exceto pela já descrita, assim sendo a maior parte das simulações importantes são interdisciplinares.

As simulações sofisticadas seriam recomendadas, pelo nível de abstração, para o

2o Grau e para o ensino superior, porém simulações menos sofisticadas, que se

assemelham a jogos pedagógicos, se aplicam a graus inferiores.

• Aprendizagem por Descoberta: existem várias linguagens de programação voltadas

para a educação. A mais antiga e famosa é o LOGO, é a linguagem que mais ênfase dá a aprendizagem, conforme Chaves [22].

O LOGO não é só uma linguagem de programação. É também uma filosofia de educação. Foi criada nos anos 60 no Massachusetts Institute of Technology (MIT), sob a supervisão do professor Seymour Papert. Surgiu dos contatos de Papert com a obra do psicólogo e epistemólogo suíço Jean Piaget, juntamente com as pesquisas do MIT e de outros centros que estudavam o problema da Inteligência Artificial (IA). Conhecida nos círculos acadêmicos, o LOGO está rapidamente se tornando uma das linguagens mais usadas em contextos educacionais.

O tipo de aprendizagem que a linguagem LOGO quer passar não tem o objetivo de estimular a aprendizagem repassada através do ensino. Considerando importante estimular a auto-aprendizagem, acompanhada do prazer da descoberta, sendo que o aprender deve ser algo agradável e divertido e não algo maçante, que seja somente obrigação.

Embora a linguagem seja dedicada a crianças, poucos sabem que ela possui recursos para manipulação de palavras e listas, sendo utilizado em trabalhos sofisticados de IA. Assim sendo, uma pessoa pode começar com a parte gráfica e gradativamente ir progredindo até tornar-se competente em todos os aspectos da linguagem.

• Pacotes Aplicativos: normalmente não se atribui importância pedagógica aos

aplica-tivos: processadores de texto, gerenciadores de banco de dados, planilhas eletrôni-cas, etc. Mas mesmo não havendo uma contribuição pedagógica, muitas escolas tem concluído que é um excelente recurso para preparar os alunos para o uso do computador em suas vidas profissionais.

(25)

Visando o uso pedagógico, pode-se, perceber a atração que o computador exerce sobre as crianças. Encontra-se então uma maior criatividade e vontade de criar textos, quando se tem um processador de texto como auxílio, isso ocorre pois a criança acaba não mais se preocupando com a escrita e com a caligrafia, e parte para a produção do texto. Claro não deixando de lado a importância que a caligrafia tem na educação. Mas neste caso o que está em jogo é a redação, que por muitas vezes sai defeituosa, sem muito nexo, justamente pelo fato da criança não querer reler para a correção e se ela o faz, e encontrar algo que poderia ser mudado não mudará pois isso geraria uma nova cópia do texto ou razuras.

Com um computador e um processador de texto esse fato toma outras formas e a criança parte do pressuposto que se errar pode apagar, e se tiver feito algo que não tenha gostado pode reescrever. Outra característica é que com a utilização de um processador de texto os professores tendem a se tornar mais rígidos em sua cobrança, sendo que os alunos tem uma maior facilidade em arrumar, reimprimir e entregar ao professor.

As apresentações de trabalhos se tornam mais ricas, pois o estudante possui progra-mas de criação de apresentações que o faz poder incluir: texto, figuras, interação com outros programas. Causando assim, um efeito visual interessante aos profes-sores e aos colegas, e conseqüentemente um aprendizado com qualidade superior do que as formas de apresentação convencionais.

2.3

Educação e Programas de Computador

Segundo Freire [31], “a Educação é um fenômeno rico e complexo e não pode ser abor-dado em apenas uma maneira.” Seu aspecto amplo trata, com o aprendizado pela desco-berta e também com o aprendizado pelo ensino formal e deliberado. Além, da formação ela tem que tratar com a transmissão de informação.

O envolvimento, de professores e alunos, na busca das melhores condições da uti-lização de computadores e programas já notada no meio acadêmico. Para que este en-volvimento seja para o crescimento do estudo, eles necessitam de tempo, treinamento e material de apoio [36] [41]. Alguns professores já estão tomando iniciativa e utilizando ferramentas disponíveis no mercado, de acordo com seus objetivos pedagógicos, em sala de aula. [6] [9] [20]

A construção de um software educacional precisa de tempo e esforço, no sentido de verificar o que realmente se espera do programa e de que maneira ele auxiliará o ensino.

(26)

13

Algumas ferramentas já prontas podem auxiliar o professor, porém possuem pouca flexibilidade para mudanças. “A adequação é uma qualidade desejada nas ferramentas computacionais de ensino. Uma ferramenta é adequada se os conceitos do assunto estão encravados no sistema. Isto é, o sistema tem algum conhecimento sobre estas entidades, o sistema as conhece “como tais”.” [48] Para um material didático poder suprir as neces-sidades do professor em sala de aula, ele deve incorporar suas estratégias pedagógicas.

Embora uma linguagem de programação, não necessariamente, leve o professor a ter idéias, deseja-se ensinar programação aos professores para que possam possuir, tanto controle sobre o computador quanto necessitem. Por, nem sempre, haver o pedaço certo do programa que precisam, as pessoas são levadas a buscar este controle podendo criar seu próprio programa adequando-o à sua necessidade.

Quais então seriam as ferramentas que ajudariam o professor no preparo da aula? “As ferramentas eficientes e utilitárias são aquelas equilibradas entre flexibilidade e adequa-ção” [48].

A vontade de reduzir o esforço no preparo do material didático com o computador, por vezes tem sido exagerado. Pagano [48] mostra que os professores acabam esquecendo que:

• Ensinar é uma tarefa complexa e para gerar uma aula eficiente, não importa o quanto

flexíveis e adequadas sejam as ferramentas, necessitará de esforço do educador;

• Como qualquer outro equipamento, apresentado aos professores, o aprendizado

computacional deveria ser oferecido a eles durante seu treinamento;

• Da mesma forma que os educadores aceitam auxílio de outros profissionais no

preparo das aulas, devem aceitar o auxílio de profissionais da computação.

2.3.1

Utilização do Computador no Ensino

Segundo Pagano [48] as primeiras aplicações do computador na educação, consistiam em agenda de cursos, gerenciamento de ajuda para o ensino, notas para as provas. Em uma primeira abordagem o estudante tem o uso da máquina de maneira mais ou menos livre. Na segunda abordagem é feita uma tentativa de instigar e controlar o aprendizado.

A utilização inicial, de computadores na educação, está baseada no paradigma de tirar vantagem da experiência pedagógica dos professores. Os primeiros sistemas, conforme Pagano, pré-armazenavam unidades instrucionais codificadas para compor a aula. Tinham as seguintes características:

(27)

• pequenas porções do currículo, que são exibidas na tela para apresentação e

per-guntas;

• a seqüência exata é baseada em conjuntos pré-determinados de respostas possíveis

do aluno

“Na abordagem inicial ao desenvolvimento do software educacional, o professor tinha que programar todos os detalhes da interação. O objetivo era construir progra-mas educacionais que incorporassem material de curso bem preparado, em lições que eram otimizadas para cada estudante.” [48]

Estes programas ou eram viradores de página eletrônicos ou monitores de exercícios, os quais reagiam às soluções do estudante, através de respostas pré-armazenadas. En-quanto o programa era gerado, o desenvolvedor tentava antecipar as respostas erradas.

Carbonell [16], definiu o que é conhecido hoje como conhecimento baseado ou pro-grama educacional inteligente. Seria um tutor computador com poderes de indução das contrapartidas humanas. Mas a implementação deste tutor, tornou-se mais difícil. Este campo de criação de programas educacionais utilizou de vários trabalhos de IA como em Linguagem Natural, Métodos de Inferência, Integração Simbólica, Diagnóstico Médico, entre outros.

O uso dos computadores na educação recebeu o nome de “Instrução Auxiliada por Computador” (CAI). Envolvendo IA as pesquisas foram conduzidas sob o nome de “Ins-trução Auxiliada por Computador Insteligente” (ICAI). Mais recentemente, chamado de “Sistemas Tutores Inteligentes”(STI).

Os esforços de pesquisa para criar novos materiais de cursos, usando facilidade de programação disponíveis estão sendo pesquisados [13]. Com o objetivo de oferecer fer-ramentas que o especialista possa compor interações educacionais, representando suas decisões em forma de programas.

Na pesquisa de programas educacionais utilizando IA, o objetivo é capturar o conheci-mento, permitindo aos professores compôr uma interação educacional em primeiro lugar [48]. É o conhecimento em si que é explicitamente representado, de forma a ser utilizado em sistemas baseados em computador, em vez de decisões resultantes do conhecimento de ensino. O objetivo é que os programas possam ser responsáveis por compor interações dinâmicas, tomando decisões com referência no conhecimento com o qual eles tenham sido preparados. Não há uma linha divisória entre os CAI tradicionais e a abordagem de IA.

No campo de simulação de sistemas, o domínio do conhecimento possuído pelo sis-tema é explicitamente independente do conhecimento pedagógico do professor, como no

(28)

15

domínio da IA. [48]

2.3.2

Primeiras Aplicações na Educação

A primeira aplicação do computador na educação data de 1950 [12], chamado de The Whirlwind era um simulador de vôo para formação de pilotos de combate desenvolvido no M.I.T, Boston, por Ken Olsen e Robert Everett.

O engenheiro e industrial americano em 1957, Simon Ramo, apresenta uma visão futurística dos computadores na educação. Na visão dele não haveria mais lugar para o professores, pois os computadores seguiriam os rastros da aprendizagem do aluno. Os professores deveriam ser reciclados para programar as máquinas. Ramo propôs o conceito de “Computer Managed Instruction (C.M.I)” , Instrução Administrada por Computador, ou seja, ensino gerado pelo computador, que necessitaria de bancos de programas e bancos de dados que só o computador poderia gerar. Pensando assim o computador poderia:[5]

• testar e medir a aprendizagem dos alunos e preservar os resultados;

• diagnosticar as dificuldades deles e prescrever um ensino corretivo;

• produzir um relatório sobre o progresso do aluno.

A International Bussiness Machines (IBM), em 1959, desenvolveu para própositos próprios de formação de pessoal, um sistema de ensino assistido por computador, que foi experimentado em escolas públicas em Nova York, EUA, para o aprendizado de matemática binária. Os alunos utilizavam terminais (teletipos) ligados, através de linha telefônica, aos computadores da IBM. Com isto os pesquisadores (Rath, Anderson e Bria-nerd - da Teaching Machine Project), terminaram o primeiro sistema de autoria computa-cional chamado de “CourseWriter”, que foi utilizado posteriormente no primeiro mini-computador dedicado ao Ensino, o IBM 1500.

No início dos anos 60, na universidade de Illinois, Stolhuron apresenta o sistema SOCRATES (“Systems for Organizing Content Rewiew to and Teach Educational Sub-jects”) [37], Este sistema cria um diálogo, entre computador e aluno, do tipo Socrático, com perguntas e respostas que conduziriam o aluno à biblioteca da universidade e caso necessário a procurar um professor para auxiliá-lo.

A mesma universidade, em 1960, apresenta outro projeto na área de ensino assistido por computador: o sistema PLATO (“Programmed Logic for Automated Teaching Opera-tions”). Este programa foi dirigido por Donald Bitzer e desenvolvido no CERL(“Computer

(29)

Education Research Laboratory”). O PLATO gerou um considerável bancos de progra-mas que iam desde exercícios repetitivos até tutoriais com execução de simulações mais sofisticadas, com ajuda da linguagem de autoria TUTOR [11].

2.3.3

Utilização do Computador no ensino no Brasil

O uso do computador em escolas no Brasil não é recente. O estado pioneiro nestes expe-rimentos é o Rio Grande do Sul, que iniciou em torno de 1973 [22]. Dados oficiais deste avanço datam de 03 de outubro de 1979, quando foi criada a SEI (Secretaria Especial de Informática). [61]

A primeira comissão criada pela SEI foi a Comissão Especial de Educação, com o in-tuito de discutir as várias questões relacionadas à informática e à educação. Esta comissão formada por membros da SEI, do Ministério da Educação e Cultura (MEC), da Sociedade Brasileira de Computação (SBC), da Sociedade de Usuários de Computadores e Equipa-mentos Subsidiários (SUCESU), entre outros, iniciou seus trabalhos recomendando que fosse estimulada a criação de programas especiais, focando as áreas de conhecimento não necessariamente afins da informática.

A partir da criação desta comissão ocorre em 1981 o Primeiro Seminário de Infor-mática na Educação, na Universidade de Brasília. Em 1982 o Segundo na Universidade Federal da Bahia (UFBA). Já o Terceiro Seminário Nacional e o Primeiro Internacional ocorrem em 1986, no Rio Grande do Sul.

Mais uma vez a comissão se reune e no início de 1983 resolvem criar o EDUCOM: Informática na Educação. Baseado nas recomendações da comissão especial, a SEI lança em agosto de 1983 uma convocação para as instituições de Ensino Superior apresentarem projetos para a implantação de centros-piloto em universidades brasileiras. Nesses pro-jetos elas deveriam se dispôr a investigar a utilização do computador como instrumento auxiliar no ensino-aprendizagem, visando em especial o Ensino Médio (2o Grau).[22]

Respondendo à convocação 26 instituições se apresentaram, para serem analisadas pelo Comitê Assessor da Comissão Especial de Informática na Educação. Sendo que dessas foram aprovados 5 projetos, 4 de Universidades Federais (UFRGS, UFRJ, UFMG, UFPE). Sendo divulgado este resultado em julho de 1984.

O MEC ficou responsável pela coordenação do projeto global, mas ficou para a FUN-TEVÊ a operacionalização do projeto, que para isso criou o Centro de Informática Educa-tiva (CENIFOR), ao qual o projeto EDUCOM estaria vinculado. Maiores detalhes sobre estes dados podem ser encontrados em [22], [29], [30].

(30)

Capítulo 3

IA e Simulação

Neste capítulo é abordado sobre simulação, para entender o seu funcionamento no ensino com computador. Outro assunto apresentado é a Inteligência Artificial, aqui será abordada a IA de maneira a facilitar o entendimento de Métodos de Busca, que é o assunto chave que se quer ensinar. Portanto, apenas será uma breve explanação de IA.

3.1

Inteligência Artificial

3.1.1

Origens

Suas origens emergiram das teorias de raciocínio e aprendizado, há cerca de 2000 anos na filosofia, partindo de um ponto de vista de como a mente é formada por um sistema físico.

Fases históricas da IA, conforme Barreto [7] e Almeida [4]:

Época Pré-histórica (?-1875) esta época vai até quando Camilo Golgi visualizou o

neu-rônio. Interesse em criar seres e mecanismos que apresentassem algum tipo de comportamento humano. Nos séculos XV e XVI desenvolvimento de relógios e dispositivos de medição; No século XVII, Descartes propõem, que os corpos dos animais seriam máquinas complexas; Pascal, cria em 1642, a primeira calculadora mecânica digital. Em 1673, Leibniz prova que a máquina de Pascal, fazia multi-plicações e divisões. Partindo deste ponto, inicia-se uma profusão de dispositivos. Tornam-se populares os brinquedos mecânicos. Em 1842, Lady Lovelace (Ada By-ron), considerada a primeira programadora da história, fez a primeira referência a uma máquina inteligente no sentido atual (a máquina analítica de Babbage) que seria capaz de compor peças musicais. Limitações da época: a complexidade dos mecanismos e dificuldades de construção.

(31)

Época Antiga (1875-1943) Aparecimento da lógica formal. Reconhecimento do cérebro

como responsável pela inteligência. Objetivo desta época, era entender a inteligên-cia humana. Surgem grandes avanços nos estudos da psicologia e da neurofisiolo-gia. Em 1943, McCulloch e Pitts, criam um modelo que tentava reproduzir o fun-cionamento de neurônios. As limitações foram a grande distância entre a psicologia e a neurofisiologia.

Época Romântica (1943-1956) Criado, o primeiro computador programável, uma

cal-culadora eletromecânica programável, por Konrad Zuse e Helmut Schreyer, entre 1938 e 1941. Em 1043, surge o termo Cibernética, criado por Arturo Rosenblueth, Norbert Wiener e Julian Bigelow. Modelos inspirados na natureza. Surgimento dos primeiros mecânismos, imitando o funcionamento de redes de neurônios. Alan Tur-ing, em 1959, propôs o Teste de TurTur-ing, com o propósito de oferecer, uma definição operacional, de inteligência satisfatória. Criação dos primeiros programas imitando comportamento inteligente (jogos de xadrez). Surgimento do termo Inteligência Ar-tificial, em um encontro entre McCarthy, Minsky, Newell e Simon em 1956, em um encontro do Dartmouth College. Limitações da época: limitação das capacidades computacionais.

Época Barroca (1956-1969) Após o surgimento da definição IA, as expectativas

estimu-laram várias pesquisas. Em 1958, McCarthy introduz o LISP no MIT. Frank Rosen-blatt, dois anos após, generaliza o modelo de McCulloch e chama-o de Perceptron. Criação do Adaline, Redes Semânticas como representação do conhecimento. Ob-jetivo: expandir as aplicações de IA, utilizando a abordagem simbólica e a cone-xionista. No início dos anos 60, é iniciado o projeto para tradução de linguagens (inglês-russo) pela máquina. Fundada a primeira indústria de robos (“Unimation”). Publicação da primeira coleção de artigos sobre IA, por Feigenbaum e Julian Feld-man, “Computers and Thought”. Em 1965, é criado o Eliza, programa capaz de manter um diálogo (em inglês) sobre qualquer tópico. Sua versão mais popular, imita um psicoterapeuta. Em 1967, surge o Sistema Especialista Dendral, para análise química de compostos orgânicos. Em 1968, a tese de Alan Kay descreve o primeiro computador pessoal. Em 1969, publicação do livro “Perceptrons”, de Minsky e Papert, mostrando as limitações das redes neurais. Condenando, desta maneira as pesquisas nesta área. Limitações: dificuldades em técnicas de apren-dizado de redes complexas.

(32)

19

de IA simbólica e conexionista. Os fundos para a pesquisa na área foram cortados. As aplicações reduziram, somente aos laboratórios. As pesquisas voltaram-se para os Sistema Especialista. Ocorreu o desenvolvimento do Prolog. Objetivo encontrar aplicações práticas para a IA. A limitação ocorreu por interesses econômicos.

Renascimento (1981-1987) Os SE tornaram-se comerciais. Crescimento da Lógica e

au-mento de máquinas suportando ferramentas para IA. Grossberg, Kohonen, Widrow, Hinton continuaram seus trabalhos em RNAs. Popularização do Prolog, através de um projeto japonês de quinta geração, anunciado por Kazuhiro Fuchi em 1981. Em 1982, John Hopfield, volta a trabalhar com redes neurais em um modelo não linear. Ocorrendo o renascimento das pesquisas nesta área. Em 1986, é apresentado o algoritmo de retropropagação para redes multi-camadas, resolvendo o problema do Perceptron. Começam a aparecer as empresas de RNA. Limitações: IAS e IAC evoluem separadamente.

Época Contemporânea (1987-atual) Minsky e Papert, revisam e publicam nova

ver-são do livro “Perceptrons”. Sistemas de processamento d linguagem natural ver-são utilizados em verificadores ortográficos e gramaticais, em sistemas de busca em banco de dados, tornando-se comerciais. Cresce as pesquisas em IA. As Redes Neurais começam a ser aplicadas em diversos ambientes. A cada dia surgem novos paradigmas e denominações para IA. Os termos utilizados (Inteligência Computa-cional, Computação Evolucionária, IA Distribuída, Agentes Inteligentes, Sistemas de Descoberta do Conhecimento, Raciocínio Qualitativo,“Datamining”), tornam-se comuns em diversas áreas. Limitações: ainda desconhecidas.

Até o final dos anos 50 os computadores eram vistos com desconfiança por estarem executando tarefas de humanos, por isso foram chamados de cérebros eletrônicos. Com a popularização da máquina, no início dos anos 60, este mito foi destruído. Pesquisas na tentativa de dotar o computador de inteligência começaram a ter resultados. Portanto a população só ouviu falar de IA, em 1981, com o projeto japonês de quinta geração, que pretendia construir uma nova geração de computadores. [7]

3.1.2

Definição

Algumas definições:

Conforme Barreto [7]: ...é difícil uma definição, pois já é mesmo difícil definir o que é inteligência, o que é artificial ou natural...

(33)

Segundo Russel, a IA tenta entender as entidades inteligentes, ao contrário da Filosofia e da Psicologia, que também preocupam-se com a inteligência, a IA busca construir e entender as entidades inteligentes. [60]

Para ele o computador deverá ter as seguintes habilidades para ser considerado in-teligente:

• processamento de linguagem natural: capacidade de comunicar-se efetivamente em

inglês ou qualquer linguagem humana;

• representação do conhecimento: armazenar a informação antes ou durante o

inter-rogatório;

• raciocínio autônomo: utilizar as informações armazenada, respondendo ao

interro-gador e traçando novas conclusões.

• aprendizado de máquina: adaptar-se a novos ambientes, detectar e explorar padrões.

Para Shank [7]:..IA é um novo esforço de fazer computadores pensarem...

Já Kurzweil [60] cita:...é a arte da criação de máquinas que executam funções que requerem inteligência quando desenvolvida pelas pessoas.

Segundo Winston [64]:..IA é o estudo de conceitos que permitem aos computadores serem inteligentes.

Conforme Schalkoff [7]:...um campo de estudo que esforça-se para explicar e emular o comportamento inteligente em termos de processos computacionais.

3.1.3

Abordagens da IA

A IA se preocupa em resolver problemas, para tanto se deve possuir conhecimento sobre o problema e técnicas para chegar a solução. A maneira de manipular, adquirir, armazenar e empregar o conhecimento diferem dependendo da abordagem de IA utilizada.

A IAC (Inteligência Artificial Conexionista) formada por circuitos que se assemelham a redes de neurônios cerebrais. Se espera que esta abordagem possua um desempenho melhor em problemas mal definidos. Possui características encontradas nos seres vivos. Podendo ser aplicada, conforme Barreto [7]: em reconhecimento de padrões, controle de processos industriais de dinâmica complexa, em robótica, em sistemas especialistas e como opção às técnicas de raciocínio baseado em casos.

Na IAE (Inteligência Artificial Evolucionária) utiliza mecanismos idênticos aos en-contrados na evolução biológica. De acordo com Barreto [7]: pode ser encarada como um método de otimização com restrições variáveis e muitas vezes desconhecidas.

(34)

21

A IAS (Inteligência Artificial Simbólica), possui a Lógica como ferramenta básica para manipular conhecimento. Imitando o modo de raciocínio humano para chegar a solução do problema.

Para utilizar a IAS o problema deve ser bem definido e o modo de achar a solução deve ser explicito. Deve ser feito uma previsão de tudo anteriormente. Os métodos de busca, base neste trabalho, fazem parte da IAS.

3.1.3.1 Métodos de Busca

Para melhor entendimento do que é feito neste trabalho, é necessário entender alguns conceitos sobre métodos de busca.

Os métodos de busca se enquadram na IAS. Visando a solução de problemas bem definidos utilizando para esta resolução a lógica.

Métodos de busca são utilizados para solução de problemas lógicos. O sentido da busca pode ser de encadeamento progressivo ou retroativo. A vantagem da utilização de um ou outro depende da estrutura a ser pesquisada.[44]

Um problema de busca pode ser formalizado, definindo-se os seguintes elementos [57]:

• Um espaço de estados, onde cada elemento descreve uma possível situação do

pro-blema;

• Um estado inicial (situação inicial do problema);

• Um ou mais estados finais (situações que se deseja chegar);

• Um conjunto de operadores. Definem, dado um estado, todos os estados que podem

ser alcançados a partir do estado dado.

Breve descrição de alguns tipos de Busca:1

Busca em Largura:

A cada passo é verificado todas as possibilidades. Desta forma antes de terminar o processo de busca, toda a árvore é examinada. A principal vantagem do algoritmo de busca em largura é que este encontra o MENOR caminho do nodo inicial até o nodo final mais próximo.[57]

(35)

Busca em Profundidade:

Segundo Barreto [7] a cada estado é utilizado alguma heurística que escolhe a regra a ser utilizada. Emprega-se a regra mudando de estado. No próximo estado se examina as possibilidades, podendo então chegar a um estado que não possua a solução. Quando isso ocorre pode-se retroceder (“BACKTRACK”), assim se desfaz passos já feitos, procedendo a escolha de maneira diferente. O interesse é somente em encontrar uma solução e ao chegar nela, pode-se parar a busca. Não encontra a solução mais próxima, mas pode ser MAIS EFICIENTE se o problema possui um grande número de soluções ou se a maioria dos caminhos pode levar a uma solução. [57]

Busca Heurística: segundo Roisenberg [57]

• SUBIDA DA ENCOSTA:

Baseada na busca em profundidade. Idéia: atingir o objetivo com o menor número de passos. É subdividida em Subida da Encosta Simples (examina os sucessores do estado atual, seguindo para o primeiro estado que for maior que o atual) e Subida da Encosta pela Trilha mais Íngreme (examina todos os sucessores do estado atual, escolhendo o que está mais próximo da solução).

• Busca pela Melhor Escolha (A*):

Procura otimizar a solução, considera todas as informações disponíveis até aquele momento. Todos os estados abertos são candidatos à expansão. Com-bina tanto vantagens da busca em largura como em profundidade.

• Têmpera Simulada:

Inspirado no processo de têmpera do aço (temperaturas são gradativamente abaixadas, até que a estrutura molecular se torne suficientemente uniforem). Não utiliza “backtracking” e não garante que a solução encontrada seja a me-lhor possível.

Alguns exemplos, mais utilizados em disciplinas e livros de IA, utilizando busca:

• O Caixeiro Viajante: um vendedor deve visitar um determinado número de cidades,

uma cada vez. Devendo determinar qual o percurso de distância mínima, dadas as distâncias entre as cidades, permitindo que o vendedor saia de uma cidade qualquer e a ela retorne.

(36)

23

• Os Missionários e os canibais: três missionários e três canibais estão a beira de um

rio e possuem um barco que carrega duas pessoas. Todos devem fazer a travessia do rio, utilizando o barco e sabendo que em nenhum momento os missionários fiquem, em uma margem ou na outra, em menor número que os canibais.

• Torre de Hanói: são três marcos e em um deles estão colocados um certo número de

discos, com diâmetros diferentes. Cada disco repousa sobre um disco de diâmetro maior. Deve-se mover todos os discos de um mastro para outro respeitando as condições: (a) mover somente um disco por vez, (b) todos os discos devem estar em algum mastro, com exceção do que está sendo movido, (c) um disco deve, sempre, ser colocado sobre outro de diâmetro maior que ele.

• Quebra-cabeças “oito”: em uma moldura quadrada são dispostos oito peças

qua-dradas, com um quadrado vazio. O problema consiste em, dado uma posição inicial, após ser embaralhadas as peças, poder chegar novamente àquela posição, utilizando o deslizamento das peças.

3.2

Simulação

Conforme [62], a definição de simulação seria a de construir modelos que apresentem o maior número de características de sistemas reais, ou então, [39] seria o processo de obter conclusões sobre o comportamento de um sistema através de um modelo deste sis-tema, permitindo realizar estudos que proporcionariam ao analista responder perguntas simulando uma situação e saber como seria a resposta.

A construção de um modelo é uma das principais etapas no processo de simulação [39]. É a partir de um modelo que serão feitos todos os estudos a respeito do sistema. Com a geração de um modelo computacional, torna-se mais prático e pode-se até diminuir custos. Em casos como na área da medicina veterinária reduz inclusive o sacrifício de animais, realizados em experiências.

Exemplos utilizados na medicina, podem ser citados os trabalho de Pozzebon: “Hiper-mídia Aplicada ao Ensino na área Médica” [52] e “Hipertomato controla os itens da matéria ensinada num tutorial de Neurofisiologia” [53], entre outros.

O modelo de um sistema real deve ser escolhido de um modo que seja o mais simples possível e que possa explicar os fenômenos que se quer observar. A utilização de modelos passa a ter utilidade e ser vista de maneira interessante quando não se pode experimentar situações reais, sendo assim utiliza-se a simulação.

(37)

3.2.1

Simulação Física e Simbólica

Simulação é o processo de imitar uma realidade através de modelos, utilizando para isso analogias. Os modelos criados podem conservar ou não, características físicas e lógicas do sistema real.

No caso onde as características físicas e lógicas são conservadas há apenas um pro-cesso de representação do real, assim se torna mas cômodo e adequado tirar conclusões. [62]. Para representar este tipo de simulação pode-se citar alguns exemplos:

• o jogo de xadrez é a simulação da competição entre dois reinos, usando seus

ca-valeiros, peões, etc, onde o tabuleiro se torna o campo de batalha.

• o engenheiro civil utiliza uma maquete do prédio a ser construído para melhor

estudá-lo e representá-lo.

Além destes existem outros instrumentos e aparelhos de treinamento que imitam a realidade para treinar operadores, motoristas, pilotos, astronautas, etc.

Quando as características físicas não são conservadas tem-se chamado “simulação simbólica”. Nesta simulação a lógica é conservada e representada através de equações matemáticas onde as variáveis representam os componentes do sistema.

Para a resolução destas equações, quando complexas, utiliza-se o computador. Aliás o desenvolvimento computacional tornou importante este ramo da simulação simbólica.

Já se tornou comum a um empresário, ou engenheiro, ao projetar um sistema com-plexo, utilizar programas de simulação em computador antes de realmente tornar seu projeto real.

Esta simulação pode ser dividida em dois tipos:

• simulação de problemas determinísticos: refere-se à resolução de problemas tais

como, equações diferenciais, integrais, matrizes,etc.

• simulação de problemas estocásticos ou probabilísticos: abrangem os casos mais

comuns e importantes da simulação. São problemas que por sua natureza não po-dem ser resolvidos através de métodos matemáticos usuais. Englobam-se aqui os problemas de estatística, pesquisa operacional, problemas de estoque, filas, plane-jamento e de competição.

3.2.2

Vantagens e desvantagens da Simulação no ensino

3.2.2.1 Vantagens

(38)

25

• As experiências são conduzidas pela iniciativa do aluno;

• As experiências podem ser propostas em diferentes níveis de abstração (do

qualita-tivo ao quantitaqualita-tivo);

• Permite explorar muitos exemplos diferentes em um curto espaço de tempo.

3.2.2.2 Desvantagens

Alguns aspectos podem prejudicar o objetivo se não constatados e levantados no início da simulação [48]:

• Não representa exatamente o sistema real. Pode dar uma visão errada das

dificul-dades envolvidas na experimentação real;

• Simulação não desenvolve várias atividades que são necessárias para experimentos

reais, como ler medidores, ajustar botões, medir tempo decorrido, etc;

• Nenhum modelo de computador pode incluir hoje toda a complexidade do mundo

real e a simulação dá portanto uma visão simplificada do mundo real.

Conhecendo as vantagens e as desvantagens da simulação, deve-se ter o cuidado de não entendê-la como se ela substituísse o sistema real. Ela deve ser vista como um expe-rimento pedagógico e deve-se saber com clareza o que se quer demonstrar. Desta forma, ao escolher qual modelo utilizar, deve-se optar por aquele que tem a representação mais simplificada e que seja capaz de representar com maior precisão possível o que se deseja transmitir no processo de aprendizagem [39].

3.2.3

Utilizando Simulação

Estudando a fundo a palavra simulação e seus conceitos, entende-se que o homem cresce em um ambiente de simulações constantes. Segundo Shimizu [62], como exemplos de simulação pode-se citar:

• homem primitivo: treina sua pontaria em objetos ou desenhos;

• engenheiro: experimenta seu projeto em maquetes;

• criança: brinca com o brinquedo que forma seu mundo;

(39)

• jogador de xadrez: pratica o jogo de xadrez que é a competição entre dois reinos;

• piloto: treina e testa sua habilidade no aparelho simulador de vôo; • empresário:faz a sua previsão de estoques por simulação;

• meteorologista: faz a previsão do tempo baseado no modelo simulado das condições

meteorológicas;

• governo: prevê o crescimento do país através de um modelo simulado;

• estudante: faz os exercícios e os exames, simulando o seu futuro trabalho na vida

real.

Juntamente com a evolução humana a evolução da simulação cresceu. Com o de-senvolvimento computacional, criou-se situações mais fáceis e melhores para simular o mundo real, buscando assim uma solução mais plausível para a realidade e com menos erros.

Utilizações de simulação em computador:

• experimentação e avaliação: tentativas de prever as conseqüências de mudanças

políticas, condições ou métodos sem ter de fazer no sistema real com grandes gastos e com riscos de obter resultados inesperados;

• como uma maneira de estudar novos sistemas a fim de reprojetá-los e refiná-los; • como “ferramenta” para familiarizar equipes com equipamentos ou sistemas ainda

não operacionais;

• para estudar processos transitórios ou intermediários;

• para a verificação ou demonstração de uma nova idéia, sistema ou maneira de

reso-lução de um problema;

• como meio de projeção no futuro, como ferramenta de previsão e planejamento

quantitativo.

Simuladores para ensino e treinamento exigem utilização em tempo real. Com o de-senvolvimento tecnológico este requisito tem se tornado possível.

Ressalta-se que o importante para que o computador aja da maneira necessária é que ele possua memória de acesso rápido, e tenha facilidade de programação, escolhendo assim linguagens especiais para a simulação.

(40)

27

O desenvolvedor de um sistema de simulação, passa a ser um artista, desenvolvendo sua arte, ele terá dificuldades desde o início, pois nem sempre é possível descobrir quais as variáveis relevantes, e caso algumas variáveis não sejam utilizadas pode também com-prometer o sistema.

Para um modelo ser representativo do sistema real, ele deverá ser simples e complexo. Devendo ser simples para permitir sua manipulação e entendimento, sendo representativo do sistema dentro de uma precisão desejada e ser suficientemente complexo para permitir extrapolação de conclusões.

Após a construção do modelo passa-se para a fase de testes, para julgar se o modelo satisfaz aos requisitos acima. Salientando que se a fase de construção do modelo é impor-tante, a de julgamento dos resultados é ainda mais importante.

3.2.4

Formulação de modelos

Análise de sistemas: para iniciar a criação de um modelo deve-se passar por esta fase que é muito importante e nem sempre fácil.

Esta tarefa requer habilidade e conhecimento do campo onde o sistema está situado, atitude de constante observação dos elementos e do comportamento do sistema. Algumas tendências são utilizadas para determinar os elementos, tais como: entidades, atributos, estados do sistema, variáveis.

Exemplo desta fase:

• Simulação do jogo de uma moeda:

Elementos de interesse

Elemento ’cara’

Elemento ’coroa’

Possibilidade de ocorrência de ’cara’: 50%

Possibilidade de ocorrência de ’coroa’: 50%

Na simulação precisa-se produzir os elementos de interesse com sua respectiva pro-babilidade de ocorrência. Usa-se para tal, fórmulas que geram elementos chamados números aleatórios, números ao acaso e equiprováveis entre 0 e 1.

• Simulação do jogo de um dado: utiliza-se a mesma formatação do jogo anterior

com o diferencial de haverem agora 6 faces todas com a mesma probabilidade de ocorrer.

(41)

Uma grande vantagem da simulação é que pode-se alterar as características do sistema. Exemplo: pode-se viciar a moeda ou o dado conferindo maior ou menor probabilidade aos elementos.

3.3

Exemplos de Sistemas Educacionais

É apresentado aqui uma listagem dos sistemas educacionais mais conhecidos, baseados em Barreto [7], Pagano [48] e Almeida [4]:

EXCHECK

Desenvolvido por Suppes [63].Foi criado na Universidade de Stanford. Seu objetivo é ensinar lógica, teoria de conjuntos e teoria de prova. Sua abordagem pedagógica é a de apresentar o assunto em um computador juntamente com exercícios para o aluno resolver.

INTEGRATION

Desenvolvido como tese de doutorado por Kimball [38] em 1973. Sua contribuição é a integração do conhecimento a ser comunicado, com o modelo do estudante, de forma a dirigir o que será ensinado.

QUADRATIC

Foi desenvolvido também como uma dissertação de doutorado por O’Shea em 1973 [45] [46] [47]. O conhecimento a ser comunicado pelo sistema era a solução de simples equações quadráticas da forma x2 + c = bx. Sua contribuição foi a

pos-sibilidade de imitar um professor que melhore com o tempo. Isto é realizado por técnicas exploratórias, que permitem a mudança no sistema, assumindo a estratégia pedagógica que tenha maiores resultados.

SCHOLAR

Desenvolvido por Carbonell em 1970 [17] [18]. Escrito em LISP. Seu objetivo é ensinar a geografia da América. Sua contribuição é que ele lança conceitos de ciência da computação na representação do domínio do conhecimento, isto é, lógica não monotônica [14] [56]. Além disso utiliza conceitos de herança, como os que são utilizados em Orientação a Objetos (Ex.: Blumenau está no Brasil e o Brasil está na América do Sul)

(42)

29

PLATO

Desenvolvido pela Universidade de Illinois nos anos de 1970 [21]. Criado para ser utilizado em mainframes, pois suportavam sua alta necessidade de potência de cálculo. Objetivo: criar um ambiente interativo para criação e execução de aulas das ciências exatas.

LOGO

Linguagem de programação [49] desenvolvida pelo professor Seymour Papert, em Massachusetts Institute of Technology (MIT). É baseado na teoria de Piaget [50] [51]. Construído utilizando LISP, oferece ao aprendiz um programa onde ele pode experimentar suas idéias. Encoraja o aluno a raciocinar com recursividade. Devido à sua variedade de aplicação no processo de ensino, o LOGO suscitou o interesse de grupos de pesquisa no mundo todo.

(43)

Capítulo 4

Simulando Métodos de Busca

A Capacidade de luta que há em você precisa das adversidades para revelar-se. (Autor desconhecido) Este capítulo apresenta um ambiente de ensino-aprendizado, utilizando simulação, para auxílio nas disciplinas de Inteligência Artificial.

Mostrando que a simulação pode ser utilizada para representar a IA em suas aborda-gens. Aqui a abordagem utilizada é a IAS, através dos métodos de busca em profundidade e em largura.

4.1

O Programa

Quando o professor se depara com a matéria MÉTODOS DE BUSCA em suas aulas de IA. Ele prepara o material para lecionar a aula. Este material normalmente será, entre outras formas:

• o livro explicativo;

• transparências da matéria;

• explicação no quadro.

Com o material preparado ele vai para a aula. Para explicar a busca em largura e em profundidade, ele explicará o conceito, tentando passar ao aluno o funcionamento do método.

Na tentativa de que todos entendam, colocará no quadro, provavelmente um desenho da árvore, e começará a seguir os passos que a busca realizará para chegar ao resultado.

Referências

Documentos relacionados

QUANDO TIVER BANHEIRA LIGADA À CAIXA SIFONADA É CONVENIENTE ADOTAR A SAÍDA DA CAIXA SIFONADA COM DIÂMTRO DE 75 mm, PARA EVITAR O TRANSBORDAMENTO DA ESPUMA FORMADA DENTRO DA

SENSOR DE

Equipamentos de emergência imediatamente acessíveis, com instruções de utilização. Assegurar-se que os lava- olhos e os chuveiros de segurança estejam próximos ao local de

A “Ficha de Avaliação Ético-Profissional” deverá ser assinada ao final de cada ciclo pelo aluno e professor responsável e, ao final do semestre pelo aluno e coordenador

E ele funciona como um elo entre o time e os torcedores, com calçada da fama, uma série de brincadeiras para crianças e até área para pegar autógrafos dos jogadores.. O local

Nas fraturas subtrocantéricas instáveis, como Seinsheimer IV-V com fragmentos que não podem ser reduzidos pelo método fe- chado em mesa de tração, a parte lateral da porção

O valor da reputação dos pseudônimos é igual a 0,8 devido aos fal- sos positivos do mecanismo auxiliar, que acabam por fazer com que a reputação mesmo dos usuários que enviam

A prova do ENADE/2011, aplicada aos estudantes da Área de Tecnologia em Redes de Computadores, com duração total de 4 horas, apresentou questões discursivas e de múltipla