Já o problema MuChE é intrinsecamente não binário, pois os vetores de res- posta do canal a serem otimizados pertencem ao domínio dos números complexos. Devido às grandes vantagens associadas à codificação binária e à busca por uma arquitetura simplificada no receptor, buscou-se uma codificação binária efici- ente para o problema MuChE. Adicionalmente, a arquitetura do receptor torna-se mais simples quando tanto o estimador quanto o detector utilizam a mesma estru- tura do algoritmo heurístico para realizar suas otimizações. Isso só é possível se ambos os problemas apresentem a mesma codificação, que neste caso, é binária.
Portanto, este trabalho considera a análise de três possíveis codificações bi- nárias para o problema da estimativa de parâmetros. Essas codificações serão comparadas através da figura de mérito MSE (acurácia) × complexidade (nú-
2
Por exemplo, para mudar do número 7 (0111) para o número 8 (1000) deve-se alterar todos os bits. Na mudança do número 8 (1000) para o 9 (1001), deve-se alterar apenas um bit. Ou seja, mudanças de mesmo efeito final (alteração de uma unidade) no candidato requerem alterações completamente díspares nos candidatos representados de forma binária.
mero de operações), indicando a codificação mais adequada para esse problema. Logicamente, o número de possíveis codificações para esse problema não pode ser definido, deixando margem para a implementação e comparação futura de outras possíveis codificações.
A seguir, são apresentadas as codificações modeladas em ordem cronológica de idealização e implementação.
3.1.2.1 Codificação tipo I
A primeira codificação binária para o problema MuChE adotada consiste inicialmente em separar a resposta do canal zk,ℓ em parte real e parte imaginária,
resultando em dois valores reais:
zℜk,ℓ=|ℜ {zk,ℓ}| e zk,ℓℑ =|ℑ {zk,ℓ}| (3.1)
onde |ℜ{.}| e |ℑ{.}| representam os operadores módulo da parte real e módulo da parte imaginária do número complexo {.}, respectivamente. Após realizar esse procedimento, separa-se zℜ
k,ℓ e zℑk,ℓ em partes inteiras e fracionárias:
χℜ k,ℓ = zℜ k,ℓ e ψℜ k,ℓ = zk,ℓℜ − χℜk,ℓ χℑk,ℓ = zk,ℓℑ e ψℑ k,ℓ = zk,ℓℑ − χℑk,ℓ
onde o operador ⌊x⌋ retorna o maior inteiro inferior a x. Os valores χℜ
k,ℓ e ψℜk,ℓsão
então digitalizados através de um conversor Analógico/Digital (ADC - Analog to Digital Converter ) da forma:
χℜk,ℓ = ADCχℜk,ℓQ int ψℜk,ℓ = ADC " round 1 ψℜ k,ℓ !# Qfrac
onde o operador ADC [·]n converte o valor do argumento em vetor binário com n
bits e a notação ϑ representa versão binária de ϑ.
Os valores para a parte imaginária são digitalizados de forma análoga aos da parte real. As quantidades de bits Qint e Qfrac são parâmetros de entrada do algo-
ritmo e contribuem para a determinação da precisão da solução e complexidade do algoritmo heurístico.
Com isso, define-se a unidade de processamento “parcela do candidato” como sendo o vetor formado pelas partes inteira e fracionária da parte real e imaginária
de zk,ℓ, na sua versão binária, resultando em: Λk,ℓ= h χℜ k,ℓ ψ ℜ k,ℓ χ ℑ k,ℓ ψ ℑ k,ℓ i (3.2) Com isso, o i-ésimo candidato é constituído de KL parcelas, resultando num vetor coluna binário ˘zi dado por:
˘zi = [Λ1,1. . . Λ1,L Λ2,1. . . Λ2,L. . . Λk,1. . . Λk,L. . . ΛK,1. . . ΛK,L]T (3.3)
Portanto, o tamanho de cada candidato será proporcional ao número total de usuários, percursos, número de bits de resolução da parte inteira e fracionária, resultando em um candidato de tamanho Qindiv= 2KL (Qint+ Qfrac) bits.
Logicamente, isso se refere à primeira característica do candidato, ou seja, ao valor absoluto da parte real e imaginária3.
A obtenção do sinal de cada parte do número complexo deve ser compreendido como uma segunda característica do candidato, onde cada sinal, de cada parte do número complexo, pode ser representado por apenas um bit. Com isso, a segunda característica do candidato a ser otimizada é proporcional apenas ao número total de usuários e à quantidade de percursos, resultando em Qsign = 2KL bits.
3.1.2.2 Codificação tipo II
A segunda codificação binária para o problema MuChE adotada consiste em separar a resposta do canal zk,ℓ da mesma maneira que a codificação tipo I, ou
seja, em parte real e parte imaginária segundo a equação (3.1).
Após realizar esse procedimento, digitaliza-se a parte real e imaginária junta- mente com suas partes fracionárias (não são separadas as partes fracionárias das partes inteiras). Esse procedimento visa garantir a não saturação do estimador4 a
partir do emprego da medida de energia (amplitude ou módulo) do sinal recebido no i−ésimo intervalo de bit. Assim, a estimativa dos coeficientes (universo de busca) não contemplará valores proibidos ou que resultam em energia superior à recebida. Portanto, utiliza-se a energia do sinal recebido a cada i−ésimo intervalo de bit como valor superior para o módulo da parte real e imaginária dos coefici- entes. Com isso, a medida da amplitude (módulo) do sinal recebido no i−ésimo
3
Sem considerar o sinal de cada termo.
4
Maior valor possível para a representação do módulo do coeficiente garantidamente superior ao valor verdadeiro do módulo do coeficiente.
intervalo de bit utilizada pode ser facilmente obtida através da relação:
Amax=krik (3.4)
Claramente, observa-se que o valor Amax é o maior valor possível para a
estimativa de amplitude e coeficiente de canal conjuntamente, pois esse valor representa a energia total recebida no i−ésimo intervalo de bit, garantindo uma não saturação da estimativa obtida.
Finalmente, os valores zℜ
k,ℓ e zk,ℓℑ são então digitalizados através de um con-
versor Analógico/Digital da forma: zℜk,ℓ= ADC " Amax zℜ k,ℓ # Qint zℑk,ℓ= ADC " Amax zℑ k,ℓ # Qint
Como no caso da codificação tipo I, a quantidade de bits Qint é um parâ-
metro de entrada do algoritmo e contribui para a determinação da precisão e complexidade do algoritmo heurístico utilizado. Com isso, define-se a unidade de processamento parcela do candidato como sendo o vetor formado pelas partes real e imaginária do número complexo zk,ℓ, na forma binária, resultando em:
Λk,ℓ =
zℜk,ℓ zℑk,ℓ (3.5)
Novamente, o i-ésimo candidato é constituído de KL parcelas, resultando em um vetor coluna binário ˘zi dado pela equação (3.3).
Portanto, para a codificação tipo II, o tamanho de cada candidato será pro- porcional ao número total de usuários, percursos e número de bits de resolução (Qint), resultando em um candidato de tamanho Qindiv= 2KL (2Qint) = 4KLQint
bits.
Da mesma forma que a codificação tipo I, esta análise refere-se à primeira característica do candidato, ou seja, ao valor absoluto da parte real e imaginária5.
Novamente, a obtenção do sinal de cada parte do número complexo deve ser encarado como uma segunda característica do candidato, onde cada sinal, de cada parte do número complexo, pode ser representado por apenas um bit. Com isso, a segunda característica do candidato a ser otimizada é proporcional ao número
total de usuários e a quantidade de percursos apenas, resultando em Qsign = 2KL
bits.
3.1.2.3 Codificação tipo III
A terceira e última codificação implementada e testada neste trabalho visa manipular o coeficiente de canal6 a ser estimado na sua forma polar, ou seja,
módulo e fase.
Logicamente, essa forma de codificação exclui a necessidade da utilização de uma segunda característica ao candidato (sinal de cada parte do número com- plexo), buscando facilitar a implementação e minimizar a complexidade compu- tacional.
Com isso, definem-se as variáveis a serem otimizadas (módulo e fase) da forma: |zk,ℓ| = q (ℜ{zk,ℓ})2 + (ℑ{zk,ℓ})2 (3.6) ∡zk,ℓ = arctg ℑ{zk,ℓ} ℜ{zk,ℓ} (3.7) Após realizar esse procedimento, digitaliza-se o módulo e a fase juntamente com suas partes fracionárias (não são separadas as partes fracionárias das partes inteiras). Novamente, esse procedimento visa garantir a não saturação do estima- dor pela medida da energia (amplitude ou módulo) do sinal recebido no i−ésimo intervalo de bit.
Com isso, utiliza-se o valor Amax, definido na equação (3.4), para a obtenção
do módulo não saturado. No entanto, a fase pode ser encontrada considerando-se apenas o valor de seu ângulo, que está contido entre 0 e 2π.
Portanto, o módulo e a fase de zk,ℓ são digitalizados através de um conversor
ADC da forma: |zk,ℓ| = ADC Amax |zk,ℓ| Qabs ∡zk,ℓ= ADC 2π ∡zk,ℓ Qphs
Novamente, como no caso das codificações anteriores, a quantidade de bits Qabs e Qphs são parâmetros de entrada do algoritmo e contribuem para a deter-
minação da precisão e complexidade do algoritmo heurístico.
Note-se que o coeficiente de canal pode ser facilmente reescrito na sua forma 6Trata-se de um número complexo definido na equação (2.134).
retangular através da relação:
zk,ℓ=|zk,ℓ|ej∡zk,ℓ (3.8)
onde j =√−1.
Com isso, define-se a unidade de processamento parcela do candidato como sendo o vetor formado pelo módulo e fase do coeficiente, na forma binária, resul- tando em: Λk,ℓ = h |zk,ℓ| ∡zk,ℓ i (3.9) Da mesma forma que a codificação do tipo I e II, o i-ésimo candidato para a codificação tipo III é constituído de KL parcelas, resultando em um vetor coluna binário ˘zi dado pela equação (3.3).
Portanto, nesse caso, o tamanho de cada candidato será proporcional ao nú- mero total de usuários, percursos, número de bits de resolução para o módulo e número de bits de resolução para a fase, resultando em um candidato de tamanho Qindiv = 2KL (Qabs+ Qphs) bits.
Logicamente, na codificação tipo III não há a necessidade de uma segunda característica do candidato (sinal), pois o número complexo é descrito na sua forma polar. Com isso, facilita-se uma possível implementação e garante-se uma diminuição da complexidade computacional por geração.
Entretanto, resultados de simulação apresentados no capítulo 5 indicaram que o desempenho obtido pela codificação tipo III é inferior às codificações tipo I e II.
Note-se que, independentemente do tipo de codificação adotado, o objetivo do algoritmo heurístico aplicado ao problema MuChE é otimizar o vetor candidato, para que após o processo de conversão Digital/Analógico (DAC - Digital to Analog Converter ), o respectivo vetor ˘zi apresente um menor valor para a função custo, equação (2.147).