1 / 48

Matching Module Novas Instâncias para a Infra-estrutura de Matchmaking

Matching Module Novas Instâncias para a Infra-estrutura de Matchmaking. Agenda. Overview Criando um Domain Knowledge Usando o Matching Module A Aplicação Cliente Novas Instâncias Documentos para Consulta. Overview.

paiva
Download Presentation

Matching Module Novas Instâncias para a Infra-estrutura de Matchmaking

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Matching Module • Novas Instâncias para a Infra-estrutura de Matchmaking

  2. Agenda • Overview • Criando um Domain Knowledge • Usando o Matching Module • A Aplicação Cliente • Novas Instâncias • Documentos para Consulta

  3. Overview • Biblioteca + Framework em Java para realização de matching entre indivíduos • Dados dois grupos de indivíduos • séries de soluções para o problema de matching proposto • score para cada solução apresentada

  4. Overview • Requisitos • Flexibilidade • Extensibilidade • Compatibilidade com padrões • RDF, RDFS, DAML+OIL, OWL • Independência de domínio • Simplicidade e Facilidade de Uso

  5. Overview • Requisitos • Configurabilidade • Que algoritmo de matching utilizar? • Que informação de domínio utilizar? • Que ontologia ou modelo semântico foi utilizado para descrever os recursos que serão processados? • Que recursos que estão sendo processados? • Que tipo de matching será aplicado (uma a um, um a múltiplos, múltiplos a um, múltiplos a múltiplos)? • Que operações deverão ser aplicadas aos resultados? (número máximo de resultados, filtragem acima ou abaixo de um fator de corte).

  6. Criando um Domain Knowledge • Como criar um novo domínio de conhecimento para o Matching Module? • Exemplo: • Competências de um Funcionário

  7. Criando um Domain Knowledge

  8. Criando um Domain Knowledge Ontologia para Competências

  9. Criando um Domain Knowledge Ontologia para Cursos

  10. Criando um Domain Knowledge Ontologia para Pessoas

  11. Criando um Domain Knowledge • Como ensinar ao MM como avaliar os possíveis conjuntos de resultados? • Definindo um domain knowledge • Definindo um evaluator • Definindo um state changer

  12. Criando um Domain Knowledge • Como ensinar ao MM como avaliar os possíveis conjuntos de resultados? • Definindo um domain knowledge

  13. Criando um Domain Knowledge • Como ensinar ao MM como avaliar os possíveis conjuntos de resultados? • Definindo um evaluator • Matching é um problema sensível a contexto • Como saber se uma seqüência (OO, Java) é melhor que uma (OO, .Net) para o funcionário Daniel?

  14. Criando um Domain Knowledge • Como ensinar ao MM como avaliar os possíveis conjuntos de resultados? • Definindo um evaluator • Um evaluator é responsável por calcular o score de uma solução particular para um matching em um dado domínio. • Isso é feito através da definição de funções genéricas que podem, em tempo de execução, calcular o score para instâncias de solução. • Os métodos eval do evaluator avaliam quão boa uma solução é para um problema

  15. Criando um Domain Knowledge • Como ensinar ao MM como avaliar os possíveis conjuntos de resultados? • Definindo um evaluator • Novos evaluators devem ser criados através da herança de um dos tipos de evaluators existentes, com a implementação de novos comportamentos para os métodos: • public double[] eval1to1( Individual i1, Individual i2 ) • public double[] eval1toN( Individual i, IndividualsCollection list ) • public double[] evalNto1( IndividualsCollection list, Individual i ) • public double[] evalNtoN( IndividualsCollection l1, IndividualsCollection l2 ) • (essas implementações são ou não necessárias de acordo com a natureza do problema)

  16. Criando um Domain Knowledge • Exemplo • Uma pessoa deve fazer um curso se este desenvolve alguma competência que aquela pessoa demanda. • Quanto maior o número de competências que o curso desenvolve, mais adequado ele é para aquela pessoa. • Nenhuma pessoa deve fazer o mesmo curso duas vezes. • Cursos podem ter pré-requisitos.

  17. Criando um Domain Knowledge Eval 1 to 1

  18. Criando um New Domain Knowledge Eval 1 to N

  19. Criando um New Domain Knowledge • Como ensinar ao MM como avaliar os possíveis conjuntos de resultados? • Definindo um state changer • Resultados são obtidos incrementalmente • A cada iteração, o estado do grupo de indivíduos muda, bem como as próximas melhores soluções • Um state changer é o mecanismo que muda o estado de um problema após cada solução

  20. Criando um Domain Knowledge State Changer para o domínio de exemplo

  21. Usando o Matching Module • Definindo o problema e o espaço de soluções para o matching • Definindo os parâmetros de matching • Especificando o problema • Especificando o espaço de soluções • Especificando uma estratégia

  22. Usando o Matching Module • Definindo o problema e o espaço de soluções para o matching • Estrutura do XML

  23. Usando o Matching Module • Definindo o problema e o espaço de soluções para o matching • Parâmetros de Matching

  24. Usando o Matching Module • Definindo o problema e o espaço de soluções para o matching • Parâmetros de Matching • Name • Type (1to1, Nto1, 1toN, NtoN) • Model • MaxResultsSize • Threshold

  25. Usando o Matching Module • Definindo o problema e o espaço de soluções para o matching • Problema

  26. Usando o Matching Module • Definindo o problema e o espaço de soluções para o matching • Soluções

  27. Usando o Matching Module • Definindo o problema e o espaço de soluções para o matching • Estratégias

  28. Usando o Matching Module • Definindo o problema e o espaço de soluções para o matching • Estratégias • Três estratégias já estão implementadas no MM: • Estratégia Força Bruta • Estratégia Gulosa • Estratégia Busca Tabu

  29. Usando o Matching Module • Definindo o problema e o espaço de soluções para o matching • Especificação Completa

  30. A Aplicação Cliente • Exemplo: Domínio de Pessoas, Cursos e Competências

  31. A Aplicação Cliente • Exemplo: Domínio de Pessoas, Cursos e Competências

  32. A Aplicação Cliente • Exemplo: Domínio de Pessoas, Cursos e Competências

  33. A Aplicação Cliente • Exemplo: Domínio de Pessoas, Cursos e Competências • Resultados Esperados

  34. A Aplicação Cliente • Exemplo: Domínio de Pessoas, Cursos e Competências

  35. A Aplicação Cliente • Exemplo: Domínio de Pessoas, Cursos e Competências Configuração do servidor

  36. A Aplicação Cliente • Exemplo: Domínio de Pessoas, Cursos e Competências Configuração do servidor

  37. A Aplicação Cliente • Exemplo: Domínio de Pessoas, Cursos e Competências

  38. A Aplicação Cliente • Exemplo: Domínio de Pessoas, Cursos e Competências

  39. A Aplicação Cliente • Exemplo: Domínio de Pessoas, Cursos e Competências

  40. A Aplicação Cliente • Exemplo: Domínio de Pessoas, Cursos e Competências

  41. A Aplicação Cliente • Exemplo: Domínio de Pessoas, Cursos e Competências

  42. A Aplicação Cliente • Exemplo: Domínio de Pessoas, Cursos e Competências

  43. A Aplicação Cliente • Exemplo: Domínio de Pessoas, Cursos e Competências

  44. A Aplicação Cliente • Exemplo: Domínio de Pessoas, Cursos e Competências

  45. A Aplicação Cliente • Exemplo: Domínio de Pessoas, Cursos e Competências

  46. Novas Instâncias • Problemas de Matching: • Dada uma vaga e as competências necessárias para preenchê-la, qual o melhor candidato? (Já desenvolvido) • Dado um conjunto de pessoas e seus interesses e um conjunto de mensagens publicitárias, quais são aquelas que terão o maior impacto? • Dado um projeto e suas necessidades e um conjunto de profissionais, suas competências e disponibilidades, quais são os profissionais mais indicados? • Dado um conjunto de cursos, as competências e um conjunto de profissionais, quais são os mais indicados para o treinamento? • Dada uma dissertação ou tese e seus temas, qual a composição mais indicada para uma banca?

  47. Documentos de Referência • An Overview of the Matching Module • Creating a New Domain Knowledge • Using the Matching Module • Configuring a Matching Server • An Introduction to the Matching Module Client Application • Skills Management Case Study • JavaDocs, Diagramas e Classes

  48. Obrigado! • Cristiano Rocha, Luiz Gustavo Ferrão, Francisco Ferreira, Daniel Orlean 21 3114-1800 daniel.orlean@milestone-ti.com.br orlean@inf.puc-rio.br

More Related