imagem

  • Nome: “Sistema Multi-Agente – Jogo das Palavras”
  • Disciplina: Agentes e Inteligência Artificial Distribuída
  • Código: (em .zip)
  • Descrição: O objectivo deste trabalho de grupo era criar um Sistema Multi-Agente. O tema escolhido foi: “Sistema Multi-Agente na implementação de um jogo de estratégia”, em que participam n jogadores, todos eles agentes (não há qualquer interacção humana). Foi desenvolvido na plataforma JADE, na linguagem Java. Neste jogo, havia um agente “gestor”, que controlava o jogo (as regras), distribua as letras pelos agentes “jogadores”, controlava os leilões (vendas de letras entre “jogadores”) e recebia informações por parte dos “jogadores” de que tinham concluído uma palavra, etc.. Os “jogadores” recebiam a atribuição de uma palavra, que tinham que formar, por parte do “gestor”, e para formar essa palavra tinham que negociar letras que tinham com os restantes “jogadores”. Para tal tinham dinheiro. O objectivo foi criar agentes inteligentes, que tivessem estratégias apropriadas para alcançar o objectivo de formar as palavras, e para tal tinham que negociar inteligentemente (não pensar só a curto prazo, mas também a longo, isto é, tentar rentabilizar o seu dinheiro e guardar letras, por exemplo).
Advertisements

simulador

  • Nome: “Simulador de Condução Autónoma”
  • Disciplina: Inteligência Artificial
  • Código: simulador (em .zip) e agente
  • Descrição: O tema escolhido para o trabalho de Inteligência Artificial foi: “Criação de um Simulador/Agente para a Prova de Condução Autónoma”, ou seja, criação de um simulador simples para a prova de condução autónoma do festival Robótica 2004. A prova de condução autónoma consistia num veículo completamente autónomo que tinha de percorrer uma pista em forma de 8, sem sair desta, respeitando os sinais de semáforos colocados na pista e ultrapassando uma série de obstáculos que o utilizador poderia colocar na pista. Todas as decisões eram tomadas pelo robô (simulado) sem qualquer tipo de comunicação com o exterior. O robô simulava que possuia uma câmara (frontal), dois sensores laterais que indicam a proximidade das linhas limite da pista e dois motores. Pretendia-se no trabalho criar um simulador, construindo um servidor que permitia enviar ao robô virtual (através de sockets UDP) a sua percepção em cada instante (imagem virtual visualizada e informação contida nesta imagem e valores de sensores) e receber os comandos do robô virtual relativos à potência a aplicar aos seus motores executando-os de forma imperfeita. O agente que controlava o “robô” foi feito na linguagem Prolog e usava as seguintes metodologias: Agentes (ligação entre Percepção e Acção), Simulação, Pesquisa Sistemática/Informada, Algoritmo A*, Heurísticas. A parte gráfica (o simulador) foi feito em OpenGL, e nele apareciam 4 pontos de vista: um deles representava o que era visto pela câmara do veículo (a partir do que via, tendo como base as cores, passava essa imagem para informação, que depois era simplificada, e usada para decidir o que fazer, conjuntamente com os dados dos sensores laterais), e as outras serviam para o utilizador ver o trajecto do veículo na pista. A comunicação entre as duas partes foi feita através de sockets.
  • Nome: “Compilador para a linguagem Minnie”
  • Disciplina: Compiladores
  • Descrição: Desenvolvimento das fases de análise léxica, análise sintática, análise semântica e geração de código intermédio de um compilador para uma linguagem imperativa simples. A linguagem Minnie encontra-se aqui descrita: especificação.
  • Encontram-se aqui os relatórios das 5 fases do trabalho: 1 ; 2 ; 3 ; 4 ; 5 .
  • Nome: “Protocolo de Ligação Lógica” / “Protocolos de Aplicação – Cliente FTP”
  • Disciplina: Redes de Comunicação de Dados
  • Descrição: O 1º trabalho, “Protocolo de Ligação Lógica”, teve como objectivo a implementação de um protocolo de ligação lógica (emissor e receptor), e respectivo teste com uma aplicação de transferência de ficheiros. O 2º trabalho, “Protocolos de Aplicação – Cliente FTP”, consistiu na implementação de uma aplicação cliente capaz de transferir informação entre computadores utilizando o protocolo FTP. Em ambos, foi usada a linguagem de programação C e o sistema operativo Linux.
  • Nomes: “Controlador de ficheiros” ; “Simulador do funcionamento de um sistema de elevadores” ; “Arquitectura Cliente-Servidor aplicada a uma Biblioteca”
  • Disciplina: Sistemas Operativos
  • Descrição: Nesta cadeira fizemos 3 trabalhos:

    • “Controlador de ficheiros”, cujo objectivo era desenvolver uma aplicação que permitisse controlar certos tipos de alterações efectuadas nos ficheiros regulares existentes num determinado directório e nos seus subdirectórios;
    • “Simulador do funcionamento de um sistema de elevadores” – um programa multithreaded que permitia simular o funcionamento de um sistema de elevadores que transportam um conjunto de pessoas;
    • “Arquitectura Cliente-Servidor aplicada a uma Biblioteca” – uma aplicação que permite simular o funcionamento do sistema de pesquisa, requisição e devolução de livros de uma biblioteca, bem como a sua manutenção. Funciona segundo o modelo “cliente-servidor”, e é constituída por três programas: um programa servidor, multithreaded, e dois programas-clientes.
  • Encontra-se aqui os trabalhos: 1 , 2 e 3 e os respectivos relatórios: 1 , 2 e 3 .
  • Nome: “Tratamento de bagagens perdidas num aeroporto”
  • Disciplina: Sistemas de Informação nas Organizações
  • Descrição: Os objectivos propostos para este projecto foram o de fazer o levantamento, modelar e criar um processo de negócio, utilizando para tal o sistema de gestão de workflow Ultimus BPM suite. O processo de negócio por nós criado neste trabalho é relativo ao tratamento de bagagens perdidas num aeroporto, isto é, o processo que decorre desde o registo das reclamações de perda de uma dada bagagem por parte de um cliente até à devolução da mesma.
  • Nome: “GestoRest”
  • Disciplina: Laboratório de Bases de Dados
  • Descrição: O objectivo era desenvolver um Sistema de Informação para um restaurante. Este sistema era capaz de guardar informação sobre os produtos a serem vendidos, incluíndo o histórico de preços. Era ainda capaz de guardar a lista de produtos consumida por uma
    determinada mesa do restaurante. Foi utilizada a linguagem PHP.
  • Encontra-se aqui o código (em .zip) e imagens da interface:  1 ; 2 ; 3 ; 4 .