boa tarde galera…
sou novo aqui no fórum e queria uma ajuda de vocês…
preciso fazer este sistema:
Um sistema que é util para se fazer e que professores em particular gostariam é um gerador automático de avaliações.
Permitir:
-Cadastro de Disciplinas
-Cadastro de Temas
-Cadastro de bimestre (número de aula quem sabe)
-Cadastro de dificuldade
-Cadastro de tipo de Questão
-Cadastro de Avaliação onde o professor escolhe por exemplo:
– Quero uma prova de 10 questões com a matéria de Sistemas Operacionais I até a aula 10, com 4 questões de V ou F, 4 de múltipla escolha e 2 dissertativas (onde ele pode escolher o nível de dificuldade para cada uma).
queria fazer esse sistema usando IA… tornando isso um sistema especialista.
conversei com o meu professor e ele disse que um banco de dados normal faz esse tipo de seleção.
eu retornei para ele o seguinte…
Pensando no grau de relações que esse banco de dados teria de modo a sortear questões de acordo com os pré-requisitos definidos pelo professor garantindo a não repetição - separação por curso, tipo de questão, dificuldade, assunto e peso de questões. De modo que sua aplicação não sorteie uma mesma questão com frequeência criando uma inteligência que verifique se a questão já foi usada muitas vezes ou não. Se sim, tem que dar um tempo para reutilizar. Eu não consideraria isso um simples banco de dados…
agora vem as perguntas… tem como fazer isso com IA? é muito difícil programar usando regras de IA?
e tem algum tipo de material que possa me ajudar?
já dei uma olhada no programa Jess que tem API para java.
Se os critérios forem só esses (tipo de questão e nível de dificuldade), então, seu professor está certo.
Se quiser realmente complicar, considere que as questões são classificadas por conteúdos e habilidades/competências. Uma questão poderia cobrir mais de um conteúdo e mais de uma habilidade, e então, na montagem do perfil da prova, o professor poderia especificar os percentuais que ele gostaria de cada um para a prova.
Por exemplo:
Quero uma prova de 10 questões médias, 4 fáceis e 1 difícil com os seguintes conteúdos:
20% de álgebra
30% de vetores
30% de matrizes
20% de trigonometria
E cobrindo as seguintes habilidades e competências:
20% analise a interpretação de textos
30% lógica analítica
50% visão espacial
Para resolver esse problema, considere o uso de algorítmos genéticos:
DSL é a sigla para Domain Specific Language - Linguagem Específica de Domínio - e designa uma linguagem projetada especificamente para um domínio de um problema em particular. SQL por exemplo é uma DSL focada na manipulação de registros e estrutura de um banco de dados relacional.
Martin Fowler lançou recentemente um livro sobre o tema:
Mais informações aqui:
No seu caso, uma linguagem específica poderia ser projetada para criar essas avaliações.
não é querer complicar…
eu quero é resolver esse sistema… de uma forma diferente…
usando IA…
não que eu queira fazer um negócio simples como só um banco de dados… mas também não quero complicar… fazendo algo que eu não consiga fazer…
fazer um sistema que usando SE que dê o resultado esperado.
E se quiser deixar seu professor feliz, ao invés de Java, use Prolog:
No caso, algoritmos genéticos fazem parte de mecanismos de busca heurística e são amplamente estudados em disciplinas de IA.
Até porque, eles são feitos para realizar buscas em locais onde a solução não é np completa, e, portanto, não pode ser realizada de maneira direta em nossos computadores atuais.
Mas, se for só por tipo e dificuldade, uma query simples deve servir. Mesmo os outros parâmetros que vc sugeriu, podem ser resolvidos através do uso de contadores nessa query.
Uma solução complexa só tem sentido para problemas também complexos.
então tem como eu fazer aquele sistema usando IA para me gerar uma prova com aqueles requisitos ali?
exemplo: Quero uma prova de 10 questões com a matéria de Sistemas Operacionais I até a aula 10, com 4 questões de V ou F, 4 de múltipla escolha e 2 dissertativas (onde ele pode escolher o nível de dificuldade para cada uma).
em vez de eu fazer um simples banco de dados… eu posso usar IA tranquilo?
deixo de lado SE e vou para algoritmo genético?
meu professor de IA falou que SE seria menos complicado.
Eu só sugeri que vc tornasse o desafio mais interessante, pelo menos, com duas variáveis que sejam mutuamente dependentes (como é o caso dos conteúdos e habilidades e competências).
Por exemplo, no caso que sugeri, simplesmente fazer um select numa questão com uma determinada habilidade e competência e seleciona-la afeta o índice dessa hc., mas também vai afetar o conteúdo.
Ali, onde propus, não tem como vc selecionar uma questão com base em um parâmetro, sem indesejadamente mexer nos outros parâmetros.
O algoritmo tem que é achar o melhor balanceamento dos requisitos.
No caso que vc está propondo, vc pode simplesmente usar filtros sucessivos. Primeiro filtra por tipo, em seguida por dificuldade, e simplesmente adiciona N questões na prova. Como um parâmetro não afeta o percentual de outro, seu resultado final será exatamente o programado.
Entendeu pq o que propus é muito mais interessante? Talvez haja uma solução para o que propus usando SE. Esse não é exatamente meu campo de estudo, proponha essa modificação para o seu professor e veja o que ele diz.
Para justificar o seu trabalho, classificar questões por pelas matrizes de Habilidades e Competências e de Conteúdos é a forma que o MEC usa para avaliar instituições em provas como a do Enade. Portanto, um sistema que pudesse montar provas assim poderia ser usado para criar automaticamente simulados para a instituição de ensino e realizar diagnóstico sobre a qualidade do curso na faculdade.
entendi…
sei que a ideia que você me retornou seria muito mais interessante…
mas…
este caso que você me mostrou…
“No caso que vc está propondo, vc pode simplesmente usar filtros sucessivos. Primeiro filtra por tipo, em seguida por dificuldade, e simplesmente adiciona N questões na prova. Como um parâmetro não afeta o percentual de outro, seu resultado final será exatamente o programado.”
sei que vai me retornar a mesma coisa que se eu fizesse um banco de dados normal.
mas assim eu não teria o que escrever no trabalho…
já eu usando IA… mesmo que for mais simples fazendo com o banco de dados… eu já teria que escrever sobre IA
entendeu?
daria de fazer com IA? essa realmente é minha dúvida…
Daria, mas se eu fosse seu professor, gostaria de saber a justificativa para você ter usado IA num problema tão simples.
Entende? Você não consegue justificar sequer a existência do seu trabalho.
só não to entendendo o por que de querer usar algo complexo pra resolver um problema simples…
você consegue fazer o que quer usando queries e contadores… algoritmos genéticos ou IA pra resolver isso eu acho estranho
é meio como construir um dispositivo super potente e avançado pra quebrar um ovo hehehe
[quote=digaoneves]só não to entendendo o por que de querer usar algo complexo pra resolver um problema simples…
você consegue fazer o que quer usando queries e contadores… algoritmos genéticos ou IA pra resolver isso eu acho estranho
é meio como construir um dispositivo super potente e avançado pra quebrar um ovo hehehe[/quote]
psé
mas fazer um TCC com um sistema normal não ficaria estranho?
teria que ter algo diferente né?
:S
[quote=andrejm]
psé
mas fazer um TCC com um sistema normal não ficaria estranho?
teria que ter algo diferente né?
:S[/quote]
Camarada
Logo você vai perceber que não é o tamanho nem a complexidade do sistema que contam e sim quais autores e livros foram teus “guias”.
Aliás, escolher um bom professor para orientação é fundamental.
Correr atrás dele e fazer parte do dia do sujeito, do acordar ao dormir, mais ainda.
Pode ser um sistema de cálculo de tabuada, mas se você tiver na bibliografia os livros e autores certos e como orientador o professor adequado, não tem nada que vá te diminuir.
[quote=drsmachado][quote=andrejm]
psé
mas fazer um TCC com um sistema normal não ficaria estranho?
teria que ter algo diferente né?
:S[/quote]
Camarada
Logo você vai perceber que não é o tamanho nem a complexidade do sistema que contam e sim quais autores e livros foram teus “guias”.
Aliás, escolher um bom professor para orientação é fundamental.
Correr atrás dele e fazer parte do dia do sujeito, do acordar ao dormir, mais ainda.
Pode ser um sistema de cálculo de tabuada, mas se você tiver na bibliografia os livros e autores certos e como orientador o professor adequado, não tem nada que vá te diminuir.[/quote]
obrigado cara
é bom escutar isso
sabe que eu cheguei em um ponto de largar tudo… tudo mesmo :S
mas vou conversar com meu orientador hoje e ver o que ele me passa…
tive uma ideia de usar a taxionomia de bloon…
Benjamin Bloom criou uma taxonomia [classificação de saberes] para categorizar níveis de abstração de questões que geralmente são feitas em educação. A taxonomia oferece uma estrutura útil para classificar questões de provas dentro de determinados níveis [assim como para determinar competências desejáveis em educação]. Se conseguirmos determinar os níveis das questões que queremos que os alunos sejam capazes de responder, ficará mais fácil escolher as estratégias apropriadas de ensino-aprendizagem
Posso te dizer que o mais frustrante de uma graduação é se esforçar demais com foco no objetivo errado.
Se você cursa Análise de Sistemas, camarada, o foco nunca será programação. A análise e o design é que são “a menina dos olhos” do TCC. Tudo bem que nós desejamos ver algo rodando redondinho, mas não é isso que “ganha o jogo”.
Se teu software fizer tudo o que você espera, mas o design não contiver um bom diagrama de ER, de Classes ou mesmo especificação de use case, você se esforçou à toa.
[quote=drsmachado]Posso te dizer que o mais frustrante de uma graduação é se esforçar demais com foco no objetivo errado.
Se você cursa Análise de Sistemas, camarada, o foco nunca será programação. A análise e o design é que são “a menina dos olhos” do TCC. Tudo bem que nós desejamos ver algo rodando redondinho, mas não é isso que “ganha o jogo”.
Se teu software fizer tudo o que você espera, mas o design não contiver um bom diagrama de ER, de Classes ou mesmo especificação de use case, você se esforçou à toa.[/quote]
eu curso sistemas de informação
meu coordenador de curso falou para fazer um sistema normal…
mas tenho medo de chegar na banca e o pessoal me descascar :S