I. 서 론
능동 소음제어 기술은 소음을 제거하기 위해 동일 진폭과 역위상을 가지는 신호를 생성하여 소음원과 중첩시킴으로써 소음을 제거하는 기술이다.[1] 소음원을 방음재로 차단하는 수동 소음제어에 비하여 저주파 소음을 효율적으로 제어할 수 있다는 장점으로 인해 그동안 능동 소음제어에 관한 연구가 광범위하게 이루어졌다.[2] 능동 소음제어 기술에 많은 성과가 있었음에도 불구하고 실제 응용에 적용하기에는 여러 제한적인 요소가 있다. 충격성 소음은 그러한 제한적 요소 중에 하나이다. 충격성 소음은 큰 진폭을 가지고 낮은 확률로 발생하는 소음으로써 실제에 널리 존재하기 때문에 이를 효과적으로 제어할 수 있는 알고리즘이 요구되어진다. 충격성 소음을 능동 제어하는 알고리즘의 성능은 안정성과 수렴성으로 평가된다.[3] 능동 소음제어에서 가장 널리 사용되고 있는 Filtered-x Least Mean Square(FxLMS) 알고리즘은 간단함과 강건함을 그 특징으로 하지만, 소음원에 충격성 소음이 포함되는 경우, 평균 자승 오차를 최소화하도록 설계된 FxLMS 알고리즘은 불안정하게 된다. 이는 충격성 소음이 무한 분산을 갖는 경향이 있기 때문이다.[4] 그동안 충격성 소음을 능동 제어하기 위한 여러 알고리즘들이 제안되었다. 이러한 알고리즘들은 크게 3가지 방식으로 분류할 수 있다. 하나는 Filtered-x Least Mean P-Power(FxLMP) 알고리즘으로써 평균 자승 오차 대신에 평균 p-power 오차를 최소화하여 충격성 소음에 안정적으로 동작한다.[5] 하지만 FxLMP는 충격성 소음이
-stable process가 아닌 경우, fractional power를 선택할 수 없다는 단점이 있다. 두 번째 방식은 소음원의 통계적 특징을 이용하여 큰 진폭을 가지는 충격성 소음을 무시하거나 대체하는 방식이다.[3] 구현이 매우 간단하지만 알고리즘을 실행하기 위해 사전에 소음원의 통계적 특성을 추정하여 충격성 소음을 대체하기 위한 문턱값을 정해야하는 번거로움이 있으며 알고리즘이 실행되는 동안에 이 값을 변경하지 못한다는 단점이 있다. 세 번째 방식은 step size를 정규화하는 방식으로써 Modified FxLMP(MFxLMP) 알고리즘과 Modified Normalized FxLMP(MNFxLMP) 알고리즘이 있다.[6] MFxLMP와 MNFxLMP 알고리즘 역시 평균 p-power 오차를 최소화하는 알고리즘으로써 충격성 소음이
-stable process가 아닌 경우 첫 번째 방식이 갖는 단점을 갖고 있다. 또한 MFxLMP 알고리즘은 문턱값을 이용하기 때문에 두 번째 방식이 가지는 단점도 갖고 있다.
최근 충격성 소음 환경에서 안정적으로 동작하도록 APSA를 능동 소음 제어에 적용한 MFxAPSA가 제안되었다.[7,8] APSA 알고리즘을 이용하기 때문에 역행렬 연산을 요구하지 않는다는 장점이 있으며, 충격성 소음을 능동 제어하기 위해 제안된 타 알고리즘들과 비교하여 성능이 우수하고 어떠한 사전 정보도 요구하지 않는다. MFxAPSA 이전의 알고리즘들은 충격성 소음의 발생 빈도가 적은 경우 안정적으로 동작하지만, 충격성 소음의 발생 빈도가 심한 경우 대부분 발산하는 경향을 보인다.[8] MFxAPSA는 충격성 소음의 발생 정도가 심한 경우에도 안정적으로 동작한다.
본 논문에서는 기존의 MFxAPSA보다 더 빠른 수렴 속도를 가지는 새로운 MFxAPSA를 제안한다. 제안된 알고리즘 역시 기존의 알고리즘처럼 역행렬 연산을 요구하지 않는다는 장점을 가지고 있고 충격성 소음의 발생 정도가 심한 경우에도 안정적으로 동작한다. 두 알고리즘이 가지는 차이점은 기존의 MFxAPSA는 필터 계수를 갱신하기 위해 사용되는 입력 신호들을 모든 입력 신호의
-norm으로 정규화하는 반면에 제안된 MFxAPSA는 각각의 입력 신호를 해당 입력 신호의
-norm으로 정규화한다는 점이다.
본 논문의 구성은 다음과 같다. I장 서론에 이어서 II장에서는 충격성 소음을 설계하기 위한 symmetric
-stable(S
S) process를 살펴보고, III장에서 기존의 MFxAPSA를 검토한다. IV장에서 새로운 MFxAPSA를 제안하고 V장에서는 컴퓨터 모의 실험을 통하여 기존의 MFxAPSA와 제안된 MFxAPSA의 성능을 비교, 검토하며 VI장에서 결론을 맺는다.
II. S
S process
충격성 소음은 Eq.(1)과 같은 특성 함수를 가지는 S
S process에 의해 표현될 수 있다.[4,6]
, (1)
여기서
는
의 값을 갖으며,
는
의 값을 갖는다.
,
인 경우 특성 함수 Eq.(1)은
와 같이 되며, 표준 S
S process라 한다. Fig. 1은
에 따른 표준 S
S process의 확률 분포 함수들을 보여준다.
Fig. 1을 통해서
가 작을수록 충격성 소음이 더욱 자주 발생하는 소음원을 설계할 수 있음을 알 수 있다. 표준 S
S process는
인 경우 Gaussian 분포를 갖으며,
인 경우 Cauchy 분포를 갖는다. Fig. 2는
값에 따른 표준 S
S process로 발생시킨 충격성 소음을 보여준다.
Fig. 2를 통하여
가 작아짐에 따라 충격성 소음이 많이 발생하는 것을 확인 할 수 있다. 본 논문에서는 Fig. 2와 같이 여러
값에 해당하는 표준 S
S process에 의해 생성된 충격성 소음을 다룬다.
III. 기존의 MFxAPSA
Fig. 3은 MFxAPSA가 적용된 능동 소음제어의 블록도를 나타낸다.
능동 소음제어는 음향 영역과 전기 영역, 두 가지 영역으로 나뉜다. 소음원이 오차 마이크로 전달되는 경로를 주경로(primary path)
라 하며,
를 통과한 소음원을
이라 한다. 소음원을 제어하기 위한 알고리즘의 출력신호
이 제어 스피커를 통해 출력되어 오차 마이크까지 전달되는데, 제어 스피커와 오차 마이크까지의 경로를 2차 경로(secondary path)
라 한다. 능동 소음제어에서는
의 존재로 인해 이를 위한 보상이 요구된다. 따라서
를 사전에 추정한
을 이용하여 소음원을 필터링하는 FxLMS 알고리즘이 널리 사용된다. 또한 능동 소음제어에서는 음향 영역에서 존재하는
을 이용할 수 없기 때문에 필요에 따라 Fig. 3과 같이
을 추정하기 위해 FxLMS 알고리즘을 수정한 Modified FxLMS 알고리즘이 사용된다.
을
인 순간에 적응 필터의 계수 벡터라고 정의하면 적응 필터의 출력 신호
은 
으로 정의된다. 여기서 
,
은 적응 필터의 길이를 나타낸다.
은 아래와 같이 정의된다.
, (2)
여기서
은 오차 마이크로부터 수집되는 오차 신호,
는
의 임펄스 응답을
개 만큼 가지는 벡터,
이다.
을 투사차원
개만큼 모아서 추정된 참조 신호 벡터를 아래와 같이 정의 할 수 있다.
. (3)
입력 신호
을
의 길이
개만큼 모으면 
가 형성되고
이
를 거쳐 필터링된 입력 신호를
와 같이 나타낼 수 있다.
을 적응 필터의 길이
개만큼 모아 필터링된 입력 신호 벡터
와 이를 투사차원 P개만큼 모아 필터링된 입력 신호 행렬을 아래와 같이 형성할 수 있다.
, (4)
. (5)
Eqs.(3)과 (5)를 이용하면 아래와 같이 추정된 오차 벡터와 추정된 사후 오차 벡터를 정의할 수 있다.
, (6)
. (7)
Xiao et al.[8]이 MFxAPSA를 아래와 같은 최적화 문제를 통해 제안하였다.
, (8)
여기서
는 필터 계수가 급격하게 변화하는 것을 방지하는 파라미터로써 수식이 전개된 후 step size로 대체되고,
은
-norm을
는
-norm을 나타낸다. Lagrange multiplier를 이용하여 최적화 문제를 풀기위해 아래와 같은 비용함수를 정의하자.
. (10)
는 Lagrange multiplier를 나타낸다. Eq.(10)을
로 미분하고 전개하면 아래와 같은 결과가 나온다.
, (11)
여기서
은 부호 함수를 나타낸다. Eq.(9)의
을 Eq.(11)로 대체하여 전개하면 Eq.(12)를 얻을 수 있다.
, (12)
Eq.(12)를 Eq.(11)에 적용하면 MFxAPSA의 필터 갱신 수식이 얻어진다.
, (13)
여기서
는 step size를 나타내고
은
의 정보를 요구하기 때문에
으로 대체되었다.
IV. 제안된 MFxAPSA
본 논문에서 제안하는 MFxAPSA를 유도하기 위해 Eq.(14)와 같은 비용함수를 정의한다. 일반적으로 오차 신호는 입력 신호와 상관 관계를 가지는데, 입력 신호의 에너지가 크다면 전체적인 오차의 에너지도 커진다. 따라서 오차 신호 자체의 합보다는 오차 신호를 입력 신호의 에너지로 정규화한 오차 신호를 이용하는 것이 더 유의미하다. Eq.(14)에서 정의한 비용함수는 현재부터 투사차원만큼의 과거에 해당하는 정규화된 절대 오차의 합이다.
. (14)
여기서
는 투사차원
개까지의 과거 신호를 가리키는 인덱스이다.
는 Eq.(6)로부터 아래와 같이 정의할 수 있다.
, (15)
. (16)
최대경사법을 기반으로 아래와 같은 새로운 MFxAPSA의 필터 갱신 수식을 제안한다.
비용함수의 경사도
은 아래와 같이 연쇄 법칙을 이용하여 구할 수 있다.
Eq.(18)의 오른쪽 두 항은 아래와 같이 전개할 수 있다.
, (19)
. (20)
Eqs.(19)와 (20)을 이용하여 비용함수의 경사도 
가 다음과 같이 얻어진다.
Eq.(17)의 비용함수의 경사도를 Eq.(21)으로 대체하면 본 논문에서 제안하는 MFxAPSA의 필터 갱신 수식을 얻을 수 있다.
. (22)
서론에서 언급한 바와 같이 Eqs.(13)과 (22)를 비교함으로써 기존의 알고리즘은 각각의 입력 신호를 필터 계수를 갱신하기 위해 사용된 모든 입력 신호의
-norm으로 정규화하는 반면에 본 논문에서 제안된 알고리즘은 각각의 입력 신호를 해당 입력 신호의
-norm으로 정규화함을 확인 할 수 있다.
V. 실험 결과
제안된 MFxAPSA와 기존의 MFxAPSA의 성능을 비교하기 위하여 컴퓨터 모의 실험을 실시하였다. 모의 실험을 위해서 사용한
와
는 Reference 2에서 제공하는 자료를 사용하였으며, 해당하는 임펄스 응답이 Fig. 4에 나와 있다. 적응 필터의 길이는 192, 주경로의 길이는 256, 2차 경로의 길이는 128이며
는
와 동일하게 설정하였다. 이러한 설정은 References 6과 8에서 실험한 조건과 동일한 조건이다.
실험 결과는 averaged noise reduction, ANR
을 구하여 도시하였다. 여기서 
,
이다.
값의 범위는
로서
를 사용하였다. 모든 실험 결과는 25번의 ensemble 평균을 한 것이다.
충격성 소음의 발생 정도에 따른 알고리즘의 성능 비교를 위하여 충격성 소음이 적게 발생하는 경우(case I)
, 자주 발생하는 경우(case II)
그리고 매우 심하게 발생하는 경우(case III)
에 대하여 컴퓨터 모의 실험을 실시하였다. Fig. 5는 충격성 소음이 자주 발생하는 경우(case II)를 모의 실험한 결과로써, 투사차원 4를 사용하였을 때, 기존의 MFxAPSA와 제안된 MFxAPSA의 ANR 곡선을 보여준다.
Fig. 5를 보면
인 경우 제안된 알고리즘의 수렴속도가 더 빠르지만 기존의 알고리즘이 더 낮은 ANR 값을 갖음을 확인할 수 있다.
인 경우 두 알고리즘 모두 유사한 ANR 값을 갖음에도 불구하고 제안된 알고리즘의 수렴 속도가 거의 2배 정도 빠른 것을 확인 할 수 있다. IV장에서 언급한 바와 같이, 제안된 비용함수는 기존의 알고리즘과 달리 최종적으로 Eq.(22)와 같이 각각의 입력 신호를 개별적으로 정규화하게 되는데, 이 과정은 결국 각각의 입력 신호에 대하여 서로 다른 수렴 인자를 적용하는 것과 같은 효과를 가지게 되어 전체적인 수렴 속도 향상으로 이어진 것으로 해석할 수 있다. Fig. 6은 두 알고리즘의 성능을 공평하게 비교하기 위하여 수렴 후, 같은 ANR 값을 갖도록 step size를 조정하여 도시화한 것이다.
|
(a) |
|
(b) |
Fig. 7. Curves for averaged noise reduction of the existing and proposed MFxAPSA for case I ( |
Fig. 6에서는 투사 차원이 8인 경우의 ANR 곡선도 함께 도시하였다. 두 경우 모두 기존의 알고리즘보다 제안된 알고리즘의 수렴 속도가 더 빠름을 확인 할 수 있다. 또한 투사 차원이 증가할 때, 기존의 알고리즘과 제안된 알고리즘 모두 전반적으로 수렴 속도가 상승하지만, 투사 차원이 증가하여도 제안된 알고리즘이 기존의 알고리즘보다 여전히 더 빠른 수렴속도를 보인다. Figs. 7과 8은 충격성 소음의 발생 정도가 적은 경우(Case I)와 충격성 소음이 매우 심하게 발생하는 경우(Case III)에 대해 두 알고리즘의 ANR 곡선을 보여준다.
Figs. 7과 8을 통해 충격성 소음의 발생 정도가 변하여도 제안된 알고리즘이 기존의 알고리즘보다 더 좋은 성능을 보인다는 것을 확인 할 수 있다.
VI. 결 론
본 논문에서는 능동 충격 소음 제어를 위해 APSA를 적용한 기존의 MFxAPSA보다 더 빠른 수렴 속도를 가지는 새로운 MFxAPSA를 제안하였다. 제안된 MFxAPSA는 기존의 MFxAPSA와 같이 역행렬 연산을 요구하지 않는다는 장점을 가지고 있다. 기존에 MFxAPSA는 각각의 입력 신호를 필터 계수를 갱신하기 위해 사용된 모든 입력 신호의
-norm으로 정규화하는 반면, 본 논문에서 제안된 알고리즘은 각각의 입력 신호를 해당 입력 신호의
-norm으로 정규화한다. 제안된 알고리즘의 성능을 평가하기 위하여 충격성 잡음의 발생 정도를 달리하면서기존의 알고리즘과 비교하는 컴퓨터 모의 실험을 실시하였으며, 이를 통해 본 논문에서 제안한 알고리즘이 기존의 알고리즘에 비해 우수한 수렴 특성을 가진다는 것을 보였다.




S process for various values of
.
S process with various values of
.
,
.
.
.
and secondary path
.
for case II (
).

). (a)
. (b)
.

). (a)
. (b)
.

). (a)
. (b)
.
-stable impulsive noise,” Applied Acoustics, 72, 668-694 (2011).