• Nenhum resultado encontrado

Funções spline cúbica com forma preservada

2 REVISÃO BIBLIOGRÁFICA

2.3 CONSTRUÇÃO DE FUNÇÕES SPLINE CÚBICA

2.3.14 Funções spline cúbica com forma preservada

Os segmentos Si(x) são associados para construção da função.

1 0 1

2.3.14 Funções spline cúbica com forma preservada

Kvasov (2000) afirma que o problema de busca de uma função suficientemente suave e que preserve a forma dos dados iniciais é um problema de interpolação com preservação de forma, que apresenta solução não única. Segundo ele, funções spline polinomiais geralmente não preservam propriedades geométricas dos dados. Em seu livro podem ser encontradas condições necessárias e suficientes para que a interpolação por funções spline cúbica preserve a forma para determinado conjunto de dados.

Entre os algoritmos propostos, apresentam métodos com solução em duas etapas, inicialmente determinando os coeficientes da função sem considerar

restrições para monotonicidade ou preservação de forma. Para os intervalos onde a forma não é preservada, aplica-se algum algoritmo para substituição dos coeficientes, obtendo uma função monotônica ou com forma preservada.

Os algoritmos propostos por Kvasov (2000) são apenas locais, não constituindo um minimizador global da curvatura, significando que poderá existir outra função que melhor represente os dados e que produza uma curva mais suave.

Wolberg e Alfy (2002) apresentam uma retrospectiva dos trabalhos realizados na área de interpolação com preservação da forma, iniciando em 1876 com trabalhos de Chebyshev para determinação de design de um controlador de máquina a vapor, com trabalhos mais recentes motivados por problemas em indústrias, incluindo CAD/CAM, VLSI e processamento de sinais, com técnicas tais como de Schweikert (1966) com funções spline sob tensão, com uso de funções exponenciais; vários outros interpoladores com a forma exponencial e de funções spline cúbica são relacionadas a autores entre eles De Boor (1978), Spät (1969), Nielsen (1974), Prues (1976 e 1979).

Para funções spline sob tensão, citam que os parâmetros de tensão são utilizados para controle da forma e os métodos são globais e de classe C2, no entanto com algoritmos complicados para determinação de parâmetros.

Fazem referência, ainda, aos algoritmos com característica de preservação de forma baseados em polinômios de Bernstein que apresentam classe C2, mas que, no entanto requerem polinômios de grau maior que três e a uma alternativa utilizada de interpolação por funções racionais por partes, mas usualmente de classe C1 e com uso restrito a dados estritamente monotônicos ou estritamente convexos.

Fritsch e Carlson (1980) propuseram um algoritmo para cálculo de interpoladores monotônicos por funções spline de Catmull-Rom em um primeiro estágio e atualizando os valores da derivada de primeira ordem em uma segunda fase, de forma a satisfazer as restrições de monotonicidade. Posteriormente, Fritsch e Butland9 (1984, apud Wolberg et Alfy, 2002) apresentaram um método com melhores resultados visuais, com funções segmentadas definidas a partir de Interpolação por Polinômios Cúbicos de Hermite, denominado pchip (Piecewise Cubic Hermite Interpolating Polynomials). Como desvantagens citam que o algoritmo pchip apresenta característica local e que produz curvas de classe C1, mesmo para

9 FRITSCH, F. N. et BUTLAND, J. A method for constrained local monotone piecewise cubic interpolation. SIAM J. Sci. Statist. Comput. 5, p. 300-304, 1984.

casos onde uma solução de classe C2 exista e, ainda, com falta de flexibilidade para definir propriedades específicas eventualmente desejadas, como outra função objetivo ou restrições para o problema de otimização que determina os parâmetros da função.

Segundo Wolberg e Alfy (2002), para um conjunto de dados monotônicos (crescentes ou decrescentes) o ajuste por funções spline cúbica pode resultar em uma curva que não preserve a monotonicidade ou a forma, apresentando oscilações. A imposição de restrição de continuidade de classe C2 resulta em imposição de suavidade intuitiva sobre a curva que, no entanto, às vezes, viola desejável propriedade de monotonicidade. Em tais casos é necessário sacrificar em algum grau a suavidade para que esta preserve a monotonicidade dos dados.

Segundo eles, o método pchip de Fritsch e Carlson (1980) e Fritsch e Butland (1984) produz alta tensão, caracterizando uma curva achatada; além disso, trata-se de um método local e que produz curvas de classe C1 (continuidade garantida somente até a derivada de primeira ordem), mesmo que uma solução global de classe C2 exista (continuidade até a derivada de segunda ordem).

Conforme a Figura 2, as funções spline geradas com o método pchip preservam a forma (um segmento de curva não ultrapassa os limites superior e inferior definidos por seus nós de interpolação), no entanto a derivada de segunda ordem é descontínua, produzindo mudanças abruptas na de primeira ordem.

FIGURA 2 - INTERPOLAÇÃO POR FUNÇÕES SPLINE CÚBICA E PCHIP E DERIVADAS ATÉ A TERCEIRA ORDEM

FONTE: Wolberg e Alfy (2002)

Citam outras técnicas, como a de inserção de nós adicionais entre os pontos

Esses autores apresentam métodos para determinar a curva mais suave que interpola pontos de controle enquanto satisfaz a restrições de monotonicidade ou de forma, a partir de modelos de otimização baseados na Programação Linear e na Programação Não Linear. Em ambos os casos uma função objetivo, estabelecida como medida de energia é minimizada resultando em funções spline cúbica com propriedades monotônicas e de suavidade superiores a outros métodos como o pchip.

Entre as formas dos polinômios, deve ser dado destaque para os polinômios de Hermite utilizados por Wolberg e Alfy, que proporcionam soluções mais classe C1 que mais se aproxima de uma função de classe C2 por apresentar a menor curvatura.

Os procedimentos para construção das equações e solução do problema 2.85 encontram-se no anexo 2, em linguagem do software Matlab.

O modelo matemático é dado por:

Minimizar

[ ]

2

1

.

n i i

F D s

=

= 0 1 =

Sujeito a: .

abs abs

A b

A D b

   

  = 

    (2.85)

A Deq. =beq

Onde: D = vetor (coluna) de dimensão 2n – 2 de parâmetros mi das funções spline e folgas si do problema de programação linear, para as inequações.

n = número de medições altura-diâmetro;

0 = vetor (linha) de dimensão n, de valores nulos;

1 = vetor (linha) de dimensão n – 2, de elementos unitários.

A, Aabs, b e babs correspondem às matrizes e vetores do sistema de inequações para o PPL com variáveis de folga (si) já acrescentadas e Aeq e beq a matriz e vetor de equações que compõem as restrições para interpolação, continuidade das derivadas de primeira ordem, monotonicidade e preservação da forma dos dados.