• Nenhum resultado encontrado

AIHC : Artificial Intelligence for Home Control.

N/A
N/A
Protected

Academic year: 2023

Share "AIHC : Artificial Intelligence for Home Control."

Copied!
109
0
0

Texto

Lista de Sensores

Lista de Equipamentos

Agente de teste 1

Agente de teste 2

Regras da Simulação 1

Regras da Simulação 2

Parâmetros Iniciais

Parâmetros Finais Simulação 1

Parâmetros Finais Simulação 2

INTRODUÇÃO

  • Problema
  • Objetivos
    • Geral
    • Objetivos Específicos
  • Justificativa
  • Estrutura do trabalho

Portanto, é fundamental ter um sistema gratuito e de código aberto que permita que mais pessoas acessem essa tecnologia e que toda a comunidade trabalhe no seu progresso. A criação de um quadro modular capaz de controlar a eletrônica presente na residência e monitorar as leituras dos sensores instalados na residência. Construir um agente inteligente integrado ao framework supracitado que extrai os dados processados ​​e gera sugestões de regras de automação ao usuário.

CONCEITOS GERAIS E REVISÃO DA LITERATURA

  • Inteligência Artificial
    • Agentes Inteligentes
    • Definição de agente inteligente
    • Classificação do Ambiente
    • Classificação dos agentes
  • Tecnologias
    • Biometria
    • Controle de presença
    • Bancos De Dados
  • Ambiente Virtual
  • Linguagens de Programação
    • Definição
    • Tipos de linguagem de programação
    • Objetivos da linguagem de programação
    • O C++
  • Heurística
    • Porque usar Heurística
    • Metaheurística
    • Colônia de Formigas, otimização
    • Formigas Artificiais
  • Trabalhos Relacionados

Ou como dizem Elmasri e Navathe (2011, p. 3): “um banco de dados é uma coleção de dados relacionados que toma a palavra dados como fatos conhecidos que podem ser registrados e que possuem significado implícito”. Date (2004, p. 6) ajuda a confirmar a ideia ao dizer que um sistema de banco de dados é “um sistema de computador cuja finalidade geral é armazenar informações e permitir que os usuários pesquisem e atualizem essas informações quando solicitado”. O banco de dados relacional (BDR) segue o modelo relacional e sua linguagem padrão é a Structured Query Language (SQL).

Figura 1.1: atributos de uma relação alunos Fonte: ELMASRI e NAVATHE, 2011
Figura 1.1: atributos de uma relação alunos Fonte: ELMASRI e NAVATHE, 2011

METODOLOGIA

  • Formulação do Problema
    • Formalização do Framework AIHC
    • Formalização da Inteligência Artificial
  • Análise de Requisitos
  • Modelo
    • Framework AIHC
    • Banco de dados
    • Agente Inteligente
    • Ambiente virtual para simulação
  • MÉTODO DE CONSTRUÇÃO

Essa interação com o usuário ajuda a tomar decisões sobre regras de otimização para maior conforto e segurança da residência e de seus moradores. Ele é dividido em 5 módulos menores, cada um dos quais realiza uma parte do processo de geração de regras. Esses cinco módulos são Agente Simples, Gerador de Regras, Ordenador de Regras, Proponente de Regras e Qualidade Total e serão apresentados nesta subseção seguindo a mesma ordem.

O gerador de regras é o módulo cujo objetivo é pesquisar a tabela S acima e comparar o período de cada iteração para determinar se a ação (s,l) e o comando (e,v) têm um relacionamento A entre eles. Assim que a regra possível ainda não estiver na tabela de regras específicas e atender ao valor mínimo da fórmula de viabilidade, é criado um registro na tabela de regra possível P para avaliação do módulo de ordenação de regras. O Rule Sorter é o módulo responsável por ponderar cada regra P possível, e avalia quais são as regras mais relevantes.

Onde: Pa é o número total de regras possíveis em P no momento atual e Pb é o número total de regras em P no momento em que as regras foram classificadas pela última vez. O Proponente de Regras opera com base nos dados gerados pela Ordem de Regras, comparando os pesos de cada regra com os valores mínimos definidos para apresentação da proposta ao usuário. O segundo teste e as comparações feitas pelo módulo visam verificar o número de regras aceitas c e o número de regras rejeitadas ng em um dado momento b para cada período t. Portanto, sempre que dez regras aceitas ou dez regras rejeitadas se acumularem em um período, o módulo aplica a seguinte Fórmula:.

Quando este teste é executado, o número de propostas Qbt do período t no tempo b é comparado ao número mínimo de linhas Lt esperadas e ao número máximo de linhas Ht esperadas.

Figura 2.1: Visão Framework AIHC Fonte: Elaborado pelo autor
Figura 2.1: Visão Framework AIHC Fonte: Elaborado pelo autor

IMPLEMENTAÇÃO

  • BANCO DE DADOS
  • FRAMEWORK
  • INTELIGÊNCIA ARTIFICIAL
  • Ambiente de Simulação

A base do Framework foi dada pela implementação de uma função de acesso para cada estrutura a ser utilizada. Dessa forma, a Figura 3.3, que mostra as funções das pessoas CRUD, é usada para explicar todos os outros CRUDs específicos. Os atributos utilizados para construir os registros acima e o CRUD referente à lista de ações e à lista de mudanças de estado do equipamento (comandos) são mostrados os mesmos em suas respectivas tabelas na Figura 2.4.

Esta função é representada na coluna Drive da Figura 2.1 com o nome de Sensor e a Figura 3.4 apresenta o código utilizado para sua implementação. Em seguida, foi implementada uma função específica para envio de comandos e atualização de status, semelhante à vista na Figura 3.4 e representada na Figura 2.1 na coluna "drive", como uma das partes do "Orelha Externa". A “linha de comparação” vista na Figura 3.7 atua recuperando o tipo de comparação a ser feita (type) na linha (idc) e o valor a ser comparado (value), em seguida enviando esses valores e o sensor por leitura para o compareRuleValue () função.

O “Valor de Controle de Comparação”, presente na Figura 3.8, é utilizado para comparar os valores definidos na regra com os valores lidos pelo sensor. A Figura 3.9 mostra o código para executeRegraIndividual(), após a função receber o ID correspondente ao registro de uma regra, as variáveis ​​referentes ao ID do dispositivo (idEquipamento) e o valor do novo estado (buffer) carregado. A sequência utilizada para implementar o módulo de inteligência artificial foi a mesma da apresentação da modelagem, com o acréscimo de uma função para inicializar os módulos.

Após esse movimento, um círculo roxo com o número 3 aparecerá na sala 4, conforme mostrado na Figura 4-1.

Figura 3.1: Consulta Simples Fonte: Elaborado pelo autor
Figura 3.1: Consulta Simples Fonte: Elaborado pelo autor

TESTES E RESULTADOS

Simulação

Os de id 13 e 33 são do tipo ar condicionado, enquanto os de id 22 a 27 são extintores de teto. Associando as Tabelas 1.1 e 1.2 à Figura 4.1, pode-se observar a colocação desses equipamentos e sensores nos seis cômodos da casa virtual projetada para esta simulação. As Tabelas 2.1 e 2.2 são assim entendidas como, dado um determinado tempo, o agente executando uma sequência de movimentos e comandos.

A regra pode ser interpretada como, a Comparação de Tipos refere-se a se o valor de leitura do sensor, de Id igual ao armazenado em Sensor Id, deve ser igual (0), maior (1) ou menor (-1) que o valor a ser comparado (Valor Comparado) é armazenado na linha. Se esta comparação for verdadeira, o equipamento com id igual ao Equipment ID recebe o valor armazenado em PreviousValue. Para definir as regras contidas nas Tabelas 3.1 e 3.2, foram analisadas as rotinas das Tabelas 2.1 e 2.2, escolhendo as regras que pareciam razoáveis ​​para um usuário real querer adotar.

A condição de sucesso considerada para essas simulações é que o sistema detecte e sugira todas as regras encontradas nas Tabelas 3.1 e 3.2. A Tabela 3.1 é a condição de sucesso para a primeira simulação e a Tabela 3.2 a condição de sucesso para a segunda simulação. A segunda candidatura foi responsável por responder a todas as propostas submetidas ao M.U. foi apresentada, aceitando-se as regras encontradas nas Tabelas 3.1 e 3.2, dependendo de qual simulação, e rejeitando as demais.

Assim, possibilitando simulações sem monitoramento contínuo para atender as regras propostas pelo sistema.

Tabela 1.2: Lista de Equipamentos Fonte: Elaborado pelo Autor
Tabela 1.2: Lista de Equipamentos Fonte: Elaborado pelo Autor

Resultados

É possível notar que o valor de "qntd" representa um valor muito maior que o número de regras existentes. Pode-se observar no Gráfico 1 que o número de combinações possíveis entre as leituras dos sensores e os estados dos equipamentos (Total Combinations) na Simulação 1 é muito maior do que na Simulação 2. Ou seja, dado o conjunto de leituras dos sensores e o conjunto de estados dos equipamentos. existem 740 combinações de regras diferentes para a simulação 1 e 432 para a simulação 2.

Deve-se notar que o número de medições de sensores alimentados na estrutura foi próximo em ambas as simulações, mas o número de medições de entrada. Essas regras são a porcentagem de ocorrências da tupla de ação em relação ao número de leituras de ação e a porcentagem de ocorrências da tupla de comando em relação ao número de mudanças de estado do dispositivo registradas. Tanto para a primeira regra encontrada quanto para a última regra encontrada, o percentual da simulação 2 é maior que o da simulação 1.

Esse percentual leva em consideração o número de vezes que ocorre uma leitura do sensor ou condição do equipamento em relação ao número total de entradas daquele tipo. Com base na variedade de regras possíveis para cada simulação e na porcentagem de ocorrência da menor regra, assume-se que a última regra da simulação 2 seria encontrada mais rapidamente do que a última regra da simulação 1. No entanto, o tempo de execução da simulação 1 foi menor que o tempo de execução da simulação 2, mesmo a primeira tem que encontrar mais regras, e também tem várias regras diferentes possíveis, e sua última regra é menos relevante em termos de quantas vezes ela aparece.

No entanto, o número de regras geradas a partir do número de regras esperadas (regras aceitas) difere significativamente, com 19,25 regras geradas a partir de regras aceitas na simulação 2 versus 11,53 na simulação 1.

Tabela 5.1: Parâmetros Finais Simulação 1 Fonte: Elaborado pelo autor
Tabela 5.1: Parâmetros Finais Simulação 1 Fonte: Elaborado pelo autor

CONCLUSÃO E TRABALHOS FUTUROS

Atualmente, o sistema já possui um módulo de interação com o usuário que aceita comandos de texto, portanto o sistema está pronto para receber esta atualização. Um sistema de transcrição de voz para texto pode ser conectado ao sistema de comando de texto existente sem a necessidade de alterações no restante do sistema. Outra atualização que poderia ser adicionada ao sistema seria um módulo de monitoramento de sinais vitais com um sistema de alarme.

Assim, o sistema ajudaria a cuidar de idosos e pessoas com problemas de saúde, enviando alertas para uma equipe médica ou responsável quando o estado do monitorado assim o exigir. Conceitualmente, é uma contribuição muito interessante para pessoas com necessidades especiais de cuidado, dada a possibilidade de acompanhamento 24 horas. Esta pesquisa foi resumida como a modelagem e implementação bem-sucedida de um sistema que permite gerenciar a casa com a ajuda da inteligência artificial.

Por ser um sistema modular, está pronto para ser aprimorado conforme o avanço da tecnologia, assim fica mais fácil estar sempre atualizado e acompanhar as tendências e avanços tecnológicos. TCC (Diploma) - Curso de Engenharia de Controle e Automação, Universidade Federal de Ouro Preto, Ouro Preto, 2007.

BANCO DE DADOS CENTRA

TABELA DE VARIÁVEIS

AGENTE INTELIGENTE

  • Inicialização do Sistema
  • Agente Simples
  • Gerador de Regras
  • Ordenador de Regras
  • Proponente de Regras
  • Qualidade Total

A classe na Figura 7-8 tem três métodos: i) um destruidor para liberar o espaço de memória alocado para a fila, ii) um construtor que recebe uma referência a um objeto Rule Sorter. Para ponderar o valor do atributo de relevância, é utilizada a função calculusRelevancia(), cuja lógica é mostrada na Figura 7-10. A Figura 7.11 significa: se um registro foi aceito para o item em questão, a fórmula da linha 3 é aplicada.

A função mostrada na Figura 7.12 consiste em um loop que é executado uma vez para cada membro da lista recebida. A função orderRules() na Figura 7.7 termina com um teste condicional que é executado se a cota mínima do pedido não for atingida. A função apresentada na Figura 7.13 é descrita em quatro partes: i) uma conexão com o banco de dados é aberta em um loop infinito; carrega uma variável com o ID da última sugestão apresentada ao usuário e adiciona mais uma, ou seja, a próxima sugestão a ser apresentada (nextId); e outro com o ID do último template armazenado na lista ordenada; ii) então o loop é executado até que todas as sugestões da lista ordenada sejam enviadas ao usuário.

A Figura 7.14 apresenta a lógica utilizada para verificar a necessidade de cálculo das variáveis ​​de controle para cada um dos períodos. A função descrita na parte ii é representada pela lógica apresentada na Figura 7.15, que pretende replicar a Fórmula (3.18). Como resultado dos testes serem executados consecutivamente entre os períodos, o primeiro período avaliado quando esta condição for satisfeita será o responsável por fazer esta atualização chamando a função mostrada na Figura 7.15.

Sua lógica pode ser vista na Figura 7.16. Os testes condicionais nas linhas 2 e 8 reproduzem o efeito apresentado da escolha da fórmula (3.18), e o corpo dos testes condicionais reproduz os cálculos.

Figura 7.6: Cria possível regra Fonte: Elaborada pelo autor
Figura 7.6: Cria possível regra Fonte: Elaborada pelo autor

Imagem

Figura 1.1: atributos de uma relação alunos Fonte: ELMASRI e NAVATHE, 2011
Figura 2.1: Visão Framework AIHC Fonte: Elaborado pelo autor
Figura 2.2: Visão Geral Fonte: Elaborado pelo autor
Figura 2.3: Divisão do Framework Fonte: Elaborado pelo autor
+7

Referências

Documentos relacionados

Presentes, também, a Subprocuradora-Geral da República Célia Regina Souza Delgado (Corregedora-Geral do Ministério Público Federal), o Procurador Regional da