1 / 16

Engenharia de Software para Sistemas de Apoio a Decisão

Engenharia de Software para Sistemas de Apoio a Decisão. Thiago F. Noronha. Introdução. Sistemas de apoio à decisão (SAD) são sistemas que ajudam a decidir qual a melhor solução para um determinado problema. Por exemplo: Sport scheduling Car sequencing Network design Bin packing

Download Presentation

Engenharia de Software para Sistemas de Apoio a Decisão

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. Engenharia de Software para Sistemas de Apoio a Decisão Thiago F. Noronha

  2. Introdução • Sistemas de apoio à decisão (SAD) são sistemas que ajudam a decidir qual a melhor solução para um determinado problema. • Por exemplo: • Sport scheduling • Car sequencing • Network design • Bin packing • Nestes exemplos (e em muitos outros), o processo de decisão pode ser expressado por um modelo matemático.

  3. Introdução • Em geral, os modelos matemáticos consistem em uma ou mais funções de otimização e um conjunto de restrições. • Estes modelos podem ter várias soluções com custos diferentes (valor de função de otimização). • Busca-se a melhor dentre todas as soluções do modelo (solução ótima). Entretanto, caso a solução ótima não possa ser atingida, a melhor solução encontrada é devolvida.

  4. Introdução • A grande maioria dos modelos matemáticos referentes a problemas reais são muito difíceis de resolver. • Eles podem ter milhares ou milhões de variáveis de decisão. • O número de soluções possíveis cresce exponencialmente em função do número de variáveis; • A quantidade de memória necessária para resolver os modelos também cresce exponencialmente em função do número de variáveis. • SAD diferem de outros sistemas porque eles focalizam o processamento e a visualização dos dadosem vez do armazenamento e recuperação.

  5. Projeto FutMax (www.futmax.org) • Ao longo do campeonato o site publica informações sobre os times, tais como: • O time é matematicamente o campeão. • O time só depende de seus resultados para ser campeão. • O time depende de resultados de outros times para ser campeão. • O time não pode mais ser campeão. • O time está classificado para a T.L.. • O time ainda não está classificadoT.L., mas só depende de seus resultados. • O time não está classificado para T.L. e depende de resultados de outros times. • O time está desclassificado para a T.L.. • O time está não pode mais ser rebaixado. • O time só depende de seus resultados para não ser rebaixado. • O time depende de resultados de outros times para não ser rebaixado. • O time está matematicamente rebaixado.

  6. Projeto FutMax (www.futmax.org) Estas informações são calculadas em função do: • Número atual de pontos do time. • Número de jogos realizados. • Números de pontos para • ser campeão. • se classificar para a T.L. • não ser rebaixado. • Números de pontos para ter chance de • ser campeão. • se classificar para a T.L. • não ser rebaixado.

  7. Projeto FutMax (www.futmax.org) • Objetivo: Desenvolver um sistema para a atualização do site do projeto FutMax. • A fonte dos dados não conhece o sistema. • O estado do sistema pode mudar a qualquer hora do dia e a atualização do sistema deve ser imediata. • O processamento dos dados envolve a resolução de vários modelos matemáticos e consequentemente envolve um alto custo computacional. • No entanto, o processamento dos dados pode ser distribuído em vários computadores, já que os modelos podem ser resolvidos independentemente. • A aplicação não justifica o custo de um operador, portanto o sistema dever ser o mais autônomo possível.

  8. Projeto FutMax (www.futmax.org) Data Input Collectors Internet Solver Publisher Validator Solver Solver

  9. Projeto FutMax (www.futmax.org) • Ele foi modelado utilizando o paradigma de engenharia de software orientados a agentes e implementado na linguagem Java. • A modelagem por agentes, permitiu a criação de um sistema desacoplado e extensível. • A colaboração entre os agentes mostrou-se bastante benéfica, permitido que uma operação bastante complexa fosse resolvida de forma bastante simples. • O sistema vem sendo utilizado desde 2004.

  10. Trabalhos futuros • SAD necessitam de um alto investimento em infra-estrutura. • Um computador muito rápido. • Muita memória RAM. • Uma licença do software que resolve os modelos matemáticos (US$ 4.000,00). • Em muitas aplicações, o processo de decisão é executado esporadicamente, portanto a infra-estrutura é subutilizada. • Nós propomos uma arquitetura distribuída na qual o processando dos dados é realizado por um “WEB service”.

  11. Trabalhos futuros Servidor de Otimização Cluster Desktop

  12. Trabalhos futuros Servidor de Otimização Cluster Desktop Desktop Desktop

  13. Trabalhos futuros • Esta abordagem permite uma diminuição no custo total do sistema. • Um maior número de aplicações tornam-se economicamente viáveis. • O sistema torna-se mais portátil, podendo ser executado em qualquer computador conectado à Internet. • A empresa pode ganhar não só vendendo o SAD mas também o poder de processamento.

  14. Fim

  15. Diagrama de casos de uso

  16. Diagram de classes

More Related