A ARITMÉTICA DE INTERVALOS APLICADA À ENGENHARIA Dayanne G. Justino, Elisabete C. Oliveira, Guilherme C. A. Tolentino, Igor S. Peretta, José R. Camacho. Universidade Federal de Uberlândia, Faculdade de Engenharia Elétrica/Núcleo de Eletricidade Rural e Fontes Alternativas de Energia, Uberlândia-MG, [email protected]. Resumo - Precisão e inteligência dos algoritmos é uma exigência cada vez maior nos métodos modernos de solução em Ciências Exatas e Engenharia. Ao se considerar este aspecto é interessante utilizar manipulações algébricas, em que, uma maior quantidade de informação pudesse ser agregada aos resultados. Neste trabalho foi feita uma análise introdutória à utilização da Aritmética de Intervalos, onde se mostra com exemplos a base da sua utilização e a sua importância para o ramo das ciências exatas. Palavras-Chave – Aritmética de Intervalos, Precisão, Algoritmos, Estatística. INTERVAL ARITHMETICS APPLIED TO ENGINEERING Abstract– Precision and intelligence of algorithms is a growing requirement on modern methods of solution in Exact Sciences and Engineering. When considering this aspect is interesting to use algebraic manipulations in which a greater amount of information could be aggregated to results. In this work was made an introductory analysis of the use of Interval Arithmetics, which shows with examples the base of their use and importance to the field of exact sciences. Keywords – Interval Arithmetic, Precision, Algorithms, Statistics NOMENCLATURA1 AI - aritmética de intervalos. I. INTRODUÇÃO As aproximações e arredondamentos da matemática computacional são ferramentas muito utilizadas por muitos cientistas e projetistas na área de tecnologia. Estes recursos, entretanto, devem ser tratados com muito cuidado, sempre levando em consideração as aproximações e a quantidade de algarismos significativos [1]. A importância desta discussão pode ser questionada quando o número de operações é pequeno, ou no caso de experimentos de menor escala ou que não tenham exigência de grande precisão. Mas mesmo nestes casos a AI introduz informação adicional quando comparada com a aritmética convencional. Em grandes projetos, onde o número de operações matemáticas é muito grande, a precisão dos números tem a sua importância bastante aumentada. O número de algarismos significativos passa a tornar-se de importância fundamental nos cálculos iterativos em grande escala. O intuito neste caso é aumentar a precisão para que os resultados dos cálculos forneçam a segurança desejada ao projetista. A AI fornece ao projetista, além dos resultados dos cálculos, o grau de confiança que se pode ter em uma determinada série de operações executadas. Este tipo de cálculo garante mais segurança ao que vai ser efetivamente executado. Isto pode representar, durante a criação de um protótipo, uma maior confiança no produto final com economia de peças e materiais. Quando se faz cálculos para qualquer área no campo da engenharia, é comum da parte do usuário a execução de truncamento e arredondamento, ou a própria calculadora gera erros de arredondamento ou de truncamento, podendo produzir depois de um número significativo de iterações grandes desvios no resultado final. A AI é um modelo de cálculo no qual cada valor real pode ser representado por um intervalo, entre um valor máximo e um mínimo, que garante conter o valor real. É possível submeter esses intervalos às quatro operações aritméticas básicas, da mesma forma que qualquer número real. Como resposta do conjunto de operações executadas temos um intervalo no qual existe garantia de que nele está contida a resposta. A AI é um importante recurso de cálculo em engenharia, mas que é pouco explorado atualmente. Um dos motivos para a pequena utilização desta ferramenta é a extensiva utilização da aritmética de ponto flutuante considerando a precisão nas casas decimais. Ao invés disso a AI fornece precisão concentrada na diferença entre dois números, um valor máximo e outro mínimo que representam o valor calculado. II. ARITMÉTICA DE INTERVALOS Na AI um número real ou um intervalo é representado por um par [a; b] de números reais, onde este par representa a tolerância máxima e mínima de um número ou um intervalo de números reais a ≤ x ≤ b. Por definição, cada número é representado na AI por um intervalo de valores. Desta forma, as operações matemáticas elementares precisam ter nova definição para poderem ser utilizadas em matemática computacional. Um intervalo [a; b] tem natureza dual, porque é representado por um par de números que também representa um conjunto [a; b] = {x: a ≤ x ≤ b} de valores aceitos para a sua representação numérica [2]. Por exemplo, um resistor comercial de 1500Ω±1% pode ter um valor qualquer entre 1485 e 1515, este resistor seria representado pelo par [a; b] =[1485; 1515] Ω. É possível, portanto programar um computador para fazer cálculos algébricos elementares utilizando a AI e fornecer como resposta um intervalo. Neste intervalo estará a faixa de valores possíveis para a resposta, ou mesmo a resposta correta e a margem de erro superior e inferior para os cálculos em questão. Na AI inicia-se portanto pelos cálculos básicos da matemática definidos como se segue [3],[5]: - soma de dois números ou intervalos: [a; b] +[c; d] = [a + c; b + d] (1) - subtração de dois números ou intervalos: [a; b]-[c; d] = [a – d; b - c] (2) - produto de dois números ou intervalos: [a; b]*[c; d] = [min(ac, ad, bc, bd); max(ac, ad, bc, bd)]. (3) - divisão de dois números ou intervalos: [a; b]/[c; d] = [min(a/c, a/d, b/c, b/d); max(a/c, a/d, b/c, b/d)] (4) 1/[a; b] = [1/b; 1/a]. (5) Suponha agora que se está medindo um campo retangular. Não importa o quão cuidadosamente as estimativas sejam feitas, nunca se estará certo das dimensões exatas. Pode ser afirmado com confiança que os valores corretos estejam dentro de certas margens. Neste caso admite-se com confiança que o comprimento não é inferior a 68 e nem superior a 72 metros, enquanto que a largura está entre 49 e 51 metros. Então se pode afirmar com idêntica confiança que a área do campo esteja em algum valor entre 3.332m2 e 3.672m2. Isto é a aritmética de intervalos em ação: [68; 72]*[49; 51] = [3.332; 3.672]. Os pares entre colchetes [a; b] significam os intervalos de a até b inclusive, com a ≤ b. III. LIMITAÇÕES DA ARITMÉTICA DE INTERVALOS De acordo com Franciosi [4], “uma das limitações da aritmética intervalar refere-se ao rápido aumento dos limites de erro dos resultados produzidos”. Para o leitor entender essa limitação, são utilizados os recursos da AI para cálculo de equivalência de resistências verificamos que, ao calcular a equivalência de dois resistores em paralelo mais um terceiro em série, temos duas formas de fazê-lo: - pela equação original: = + (6) - pela equação reduzida: = × + (7) Como exemplo, na Figura 1, R1 e R2 são resistências de 1800Ω ± 1% e R3 é a resistência de 100 Ω ± 1%. Fig. 1. Combinação de resistores. Fazendo uso da aritmética convencional, as duas equações fornecem resultados idênticos ( = 1000Ω). É preciso ser cuidadoso com a AI, pois essas duas configurações de cálculos dão resultados distintos, para a configuração dos resistores da Figura 1. Pela equação original se obtém: = [990; 1.010]Ω E pela equação reduzida é obtido o seguinte resultado: = [972,3564; 1.028,3636]Ω. Onde Req é a resistência equivalente dos três resistores em arranjo série e paralelo na Figura 1; e é possível verificar que ⊆ . O aumento dos limites de erro do resultado da equação reduzida indica que, para a aritmética de intervalos, a maneira mais confiável de fazer o cálculo da resistência equivalente quando temos resistores paralelos é executar as operações em sua forma original. Outro indicador que pode ajudar na escolha é que o resultado da forma original possui como ponto médio o valor da resistência equivalente calculado pela aritmética convencional. Além disso, reproduz corretamente a tolerância de ±1%, já que todas as resistências envolvidas possuem a mesma tolerância. No exemplo anterior, os resultados diferem porque o conjunto dos números reais intervalares submetidos às operações aritméticas não disporem da propriedade distributiva, ou seja, em intervalos, tem-se que [a]([b]+[c]) ⊆ [a][b]+[a][c]. Isto porque a utilização da AI só faz sentido se usada com outras ferramentas, isso porque os intervalos não constituem um universo auto-suficiente [4]. IV. EXEMPLO DE APLICAÇÃO AOS CIRCUITOS ELETRÔNICOS Através da AI é possível verificar qual a probabilidade do circuito de um transistor com polarização estável do emissor mudar de região por influência de diferentes tolerâncias das resistências usadas na montagem do circuito. Para tanto, é necessário recordar que o transistor possui três regiões de operação: regiões de corte, ativa e saturação. Na região de corte, as junções base-emissor e base-coletor são polarizadas reversamente; na região ativa, a junção baseemissor é polarizada diretamente e a junção base-coletor, polarizada reversamente; já na região de saturação, as duas junções, base-coletor e base-emissor são polarizadas diretamente [6]. Do catálogo da Phillips, nas tabelas e gráficos que se seguem, considera-se o modelo 1 os transistores BC107A / BC108A, o modelo 2 os BC107B / BC108B / BC109B, e o modelo 3 os BC108C / BC109C. Tabela I Cálculos analíticos do circuito Modelo 1 2 3 Fig. 2. Circuito para a polarização de um transistor. Neste exemplo utilizando o circuito da Figura 2, consideram-se os valores base para as resistências do circuito de três transistores dados na Tabela I, calculados para manter o transistor testado na região ativa. Os cálculos apresentados a seguir referem-se ao transistor do modelo 1 e espera-se que o mesmo opere na região ativa. Através do cálculo com álgebra convencional, são considerados a fonte Vcc = 20V, e β = 180 (valor típico apresentado pelo datasheet do fabricante [7]): VBE~ 0,7 V '(( )'*+ %& = %& = 2∙ * ,-.+ = (8) 20 − 0,7 19,3 = ∴ + 181 ∙ 1.10 2,181 ∙ 101 34 = 5, 678 101 %9 = :%& = 180 ∙ 8,85 ∙ 10)1 ∴ (9) 3; = <, =>8 ) ,2. ?9@ = 20 − 1,6. 10 (10) . 10 + 1.10 ∴ A;B = <C, DA ?9@ = ?&@ − ?&9 ∴ ?&9 = ?&@ − ?9@ (11) A4; = −<E, CA Onde: β - ganho de corrente contínua, VBE - tensão base-emissor, - corrente de base, IB IC - corrente de coletor, VCE - tensão coletor-emissor, RB - resistência de base, RE - resistência do emissor, RC - resistência do coletor, VBC - tensão base-coletor, VCC - fonte de tensão continua. Calculando esses valores para os três modelos na Tabela I, tem-se: IB (µA) 8,8675 8,4417 7,6715 IC (mA) 1,6000 2,4500 4,0000 VCE (V) 15,2115 12,6557 8,0323 VBC (V) -14,5515 -11,9957 -7,3723 Pelos cálculos utilizando álgebra convencional, a configuração proposta para os resistores de polarização atende os requisitos de projeto para quaisquer dos transistores, ou seja, o transistor a ser escolhido operará na região ativa. Entretanto, o fabricante fornece um intervalo possível para os ganhos em corrente contínua (β) dos transistores. O fabricante dos resistores fornece também uma tolerância para os mesmos. Como garantir que o transistor utilizado estará operando na região ativa? A AI pode ajudar muito neste caso. A fonte CC utilizada para aplicar VCC é a FA-3030 digital simétrica 30V/3A. Fazendo os cálculos com os intervalos fornecidos pelos fabricantes e utilizando as operações de AI, tem-se: VCC = 20±1%V = [19,8; 20,2]V β = [MIN MAX] (ver datasheet [8]) RC = [1,98; 2,02]KΩ (tolerância ±1%) RB = [1.980; 2.020]KΩ (tolerância ±1%) RE = [0,99; 1,01]KΩ (tolerância ±1%) RC = [1,80; 2,20]KΩ (tolerância ±10%) RB = [1.800; 2.200]KΩ (tolerância ±10%) RE = [0,90; 1,10]KΩ (tolerância ±10%) Os resultados estão apresentados na Tabela II (resistores com tolerância ±1%) e na Tabela III (resistores com tolerância ±10%). Tabela II Cálculos de VCE e VBC para Resistores ±1% Modelo ?9@ = ?99 − %9 ,9 + @ . Beta 180 290 520 1 2 3 Transistor Phillips Resistores ±1% β VCE (V) VBC (V) [110; 220] [13,53; 17,43] [-16,88; -12,76] [200; 450] [7,50; 15,83] [-15,08; -6,73] [420; 800] [-0,07; 11,81] [-11,26; 0,84] Tabela IIII Cálculos de VCE e VBC para Resistores ±10% Modelo 1 2 3 Transistor Phillips Resistores ±10% β VCE (V) VBC (V) [110; 220] [12,29; 17,89] [-17,34; -11,52] [200; 450] [5,07; 16,39] [-15,84; -4,30] [420; 800] [-4,01; 13,20] [-12,65; 4,78] Pode ser notado que o modelo 3 do transistor possui regiões no intervalo de VCE e VBC que inviabilizam sua operação em região ativa. Como analisar essa informação? Com relação aos resistores utilizados para a polarização dos transistores, utiliza-se recurso da estatística, pelo Teorema do Limite Central, que rege o processo de fabricação dos mesmos gera resistores com valores distribuídos por uma curva normal, com média em seu valor nominal. (indesejável neste exemplo), pode-se pode calcular a área destacada na Figura 5: T F[[Y\]] = J^ Fig.3. Curva normal (valor por probabilidade) para fabricação de resistor R = (µ)Ω ±(100·2σ/µ)% Ao determinar tolerâncias, é bastante conservador aceitarmos os limites indicados como sendo duas vezes o desvio padrão da amostragem [8]. Com m isso, assume assume-se que 95,4% dos resistores cairão dentro dos limites da tolerância, como ilustrado na Figura 3. Partindo do mesmo pressuposto, os intervalos calculados para as tensões de polarização também definem curvas normais mais cuja média é equivalente ao ponto central ddo intervalo. Com isso, é possível calcular a probabilidade de certos subintervalos. Para o cálculo da probabilidade P[sat] de o transistor encontrar-se na região de saturação dentro do intervalo encontrado para VCE (indesejável neste exemplo), pode-se calcular a área destacada na Figura 4: ' F[GHI] = J)TP+QRS KLMN O ,UVW. ) X YZ (8) Onde x é o valor de VCE dentro do intervalo, µ é o ponto central do intervalo de VCE e σ é calculado como a metade da distância do ponto central a um dos os extremos. Fig.4. Curva normal (valor por probabilidade) para VCE; a área da região em destaque equivale à probabilidade de valores abaixo do VCEsat (saturação). Fig. 5. Curva normal (valor por probabilidade) para VBC; a área da região em destaque equivale à probabilidade de VBC assumir valores positivos (polarização direta). Para o cálculo da probabilidade P[pdir] de o transistor encontrar-se com a junção base--coletor polarizada diretamente dentro do intervalo encontrado para VBC KLMN O ,UVW. X ) YZ (9) Onde x é o valor de VBC dentro do intervalo, µ é o ponto central do intervalo de VBC e σ é calculado como a metade da distância do ponto central a um dos extremos. Nas Tabelas IV e V são mostradas as probabilidades de saturação e polarização direta do transistor para os 3 modelos de transistores retirados da AI, AI utilizando resistores de ±1% e ±10%. Tabela IV Resistores com tolerância ±1% Modelo 1 2 3 Transistor Phillips Tolerância (1%) Saturação Polarização direta [110; 220] 0,0% 0,0% [220; 450] 0,0% 0,0% [420; 800] 3,2% 4,3% β Tabela V Resistores com tolerância ±10% ±10 Modelo 1 2 3 Transistor Phillips Tolerância (10%) β Saturação Polarização direta [110; 220] 0,0% 0,0% [220; 450] 0,0% 0,0% [420; 800] 15,4% 18,3% Como pode ser observado para a configuração de resistores dada, só é possível garantir que o transistor conseguirá operar na região ativa se for do modelo 1 ou 2. Para o modelo 3, existe a chance da tolerância tolerâ dos resistores influenciar na região de opera peração do mesmo. Por exemplo, para resistores com tolerância de 10%, existe 18,3% de chance numa linha de produção da placa montada com um transistor do modelo 3 não ter sua junção base-coletor base polarizada larizada corretamente (Tabela V). Em outras palavras a AI como ferramenta foi mais útil para o projetista do que a aritmética convencional, uma vez que seus resultados podem garantir a operação operaçã do transistor desejada esejada ou alertar para um possível possí mau funcionamento do circuito. V. CONCLUSÕES Na AI a maneira mais correta corret de se fazer cálculos é manter a forma original das equações. A AI além de fornecer o resultado dos cálculos fornece também resultados resulta adicionais como o intervalo de valores possíveis para a resposta e a sua tolerância. Das aplicações acima se conclui que é necessário revisar a estrutura dos cálculos computacionais utacionais no que diz respeito à AI e sua topologia. Para aplicações plicações em Ciências Físicas e Engenharia é necessário investigar funções de intervalo, sua diferenciação e integração utilizadas izadas efetivamente em exemplos de análise aplicada á problemas reais. A utilização da AI oferece uma contribuição importante para verificação de condições satisfatórias para a existência de solução e de convergência de um algoritmo, análise de erro, construção de limites de um conjunto solução, e a construção de critérios naturais de parada para métodos iterativos. REFERÊNCIAS BIBLIOGRÁFICAS [1] J. Stolfi, L. H. de Figueiredo; “Self Validated Numerical Methods and Applications”; Brazilian Mathematics Colloquium, IMPA, Rio de Janeiro, Brazil; 16 pp, July 1997. [2] R. E. Moore, R. B. Kearfott, M. J. Cloud. “Introduction to interval analysis”, SIAM, United States of America, 2009. [3] B. Hayes, “A Lucid Interval”, American Scientist, Volume 91, Pages 484-488, November–December 2003. [4] B. R. T. Franciosi, “Representação Geométrica de Intervalos”, PPGC da UFRGS, pp. 148, Março 1999. [5] G.I Hargreaves, “Interval Analysis in MATLAB”, Numerical Analysis Report, No. 416, December 2009. [6] R. L Boylestad, L. Nashelsky, “Dispositivos eletrônicos e teoria de circuitos”, Pearson Prentice Hall, 8 Ed, São Paulo, 2004. [7] Data Sheet BC107, BC108, BC109. NPN general purpose transistor Phillips. 1997 Sep 03. [8] D. C. Montgomery, “Estatística aplicada e probabilidade para engenheiros”, 4a Ed, Rio de Janeiro 1943.