알파 최대 + 베타 최소 알고리즘
Alpha max plus beta min algorithm알파 max + 베타 min 알고리즘은 두 제곱합에 대한 제곱근의 고속 근사값이다.피타고라스 덧셈이라고도 하는 두 개의 정사각형 합계의 제곱근은 유용한 함수인데, 2-D 벡터의 규범인 2개의 측면 길이 또는 z= + z ^{2}{\sqrt}{}+b}{2}{2}}}}}에 해당하는 두 개의 정사각형인 두 개의 오른쪽 삼각형이 주어지는 것을 알 수 있기 때문이다.콤플렉스 숫자 z의 은(는) 실제와 가상의 부분이 주어지는 a + bi이다.
알고리즘은 비교, 곱하기, 덧셈과 같은 간단한 연산을 사용하는 대신 제곱근과 제곱근 연산을 수행하지 않는다.알고리즘의 α 및 β 매개변수의 일부 선택은 고속 디지털 회로의 구현에 특히 잘 맞는 이진수의 단순한 이동으로 곱셈 연산을 감소시킬 수 있다.
근사치는 다음과 같이 표현된다.
여기서 은는) a와 b의 최대 절대값이고, 은는) a와 b의 최소 절대값이다.
가장 가까운 근사치의 경우, {\} 및 {\}에 대한 최적 은0 = 8 + = 0 및 = 2 8 + = 최대 오류 3.96% 발생.
| 최대 오차(%) | 평균 오차(%) | ||
|---|---|---|---|
| 1/1 | 1/2 | 11.80 | 8.68 |
| 1/1 | 1/4 | 11.61 | 3.20 |
| 1/1 | 3/8 | 6.80 | 4.25 |
| 7/8 | 7/16 | 12.50 | 4.91 |
| 15/16 | 15/32 | 6.25 | 3.08 |
| 3.96 | 2.41 |
개선사항
< z이가) 기하학적으로 불가능함)이 0에 가까운 축 근처에서 M \ {Max}보다 작아진다.이 문제는 더 클 때마다 를 M x{\으)로 대체하여 해결할 수 있으며, 기본적으로 선을 두 개의 다른 세그먼트로 분할한다.
하드웨어에 따라 이러한 개선은 거의 무료가 될 수 있다.
이 개선을 사용하면 전체 간격에 대해 더 이상 근접하게 일치시킬 필요가 없기 때문에 어떤 매개변수 값이 최적의지 변경된다.따라서 및 이(가) 더 낮으면 정밀도가 더 높아질 수 있다.
정밀도 향상:이렇게 라인을 둘로 분할할 경우 첫 번째 세그먼트를 보다 더 나은 추정치로 하여 정밀도를 더욱 높일 수 있으며 그에 따라 α 및
| 최대 오차(%) | ||||
|---|---|---|---|---|
| 1 | 0 | 7/8 | 17/32 | −2.65% |
| 1 | 0 | 29/32 | 61/128 | +2.4% |
| 1 | 0 | 0.898204193266868 | 0.485968200201465 | ±2.12% |
| 1 | 1/8 | 7/8 | 33/64 | −1.7% |
| 1 | 5/32 | 27/32 | 71/128 | 1.22% |
| 127/128 | 3/16 | 27/32 | 71/128 | −1.13% |
그러나 0이 아닌 은(는) 최소 1회의 추가와 약간의 비트 전환(또는 곱셈)이 필요하므로 아마도 하드웨어에 따라 거의 2배의 비용을 발생시킬 수 있으며, 애초에 근사치를 사용하려는 목적을 좌절시킬 수 있다는 점에 유의하십시오.
참고 항목
- 오버플로 및 언더플로우에도 안전한 정밀한 기능 또는 알고리즘인 하이팟
참조
- 라이온스, 리처드 G.디지털 신호 처리 이해, 섹션 13.2.프렌티스 홀, 2004 ISBN0-13-108989-7.
- 그리핀, 그랜트.DSP 트릭: 진도 추정기.
외부 링크
- "Extension to three dimensions". Stack Exchange. May 14, 2015.