utilizac˘ao de redes neurais para localizac˘~ ao de~ um...

56
UTILIZAC ¸ ˜ AO DE REDES NEURAIS PARA LOCALIZAC ¸ ˜ AO DE UM CORPO PONTUAL COM BASE EM POSICIONAMENTO POR RADIOFREQU ˆ ENCIAS Marielen Marins Ferreira Projeto de Gradua¸c˜ ao apresentado ao Curso de Engenharia Eletrˆ onicaedeComputa¸c˜ao da Escola Polit´ ecnica, Universidade Federal do Rio de Janeiro, como parte dos requisitos necess´ arios ` aobten¸c˜ ao do t´ ıtulo de Enge- nheiro. Orientador: Jos´ e Gabriel Rodriguez Car- neiro Gomes Rio de Janeiro Abril de 2016

Upload: truongnhan

Post on 10-Dec-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

UTILIZACAO DE REDES NEURAIS PARA LOCALIZACAO DE

UM CORPO PONTUAL COM BASE EM POSICIONAMENTO

POR RADIOFREQUENCIAS

Marielen Marins Ferreira

Projeto de Graduacao apresentado ao Curso

de Engenharia Eletronica e de Computacao

da Escola Politecnica, Universidade Federal

do Rio de Janeiro, como parte dos requisitos

necessarios a obtencao do tıtulo de Enge-

nheiro.

Orientador: Jose Gabriel Rodriguez Car-

neiro Gomes

Rio de Janeiro

Abril de 2016

UNIVERSIDADE FEDERAL DO RIO DE JANEIRO

Escola Politecnica - Departamento de Eletronica e de Computacao

Centro de Tecnologia, bloco H, sala H-217, Cidade Universitaria

Rio de Janeiro - RJ CEP 21949-900

Este exemplar e de propriedade da Universidade Federal do Rio de Janeiro, que

podera incluı-lo em base de dados, armazenar em computador, microfilmar ou adotar

qualquer forma de arquivamento.

E permitida a mencao, reproducao parcial ou integral e a transmissao entre bibli-

otecas deste trabalho, sem modificacao de seu texto, em qualquer meio que esteja

ou venha a ser fixado, para pesquisa academica, comentarios e citacoes, desde que

sem finalidade comercial e que seja feita a referencia bibliografica completa.

Os conceitos expressos neste trabalho sao de responsabilidade do(s) autor(es).

Copyright c© 2016 Laird Technologies. All rights reserved. Reproduction in whole

or in part is prohibited without the prior written permission of the copyright holder.

iii

DEDICATORIA

Dedico este trabalho aos meus pais,

especialmente a minha mae, por nao ter

me deixado desistir dos meus sonhos

e ao meu pai, por ter me mostrado como

a matematica e simples.

iv

AGRADECIMENTO

Agradeco, primeiramente, a Deus.

Ao CNPQ, por ter me dado a oportunidade de realizar o meu intercambio academico

na Inglaterra.

Estendo os meus agradecimentos especiais a Shewan Yitayew, Mahendra Tailor e

Andrew Dobbing da Laird Technologies, por ter me dado este projeto para trabalhar.

Sou muito grata a paciencia e a dedicacao do meu orientador Jose Gabriel Gomes.

Por fim, mas nao menos importante, agradeco a toda famılia da Engenharia

Eletronica e de Computacao da UFRJ, que mesmo que nao percebam fazem meus

dias mais alegres.

v

RESUMO

A tecnologia, nos dias atuais, evolui cada vez mais rapido. Muitos dispositivos

foram desenvolvidos com apenas uma aplicacao, mas precisa de apenas um olhar

diferente para ver que e possıvel usar em mais de uma maneira. Este projeto ira

mostrar, como e possıvel a utilizacao de uma tecnologia desenvolvida recentemente

para detectar a presenca de uma pessoa e mostrar a viabilidade de utilizacao da

rede neural para prever a posicao de uma pessoa.

Palavras-Chave: dongle, beacon, RSSI, radiofrequencia, rede neural.

vi

ABSTRACT

Nowadays, new technologies arrive at this world very fast. Many devices have

been developed for just one application, but one can see that it is possible to use

them in more than one way by just looking at them differently. This project will

show how it is possible to use a recently developed technology to detect the presence

of a person, and the viability of using a neural network to predict the position of

someone.

Keywords: dongle, beacon, RSSI, radiofrequency, neural network.

vii

SIGLAS

BLE - Bluetooth Low Energy

RSSI - Received Signal Strength Indication

IA - Inteligencia Artificial

GPS - Global Positioning System

viii

Sumario

1 Introducao 1

1.1 Tema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2 Delimitacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.3 Justificativa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.4 Objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.5 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.6 Descricao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2 Fundamentacao Teorica 4

2.1 Inteligencia Artificial . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2.2 Rede Neural . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2.3 Trabalhos Anteriores . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

3 Projeto do Sistema 7

3.1 Coleta de Dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

3.2 Amostragem de Media Movel . . . . . . . . . . . . . . . . . . . . . . 8

3.3 Sistema da Rede Neural . . . . . . . . . . . . . . . . . . . . . . . . . 9

3.3.1 Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

3.3.2 Alvos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3.3.3 Caracterısticas da Rede Neural . . . . . . . . . . . . . . . . . 11

4 Resultado 13

4.1 Entrada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

4.1.1 Posicao 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

4.1.2 Posicao 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

4.1.3 Posicao 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

ix

4.1.4 Posicao 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

4.1.5 Posicao 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

4.1.6 Posicao 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

4.1.7 Posicao 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

4.1.8 Posicao 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

4.2 Alvos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

4.3 Saıda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

4.3.1 Rede Neural Treinada . . . . . . . . . . . . . . . . . . . . . . 25

4.3.2 Amostras da Saıda . . . . . . . . . . . . . . . . . . . . . . . . 25

5 Conclusao 36

5.1 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

Bibliografia 38

x

Lista de Figuras

2.1 Dongle BL620. Fonte: [9]. . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.2 Beacon BL600. Fonte: [10]. . . . . . . . . . . . . . . . . . . . . . . . . 6

3.1 Diagrama do projeto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

3.2 Vista superior da sala vazia. . . . . . . . . . . . . . . . . . . . . . . . . 8

3.3 Graficos com diferentes perıodos para a media movel. . . . . . . . . . . . 10

3.4 Topologia da rede neural utilizada. . . . . . . . . . . . . . . . . . . . . . 10

3.5 Vista superior da sala de reunioes com as posicoes utilizadas no projeto. . 11

4.1 Vista superior com uma pessoa na posicao 1. . . . . . . . . . . . . . . . 14

4.2 Grafico dos valores RSSI da posicao 1 comparados com os valores da sala

vazia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

4.3 Vista superior com uma pessoa na posicao 2. . . . . . . . . . . . . . . . 15

4.4 Grafico dos valores RSSI da posicao 2 comparados com os valores da sala

vazia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

4.5 Vista superior com uma pessoa na posicao 3. . . . . . . . . . . . . . . . 16

4.6 Grafico dos valores RSSI da posicao 3 comparados com os valores da sala

vazia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

4.7 Vista superior com uma pessoa na posicao 4. . . . . . . . . . . . . . . . 18

4.8 Grafico dos valores RSSI da posicao 4 comparados com os valores da sala

vazia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

4.9 Vista superior com uma pessoa na posicao 5. . . . . . . . . . . . . . . . 19

4.10 Grafico dos valores RSSI da posicao 5 comparados com os valores da sala

vazia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

4.11 Vista superior com uma pessoa na posicao 6. . . . . . . . . . . . . . . . 20

xi

4.12 Grafico dos valores RSSI da posicao 6 comparados com os valores da sala

vazia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

4.13 Vista superior com uma pessoa na posicao 7. . . . . . . . . . . . . . . . 22

4.14 Grafico dos valores RSSI da posicao 7 comparados com os valores da sala

vazia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

4.15 Vista superior com uma pessoa na posicao 8. . . . . . . . . . . . . . . . 23

4.16 Grafico dos valores RSSI da posicao 8 comparados com os valores da sala

vazia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

4.17 Vista superior da sala com as coordenadas. . . . . . . . . . . . . . . . . 24

4.18 Desempenho da rede neural ao longo do treino: erro medio quadratico

calculado sobre os conjuntos de dados para treino, validacao e teste. . . . 25

4.19 Grafico do histograma de erro da rede neural treinada. . . . . . . . . . . 26

4.20 Regressao da rede neural treinada. . . . . . . . . . . . . . . . . . . . . . 27

4.21 Vista superior da sala com a posicao 1. . . . . . . . . . . . . . . . . . . 27

4.22 Saıda da rede neural para a posicao 1. . . . . . . . . . . . . . . . . . . . 28

4.23 Vista superior da sala com a posicao 2. . . . . . . . . . . . . . . . . . . 28

4.24 Saıda da rede neural para a posicao 2. . . . . . . . . . . . . . . . . . . . 29

4.25 Vista superior da sala com a posicao 3. . . . . . . . . . . . . . . . . . . 29

4.26 Saıda da rede neural para a posicao 3. . . . . . . . . . . . . . . . . . . . 30

4.27 Vista superior da sala com a posicao 4. . . . . . . . . . . . . . . . . . . 30

4.28 Saıda da rede neural para a posicao 4. . . . . . . . . . . . . . . . . . . . 31

4.29 Vista superior da sala com a posicao 5. . . . . . . . . . . . . . . . . . . 31

4.30 Saıda da rede neural para a posicao 5. . . . . . . . . . . . . . . . . . . . 32

4.31 Vista superior da sala com a posicao 6. . . . . . . . . . . . . . . . . . . 32

4.32 Saıda da rede neural para a posicao 6. . . . . . . . . . . . . . . . . . . . 33

4.33 Vista superior da sala com a posicao 7. . . . . . . . . . . . . . . . . . . 33

4.34 Saıda da rede neural para a posicao 7. . . . . . . . . . . . . . . . . . . . 34

4.35 Vista superior da sala com a posicao 8. . . . . . . . . . . . . . . . . . . 34

4.36 Saıda da rede neural para a posicao 8. . . . . . . . . . . . . . . . . . . . 35

xii

Lista de Tabelas

3.1 Caracterısticas da rede neural. . . . . . . . . . . . . . . . . . . . . . . 12

4.1 Valores do alvo para a rede neural para cada configuracao. . . . . . . 24

xiii

Capıtulo 1

Introducao

1.1 Tema

Beacon e um hardware que possui o protocolo de comunicacao Bluetooth Low

Energy (BLE), cujo nome deve-se ao baixo consumo de energia. Sua aplicacao

principal e a Internet das Coisas, ou seja, tem como objetivo conectar os itens

usados no dia a dia a rede mundial de computadores [1].

Pode-se usar a conexao do Bluetooth do celular para fazer o envio e o recebi-

mento de comandos. Entretanto, a empresa Laird Technologies, que desenvolveu

um beacon, percebeu que quanto mais proximo o beacon estava do celular, maior

era a sua potencia. A partir daı, surgiu o estudo para saber a possibilidade do uso

do beacon na localizacao de um corpo pontual, ou seja, um corpo qualquer onde

nao e considerada a massa do mesmo. E ao inves do uso do celular para captar o

sinal emitido pelo beacon, chamado de Received Signal Strength Indication (RSSI),

utilizou-se um dongle Bluetooth (adaptador Bluetooth USB) conectado a um com-

putador que guardava os dados. Essa troca foi necessaria, pois o sinal de telefone

do celular influenciava no sinal recebido pela conexao Bluetooth.

A analise dos dados recebidos pelo dongle foi feita atraves de redes neurais, pois

precisamos de um processamento, cujas entradas sejam os dados do sinal RSSI

recebido e que a saıda seja a posicao do corpo pontual e que esse processamento seja

inteligente para determinar a posicao sozinho.

1

Sendo assim, utilizou-se a variacao do sinal RSSI recebido por um dongle como

entrada da rede e a saıda foi a posicao cartesiana dentro de um espaco delimitado.

Com o resultado encontrado, sera possıvel saber a viabilidade dessa aplicacao.

1.2 Delimitacao

Este projeto foi em sua grande parte realizado na empresa Laird Technologies

em Wycombe, na Inglaterra, onde foram cedidas as ferramentas necessarias para

a execucao do mesmo. A corporacao tinha a curiosidade de utilizar o beacon que

eles produziam em outra aplicacao que nao fosse para ser apenas um hardware para

comunicacao remota.

O beacon e um hardware que utiliza BLE para emitir sinal. Este tipo de comu-

nicacao e realizada atraves de envios regulares de sinal, cujo intervalo e configuravel,

e de apenas um sentido. Portanto, o beacon so emite sinal e precisa de um outro

dispositivo, podendo ser um smartphone ou um dongle Bluetooth, capaz de receber

esse sinal. O padrao BLE tem uma faixa de transmissao de cem metros, sendo

melhor utilizado em ambientes fechados [2].

O conceito de inteligencia artificial (IA) pode ser utilizado no processamento dos

dados gerados a partir dos beacons. A mesma faz parte da ciencia da computacao

que define a capacidade de maquinas de aprender, envolve “raciocınio, conhecimento,

planejamento, aprendizagem, comunicacao, percepcao e capacidade de mover e ma-

nipular objetos”[3].

Existem duas categorias dentro da metodologia para usar IA que sao inteligencia

artificial simbolica e inteligencia computacional. A ultima contem rede neural como

um dos seus metodos utilizados, na qual, este projeto esta focado.

Quanto maior a distancia entre o dongle e o beacon, menores serao os valores de

RSSI captados e maior incerteza nos mesmos. Sendo assim, na captacao de dados

utilizou-se uma distancia menor do que cinco metros.

2

1.3 Justificativa

Com o avanco da tecnologia, os comandos realizados remotamente estao cada vez

mais sendo utilizados. A comunicacao entre a chave do carro e o carro, por exemplo,

pode usar a comunicacao atraves do BLE, onde e possıvel configurar varios aspectos.

Para se conseguir determinar reacoes a certas situacoes deve se aplicar o conceito de

redes neurais. Assim, este trabalho se propoe a tratar os dados que serao a entrada

e analisar a saıda, verificando se condiz com a realidade.

1.4 Objetivo

O objetivo principal deste trabalho e saber a viabilidade do uso de redes neu-

rais para detectar um corpo pontual dentro de uma regiao especıfica por meio de

radiofrequencia.

1.5 Metodologia

Usando os avancos na tecnologia de deteccao, ferramentas como os beacons e

dongles podem monitorar o ambiente durante o processamento de seus valores em

um computador e alimentando uma rede neural, a fim de desenvolver um sistema

apropriado para a deteccao de corpos pontuais.

1.6 Descricao

No Capıtulo 2 sera mostrada a fundamentacao teorica utilizada neste trabalho.

O Capıtulo 3 apresenta o projeto do sistema desenvolvido e a coleta de dados.

Ja no Capıtulo 4, os resultados da redes neurais sao mostrados.

E, por fim, e apresentada a conclusao.

3

Capıtulo 2

Fundamentacao Teorica

2.1 Inteligencia Artificial

O inıcio do conceito de Inteligencia Artificial vem desde a Antiguidade Classica

(sec VII a.C. - V d.C.) com o surgimento das maquinas para facilitar o trabalho

intelectual dos homens. Com o tempo, elas foram evoluindo e ganhando cada vez

mais lugar para substituir o ser humano em certas tarefas [4].

Alan Turing propos o jogo da imitacao, no qual uma maquina imitaria os compor-

tamentos humanos em um jogo contra o mesmo e, se ela ganhasse, estaria compro-

vado que e uma maquina inteligente. Assim, em 1937, ele criou uma que refazia o

comportamento do agente que a executava. Foi uma base para a criacao do primeiro

computador dele [4].

A Inteligencia Artificial se tornou uma ciencia em 1956 e ate hoje existe uma fonte

inesgotavel de topicos para pesquisar [4].

2.2 Rede Neural

Rede neural e uma aplicacao de inteligencia artificial que tem como um de seus

focos o reconhecimento de padroes [5]. Exatamente, por este motivo, ela foi utilizada

neste projeto, ja que e necessario reconhecer a variacao do sinal RSSI para descobrir

onde esta o corpo pontual.

4

Figura 2.1: Dongle BL620. Fonte: [9].

Existem diferentes topologias de uma rede neural, em que cada uma se adapta

melhor em certas ocasioes. Neste projeto utilizou-se o auxılio da ferramenta Matlab

[6], ja que o objetivo nao era desenvolver a melhor rede neural e sim, uma que

mostrasse a viabilidade do trabalho.

2.3 Trabalhos Anteriores

A Laird Technologies tinha o interesse em conhecer a viabilidade do uso de redes

neurais nos componentes deles, pois nao sabiam nem como processar o sinal e muito

menos tirar informacoes deles.

No inıcio do projeto foi feita uma pesquisa para saber se algum outro trabalho

tinha o mesmo objetivo deste. Foram encontrados dois, mas que nao utilizam as

mesmas ferramentas que este.

Os projetos [7] e [8] tem o mesmo embasamento que este trabalho, pois eles

utilizam os valores do sinal RSSI para determinar a posicao de algo. Contudo, eles

utilizam GPS (Global Positioning System) para saber a posicao ao inves de utilizar

o dongle BL600 [9], produzido pela Laird Technologies. No caso, GPS possui um

alcance muito maior que o beacon, todavia seu sinal nao e tao preciso em lugares

fechados, como o sinal do beacon.

5

Figura 2.2: Beacon BL600. Fonte: [10].

O beacon, na Figura 2.2, e um hardware que envia um sinal e o dongle, na Figura

2.1, e um dispositivo que recebe este sinal, o RSSI do beacon. Estes equipamentos

foram essenciais neste projeto para trabalhar com as amostras de RSSI.

Com algumas experiencias basicas, foi possıvel perceber que quanto mais perto o

beacon estava do dongle, maior era o seu valor RSSI, e se algo estava entre os dois,

o valor diminuıa.

Com base nisto, este trabalho ira explorar os valores de RSSI quando algo esta

entre os dispositivos, saber se e possıvel detectar a presenca de um corpo pontual e

sua posicao utilizando a rede neural.

6

Capıtulo 3

Projeto do Sistema

A primeira etapa deste projeto foi a coleta de dados, conforme mostra a Figura

3.1, onde os valores RSSI foram coletados em uma sala de reunioes. Para isso, os

materiais necessarios foram quatro beacons e um dongle.

A segunda etapa e a analise dos dados, onde a media movel e calculada, mostrando

a diferenca do sinal recebido no dongle de cada beacon, com o objetivo de encontrar

um padrao.

Esta secao mostrara em detalhes como os valores foram processados e usados como

entrada para a rede neural.

Figura 3.1: Diagrama do projeto.

7

Figura 3.2: Vista superior da sala vazia.

3.1 Coleta de Dados

O experimento foi realizado em uma sala de reunioes, que continha objetos que

poderiam aumentar o numero de vezes que um sinal era refletido, como: cadeiras,

televisao, quadro e mesa. Nas diversas coletas de dados, os objetos citados acima

permaneceram imoveis, garantindo que cada experimento fosse submetido as mesmas

condicoes.

Os beacons foram colocados um em cada canto da sala e cada um deles com

um numero de serie, sendo os dois ultimos algarismos utilizados com a intencao

da identificacao dos mesmos. O dongle foi colocado no centro da mesa, para ter a

mesma distancia de cada um dos beacons, como mostrado na Figura 3.2.

3.2 Amostragem de Media Movel

As amostras foram processadas fazendo a media de certa quantidade de valores

das amostras do sinal por segundo. Portanto, calculando a media movel, como

8

mostrado nas Equacoes (3.1) e (3.2) [11]:

weight =1

term, (3.1)

M = s · weight, (3.2)

onde o term e o perıodo da media movel; weight e o peso que sera aplicado

nos valores iniciais; M e a matriz da media movel e s e a matriz com as amostras

originais do sinal emitido pelos beacons e recebidos pelo dongle.

Simulacoes foram feitas com diferentes valores para a variavel term para decidir

qual o melhor valor para utilizar, como mostrado na Figura 3.3.

Nos graficos apresentados na Figura 3.3 foi feita uma coleta de dados com a sala

de reuniao vazia e sendo cada linha o sinal de um beacon.

O fator decisivo para escolher foi o que desse menos ruıdo no valor mais baixo

possıvel para que nao perdesse a caracterıstica do sinal. Com isso, o valor 40 para

term foi o escolhido, portanto a cada segundo teremos quatro valores da media

movel.

3.3 Sistema da Rede Neural

Nesta fase, os valores da media movel foram utilizados como entrada da rede

neural. A topologia utilizada esta representada na Figura 3.4. Ela contem quatro

entradas, duas camadas ocultas e duas saıdas. Essa topologia foi escolhida por ser

a padrao do Matlab e por mostrar-se ser adequada a esta aplicacao.

3.3.1 Entradas

Na rede neural, cada beacon representa uma entrada ja processada pela media

movel. Por isso, o numero de entradas da rede neural e igual a quatro.

9

Figura 3.3: Graficos com diferentes perıodos para a media movel.

Figura 3.4: Topologia da rede neural utilizada.

10

Figura 3.5: Vista superior da sala de reunioes com os alvos utilizados no

projeto.

3.3.2 Alvos

Como ilustrado na Figura 3.5, os pontos de 1 a 8 foram configurados como alvos,

sendo cada um com coordenadas x e y.

3.3.3 Caracterısticas da Rede Neural

Depois de os dados serem processados pelo filtro de media movel, a entrada e os

alvos sao normalizados para ter uma media igual a zero e variancia igual a 1. As

outras caracterısticas da rede neural estao apresentadas na Tabela 3.1.

Nos resultados que serao mostrados na proxima secao, a rede neural utilizada teve

quatro entradas que sao os sinais emitidos por cada beacon, duas camadas ocultas,

e duas saıdas que sao os pontos cartesianos.

11

Tabela 3.1: Caracterısticas da rede neural.

Caracterısticas Metodo

Divisao dos Dados Aleatorio

Treinamento Levenberg-Marquadt

Desempenho Erro Quadratico Medio

Funcao de Transferencia nas Camadas Sigmoide

Para escolher a configuracao da rede neural foram feitos testes simples a fim de

saber qual dava o menor erro medio quadratico. Como o foco deste projeto nao e

avaliar a eficiencia das redes neurais e sim a viabilidade do uso delas, nao foi feito

um estudo aprofundado nessa area.

12

Capıtulo 4

Resultado

4.1 Entrada

Os seguintes resultados sao os captados no interior da sala e foram usados como

entrada da rede neural antes do processamento por media movel. Em cada posicao

sera feita uma analise para tentar determinar um padrao.

4.1.1 Posicao 1

A Figura 4.1 mostra como os beacons estao posicionados na sala e onde a pessoa

esta localizada na area marcada. A Figura 4.2 apresenta graficos dos valores RSSI

da posicao 1 comparados com os de uma sala vazia para mostrar a diferenca entre

eles.

Nesta posicao, a pessoa fica mais proxima de dois beacons, o 23 e o 25, e podemos

ver que o valor do sinal aumentou para eles. Enquanto isso, no beacon 27, o sinal

diminui e no 49 continuou o mesmo aparentemente. Comparando os quatro sinais,

podemos ver que o beacon que esta mais proximo, 25, possui o menor valor e o mais

distante, 49, possui o maior valor.

4.1.2 Posicao 2

A Figura 4.3 mostra como os beacons estao posicionados na sala e onde a pessoa

esta localizada na area marcada. A Figura 4.4 apresenta graficos dos valores RSSI

13

Figura 4.1: Vista superior com uma pessoa na posicao 1.

Figura 4.2: Grafico dos valores RSSI da posicao 1 comparados com os valores

da sala vazia.

14

Figura 4.3: Vista superior com uma pessoa na posicao 2.

da posicao 2 comparados com os de uma sala vazia para mostrar a diferenca entre

eles.

Nesta posicao, os beacons mais proximos sao o 25 e o 27. Entretanto, quando

comparado com a sala vazia, apenas o 25 aumentou de valor. Ja nos mais distantes,

o 23 e o 49 se comportaram como se a sala estivesse vazia.

4.1.3 Posicao 3

A Figura 4.5 mostra como os beacons estao posicionados na sala e onde a pessoa

esta localizada na area marcada. A Figura 4.6 apresenta graficos dos valores RSSI

da posicao 3 comparados com os de uma sala vazia para mostrar a diferenca entre

eles.

Nesta posicao, o beacon mais proximo e o 27 e o sinal referente a ele nao foi muito

diferente do obtido com a sala vazia. Os outros beacons ficaram com valores muito

proximos aos do experimento na posicao 2.

15

Figura 4.4: Grafico dos valores RSSI da posicao 2 comparados com os valores

da sala vazia.

Figura 4.5: Vista superior com uma pessoa na posicao 3.

16

Figura 4.6: Grafico dos valores RSSI da posicao 3 comparados com os valores

da sala vazia.

4.1.4 Posicao 4

A Figura 4.7 mostra como os beacons estao posicionados na sala e onde a pessoa

esta localizada na area marcada. A Figura 4.8 apresenta graficos dos valores RSSI

da posicao 4 comparados com os de uma sala vazia para mostrar a diferenca entre

eles.

Ja nesta posicao, os beacons mais proximos sao os 27 e o 49. Apenas o 27 teve

um comportamento diferente do observado na sala vazia. O 25 e o 23 mantiveram

aparentemente os valores do experimento anterior.

4.1.5 Posicao 5

A Figura 4.9 mostra como os beacons estao posicionados na sala e onde a pessoa

esta localizada na area marcada. A Figura 4.10, apresenta graficos dos valores RSSI

da posicao 5 comparados com os de uma sala vazia para mostrar a diferenca entre

eles.

Este e o primeiro experimento em que o beacon 49 tem um comportamento dife-

rente do observado na sala vazia, provavelmente por ser o mais proximo. Enquanto

17

Figura 4.7: Vista superior com uma pessoa na posicao 4.

Figura 4.8: Grafico dos valores RSSI da posicao 4 comparados com os valores

da sala vazia.

18

Figura 4.9: Vista superior com uma pessoa na posicao 5.

isso, o valor RSSI do beacon 27 diminuiu o valor e o 26 e o 25 continuaram no mesmo

padrao.

4.1.6 Posicao 6

A Figura 4.11 mostra como os beacons estao posicionados na sala e onde a pessoa

esta localizada na area marcada. Ja a Figura 4.12 apresenta graficos dos valores

RSSI da posicao 6 comparados com os de uma sala vazia para mostrar a diferenca

entre eles.

Nesta posicao, os dois beacons mais proximos sao o 23 e o 49, que nao tiveram o

mesmo padrao. Enquanto um diminuiu, o outro aumentou, respectivamente. O 25

e o 27 tiveram comportamentos bem semelhantes a outros experimentos.

4.1.7 Posicao 7

A Figura 4.13 mostra como os beacons estao posicionados na sala e onde a pessoa

esta localizada na area marcada. Ja a Figura 4.14 apresenta graficos dos valores

RSSI da posicao 7 comparados com os de uma sala vazia para mostrar a diferenca

entre eles.

19

Figura 4.10: Grafico dos valores RSSI da posicao 5 comparados com os

valores da sala vazia.

Figura 4.11: Vista superior com uma pessoa na posicao 6.

20

Figura 4.12: Grafico dos valores RSSI da posicao 6 comparados com os

valores da sala vazia.

O beacon mais proximo e o 23, mas ele nao teve um comportamento muito dife-

rente do observado na sala vazia. Os outros ficaram muito proximos tambem dos

valores da sala vazia.

4.1.8 Posicao 8

A Figura 4.15 mostra como os beacons estao posicionados na sala e onde a pessoa

esta localizada na area marcada. Enquanto, na Figura 4.16 apresenta graficos dos

valores RSSI da posicao 8 comparados com os de uma sala vazia para mostrar a

diferenca entre eles.

Na posicao 8, os beacons mais proximos sao o 23 e o 25 e sao os que tem menor

valor RSSI. Entretanto, o beacon 49, em partes do tempo tem valores parecidos com

os do 23.

4.2 Alvos

Os alvos foram representados em coordenadas retangulares, sendo a origem o

ponto em azul no canto inferior esquerdo na Figura 4.17.

21

Figura 4.13: Vista superior com uma pessoa na posicao 7.

Figura 4.14: Grafico dos valores RSSI da posicao 7 comparados com os

valores da sala vazia.

22

Figura 4.15: Vista superior com uma pessoa na posicao 8.

Figura 4.16: Grafico dos valores RSSI da posicao 8 comparados com os

valores da sala vazia.

23

Figura 4.17: Vista superior da sala com as coordenadas.

A distancia foi medida com uma fita metrica simples, ja que este projeto nao tem

preocupacao com a precisao. As medidas adquiridas estao apresentadas na Tabela

4.1.

Tabela 4.1: Valores do alvo para a rede neural para cada configuracao.

Posicao X(mm) Y(mm)

1 1130 1045

2 1130 1725

3 1130 2325

4 1700 2875

5 2700 2375

6 2700 1725

7 2700 1045

8 1700 375

24

Figura 4.18: Desempenho da rede neural ao longo do treino: erro medio

quadratico calculado sobre os conjuntos de dados para treino, validacao e

teste.

4.3 Saıda

4.3.1 Rede Neural Treinada

A Figura 4.18 mostra que o erro quadratico medio do teste, da validacao e do

treinamento converge para um valor pequeno. A Figura 4.19 mostra que o erro da

saıda da rede neural esta bem pequeno para os alvos configurados. E a Figura 4.20

mostra o ajuste dos dados a uma curva. Assim, essas figuras caracterizam a rede

neural e mostram que o treinamento foi eficiente.

4.3.2 Amostras da Saıda

Quando desejamos saber qual e a resposta da rede neural para dados referentes a

uma posicao especıfica da pessoa na sala, os alvos referentes a esta posicao nao sao

mostrados a rede neural.

Nas Figuras 4.21, 4.23, 4.25, 4.27, 4.29, 4.31, 4.33 e 4.35 estao os pontos onde

25

Figura 4.19: Grafico do histograma de erro da rede neural treinada.

seria a solucao ideal da rede neural. Nas Figuras 4.22, 4.24, 4.26, 4.28, 4.30, 4.32,

4.34, 4.36 esta a saıda da rede neural para cada posicao referente a mesa que fica

no centro da sala de reuniao.

A Figura 4.22 mostra uma certa concentracao dos pontos ao redor do alvo espe-

rado. Entretanto, as regioes das Figuras 4.24, 4.26 e 4.28 ficaram muito dipersas.

As regioes mostradas nas Figuras 4.30, 4.30 e 4.34 ficaram mais concentradas, entre-

tanto afastadas da mesa. Na Figura 4.36, regiao dos pontos da saıda da rede neural

foram os mais concentrados perto do alvo.

26

Figura 4.20: Regressao da rede neural treinada.

Figura 4.21: Vista superior da sala com a posicao 1.

27

Figura 4.22: Saıda da rede neural para a posicao 1.

Figura 4.23: Vista superior da sala com a posicao 2.

28

Figura 4.24: Saıda da rede neural para a posicao 2.

Figura 4.25: Vista superior da sala com a posicao 3.

29

Figura 4.26: Saıda da rede neural para a posicao 3.

Figura 4.27: Vista superior da sala com a posicao 4.

30

Figura 4.28: Saıda da rede neural para a posicao 4.

Figura 4.29: Vista superior da sala com a posicao 5.

31

Figura 4.30: Saıda da rede neural para a posicao 5.

Figura 4.31: Vista superior da sala com a posicao 6.

32

Figura 4.32: Saıda da rede neural para a posicao 6.

Figura 4.33: Vista superior da sala com a posicao 7.

33

Figura 4.34: Saıda da rede neural para a posicao 7.

Figura 4.35: Vista superior da sala com a posicao 8.

34

Figura 4.36: Saıda da rede neural para a posicao 8.

35

Capıtulo 5

Conclusao

O intuito desse projeto foi tirar a curiosidade das pessoas que trabalham com co-

municacao sem fio na empresa Laird Technologies: se, usando beacons, seria possıvel

tambem determinar a localizacao de um corpo pontual, alem da funcao regular que

eles tem como sensores.

Surgiu a oportunidade de se utilizarem redes neurais para facilitar o trabalho.

Depois de muitos testes, percebeu-se que os sinais nao seguem um padrao logico, as

vezes, acontece o esperado, as vezes nao. Contudo, por mais que a rede neural nao

fosse precisa, ela foi mostrou-se eficaz no seu objetivo. Obteve sucesso ao determinar

uma regiao na qual se esperava que uma pessoa fosse encontrada.

O projeto tem os resultados suficientes para afirmar que para os valores RSSI

recebidos pelo dongle, e possıvel detectar a posicao de um corpo pontual em uma

determinada regiao. A saıda da rede neural mostrou que e viavel usar este metodo

para detectar a posicao da pessoa a partir de amostras de RSSI.

5.1 Trabalhos Futuros

Este projeto foi apenas um estudo preliminar sobre a aplicacao de redes neurais

ao hardware disponıvel (beacons). Ha alguns topicos interessantes para investigacao

futura, como por exemplo os que estao listados a seguir:

• Ao inves de utilizar 4 beacons e 1 dongle, utilizar 4 dongles e um beacon, e o

que mudaria de posicao ao inves de ser a pessoa, seria o beacon.

36

• Fazer testes ao ar livre para saber se aparece alguma diferenca nos resultados.

• Descobrir qual a topologia de rede neural leva aos resultados mais precisos.

37

Referencias Bibliograficas

[1] GOMEZ, C., OLLER, J., PARADELLS, J., “Overview and evaluation of blue-

tooth low energy: An emerging low-power wireless technology”, Sensors, v. 12,

n. 9, pp. 11734–11753, 2012.

[2] NEWMAN, N., “Apple ibeacon technology briefing”, Journal of Direct, Data

and Digital Marketing Practice, v. 15, n. 3, pp. 222–225, 2014.

[3] KALRA, A., SINGH, S., SINGH, S., et al., “Artificial Intelligence and Neural

Network”, International Journal of Advanced Research in Computer Science,

v. 1, n. 3, pp. 203–206, 2010.

[4] MCCORDUCK, P., MINSKY, M., SELFRIDGE, O. G., et al., “History of

Artificial Intelligence.” In: IJCAI, pp. 951–954, 1977.

[5] HAYKIN, S. S., HAYKIN, S. S., HAYKIN, S. S., et al., Neural networks and

learning machines, v. 3. Pearson Education Upper Saddle River, 2009.

[6] “Mathworks”, http://uk.mathworks.com/products/neural-network/, 2014,

(Acesso em 26 de Agosto de 2014).

[7] J. CHEN, H. Q., YAN, X., “Localization algorithm using improved RSSI”,

Journal of Information and Computational Science, v. 10, n. 15, pp. 4809–4817,

2013.

[8] X. YAN, Q. H., YU, J., “A selective beacon node 3D location estimation based

on RSSI for wireless sensor network”, Information Technology Journal, v. 12,

n. 2, pp. 409950, 2013.

[9] “BL620”, http://www.lairdtech.com/products/bl620-us/, 2015, (Acesso em 7

de Fevereiro de 2016).

38

[10] “BL600”, http://www.lairdtech.com/products/bl600-series/, 2015, (Acesso em

7 de Fevereiro de 2016).

[11] “Mathworks”, http://www.mathworks.co.uk/help/econ/moving-average-

trendestimation.html, 2014, (Acesso em 26 de Agosto de 2014).

39

BL600 Series

Single-Mode BLE Module Featuring smart BASIC

USA: +1.800.492.2320

Europe: +44.1628.858.940

Asia: +852.2268.6567

[email protected]

www.lairdtech.com/wireless

BL600 Series modules from Laird

Technologies make it easy to add single-

mode Bluetooth Low Energy (BLE), or

Bluetooth Smart™, to small, portable,

power-conscious devices, including those

powered by AAA or coin cell batteries. The fully approved, programmable modules

feature Laird’s innovative, event-driven smart BASIC programming language,

which significantly simplifies BLE integration.

Based on the award winning Nordic Semiconductor nRF51822 chipset, BL600

modules provide exceptionally low power consumption with outstanding wireless

range, all within a compact footprint of 19 mm x 12.5 mm. The modules

incorporate all the hardware and firmware required to support development of

BLE applications, including:

Radio hardware

UART, SPI, I2C, ADC, and GPIO interfaces for connecting peripherals and

sensors

A complete BLE software stack

GATT-based BLE profiles that include Blood Pressure, Heart Rate, Health

Thermometer, Proximity and Find Me.

Custom Services to suit any application’s needs

What makes the modules unique is smartBASIC, an event-driven programming

language that enables standalone operation of the module whereby sensors can

be attached via any of the interfaces without the need for an external processor. A

simple smartBASIC application encapsulates the complete end-to-end process of

reading, writing, and processing of sensor data and then using BLE to transfer it to

any Bluetooth v4.0 device – smartphone, tablet, gateway, or computer. Ultimately

smartBASIC accelerates initial development, creation of prototypes, and mass

production by providing you with your own BLE expert within the module.

In addition to carrying FCC modular, IC, CE and MIC approvals, BL600 modules

are fully qualified as a Bluetooth End Products, enabling designers to integrate the

modules in devices without the need for further Bluetooth Qualification. A low-

cost developer’s kit including simple software tools simplifies module integration

and guarantees the fastest route to market.

The details contained within the document are subject to change. Download the

product specification from www.lairdtech.com/wireless for the most current

specification.

BL600 Series

Single-Mode BLE Module Featuring smart BASIC

Version Date Changes Approved By

1.0 08 Jan 15 Initial J. Kaye

CATEGORIES FEATURE IMPLEMENTATION

Wireless Specification Bluetooth® V4.0 – Single-Mode

Frequency 2.402 - 2.480 GHz

Max Transmit Power 4dBm

Receive Sensitivity -91dBm (typical)

Whisper Mode Down to -55dBm (Transmit)

Link Budget 95 dB (@ 1 Mbps)

Raw Data Rates 1 Mbps (over the air)

Host Interfaces Total 28 lines – multi function

UART TX, RX, CTS, RTS DTR, DSR, DCD, RI can be implemented in smartBASIC

Default 9600, N, ,8, 1

From 1,200 to 115,200bps

GPIO Up to 28 lines

SPI 3 lines

I2C 2 lines

ADC 6 lines (plus ADC reference)

Profiles Blood Pressure, Heart Rate, Health Thermometer/ Proximity & Find Me/ Custom Services

Services Generic Access, Battery Service, Device Information Service, Heart Rate Service, Health Thermometer Service, Immediate Alert Service, Link Loss Service, Tx Power Service, Blood Pressure Service

Control Protocols Any that can be implemented using smartBASIC

Encryption AES 128 bit using CCM encryption

Supply Voltage Supply 1.8V – 3.6V – internal LDO 2.1V – 3.6V – internal DCDC converter

Power Consumption Current ‘System Idle’ – 3.5 uA

‘Transmit’ – 10.5 mA @ 0 dBm

Physical Dimensions 19mm x 12.5mm x 3mm

Environmental Operating Temperature

-40° to +85° C when powered at 3.3 V +/- 10% -25° to +75° C when powered at 1.8V (contact Laird for any query)

Storage Temperature -40°C to +85°C

Miscellaneous Lead Free Lead-free and RoHS compliant

Warranty 5-Year Limited Lifetime

Development Tools Development Kit Development board and free Software Tools

Approvals Bluetooth® End Product Listing (EPL)

FCC / IC / CE / MIC All BL600 Series

Ordering Information BL600-SA-0x Single Mode BLE Module featuring smartBASIC (internal antenna) BL600-SC-0x Single Mode BLE Module featuring smartBASIC (IPEX MHF4 antenna connector)

BL600-ST-0x Single Mode BLE Module featuring smartBASIC (trace pin)

DVK-BL600-SA / ST / SC-0x Development Kit for each BL600 series module above

BL620 Series Central Mode BLE Module Featuring smart BASIC

Support Portal: http://ews-support.lairdtech.com

USA: +1.800.492.2320

Europe: +44.1628.858.940

Asia: +852.2268.6567

[email protected]

www.lairdtech.com/bluetooth

The BL600 Series modules from Laird

have been enhanced with the addition

of the BL620 part numbers. The

BL620 uses the same module

hardware as the BL600 but has a new

firmware supporting Central mode connectivity.

The BL620 makes it easy to add single-mode Bluetooth Low Energy (BLE), also

known as Bluetooth Smart™, to small, portable, power-conscious devices,

including those powered by AAA or coin cell batteries.

The unique feature of this module is smartBASIC, an event-driven programming

language that enables standalone operation of the module. smartBASIC on BL620

enables wireless connections to peripheral devices that are in turn connected to

sensors so that the data can be collected via GATT operations. smartBASIC has

been proven to speed time to market and significantly simplifies BLE integration

for embedded devices.

Based on the award winning Nordic Semiconductor nRF51822 chipset, BL620

modules provide exceptionally low power consumption with outstanding wireless

range, all within a compact footprint of 19 mm x 12.5 mm. The modules

incorporate all the hardware and firmware required to support development of

BLE Central mode applications, including:

Radio hardware

UART, SPI, I2C, ADC, and GPIO interfaces for connecting peripherals and

sensors

A complete BLE software stack

Central role functionality with GATT client and server

- Ability to connect up to four simultaneous connections

Custom Services to suit any application’s needs

Series addition of a packaged USB Dongle - BL620-US

The BL620-US USB Dongle has been developed to take advantage of the BL620

module, providing the ability to add BLE Central Mode capabilities to Windows

operating systems supporting a USB interface and virtual COM port. The control

and configuration is via a standard virtual COM port and smartBASIC. The dongle

provides the ability to load smartBASIC applications over the air (OTA) to a BL600

peripheral mode module.

In addition to carrying FCC modular, IC, and CE approvals, BL620 modules are

fully qualified as a Bluetooth End Products, enabling designers to integrate the

modules in devices without the need for further Bluetooth Qualification testing.

Customers can use the DVK-BL600 series low-cost developer’s kit including simple

software tools to develop with the BL620 central mode firmware.

BL620 Series

Central Mode BLE Module Featuring smart BASIC

Version Date Description Approver

1.0 10/15/14 Initial Release JK

CATEGORIES FEATURE IMPLEMENTATION

Wireless Specification Bluetooth® V4.0 – Single-Mode – Central mode

Frequency 2.402 - 2.480 GHz

Max Transmit Power 4dBm

Receive Sensitivity -91dBm (typical)

Whisper Mode Down to -55dBm (Transmit)

Link Budget 95 dB (@ 1 Mbps)

Raw Data Rates 1 Mbps (over the air)

Host Interfaces Total 28 lines – multi function

UART TX, RX, CTS, RTS

DTR, DSR, DCD, RI can be implemented in smartBASIC

(CTS, RTS, DTR, DSR, DCD, and RI are NOT connected on

the BL620-US)

Default 9600, N, ,8, 1

From 1,200 to 115,200bps

GPIO Up to 28 lines

SPI 3 lines

I2C 2 lines

ADC 6 lines (plus ADC reference)

Services GATT Client and Server Capability

Control Protocols Any that can be implemented using smartBASIC

Encryption AES 128 bit using CCM encryption

Supply Voltage Supply 1.8V – 3.6V – internal LDO

2.1V – 3.6V – internal DCDC converter

Power Consumption Current ‘System Idle’ – 3.5uA

‘Transmit’ – 10.5mA @ 0dBm

Physical Dimensions 19mm x 12.5mm x 3mm

Environmental

Operating Temperature -40° to +85° C when powered at 3.3 V +/- 10%

-25° to +75° C when powered at 1.8V

(contact Laird for any query) Storage Temperature -40°C to +85°C

Miscellaneous Lead Free Lead-free and RoHS compliant

Warranty Limited Lifetime Warranty

Development Tools Development Kit Development board and free Software Tools **

Approvals Bluetooth® End Product Listing (EPL)

FCC / IC / CE All BL620 Series

*The details contained within the document are subject to change. Download the product specification from www.lairdtech.com/bluetooth

for the most current specification.

Ordering Information BL620-SA-0x Single Mode BLE Module featuring smartBASIC (internal antenna)

BL620-SC-0x Single Mode BLE Module featuring smartBASIC (IPEX MHF4 antenna connector)

BL620-ST-0x Single Mode BLE Module featuring smartBASIC (trace pin)

BL620-US-0x Packaged BL620 USB Dongle

DVK-BL600-SA / ST / SC-0x Development kit for each BL620 series module

**Use standard DVK-BL600 and upgrade the firmware