언덕 오르기 알고리즘의 한계는 무엇이며 그것을 극복하는 방법은 무엇입니까?


답변:


6

@nbro는 이미 Hill Climbing은 지역 검색 알고리즘 의 제품군이라고 말했다 . 그래서, 당신이 질문에서 Hill Climbing을 말할 때 나는 당신이 표준 언덕 등반에 대해 이야기하고 있다고 가정했습니다. 언덕 오르기의 표준 버전에는 몇 가지 제한 사항이 있으며 다음 시나리오에서 종종 중단됩니다.

  • Local Maxima : 근처에서 로컬 최대 값에 도달하는 언덕 등반 알고리즘이 최고점을 향해 가고 다른 곳으로 멈출 수 없습니다 .
  • 릿지 : 이들은 로컬 최대 값 시퀀스이므로 알고리즘을 탐색하기가 어렵습니다.
  • 고원 : 이것은 평평한 상태 공간 영역 입니다. 오르막이 없기 때문에 알고리즘은 종종 고원에서 사라집니다.

이러한 문제를 해결하기 위해 다양한 언덕 오르기 알고리즘이 개발되었습니다. 이들은 가장 일반적으로 사용됩니다 :

  • 스토캐스틱 힐 클라이밍 은 오르막길에서 무작위로 선택합니다. 선택의 가능성은 오르막길의 가파른 정도에 따라 다릅니다.
  • First-Choice Climbing 은 더 나은 것을 찾을 때까지 후임자를 무작위로 생성하여 위의 것을 선택합니다.
  • 목표 상태에 도달 할 때까지 무작위로 생성 된 초기 이동에서 무작위 재개 언덕 등반 검색.

언덕 오르기 알고리즘의 성공은 상태 공간의 아키텍처에 달려 있습니다. 최대 값과 고원이 거의 없을 때마다 언덕 오르기 검색 알고리즘의 변형이 매우 잘 작동합니다. 그러나 실제 문제에서는 평평한 바닥에 넓게 흩어져있는 대머리 고슴도치처럼 보이는 풍경이 있습니다. 각 고슴도치 바늘 끝에 미니어처 고슴도치가 살고 있습니다 (인공 지능 : 제 4 장에 설명 된 것처럼) 현대적인 접근). NP-Hard 문제는 일반적으로 지수 최대 수의 로컬 최대 값을 갖습니다.
이러한 종류의 문제를 극복하기 위해 주어진 알고리즘이 개발되었습니다.

  • 자극 어닐링
  • 로컬 빔 검색
  • 유전자 알고리즘

참고서 -인공 지능 : 현대적 접근


언덕 오르기 문제를 극복하기위한 더 많은 대안이 있습니다; 즉 순열 그룹, 패턴 데이터베이스 및 문법 기반 검색입니다. 그들은 상태 공간에서 더 빨리 검색하기 위해 도메인 별 지식을 사용하고 있습니다.
Manuel Rodriguez

예 @ManuelRodriguez. 도메인 별 지식에 의존하는 알고리즘은 훌륭한 결과를 제공합니다. 그러나 Hill Climb Search의 한계를 극복 할 수있는 몇 가지 방법을 언급하면서 일반적인 문제에 대한 답을 유지하려고했습니다.
우그 네스

5

언덕 오르기 는 알고리즘이 아니라 "로컬 검색"알고리즘 제품군입니다. "힐 클라이밍"알고리즘 범주에 속하는 특정 알고리즘은 2-opt, 3-opt, 2.5-opt, 4-opt 또는 일반적으로 N-opt입니다. 이러한 로컬 검색 알고리즘 (TSP에 적용)에 대한 자세한 내용은 " 여행중인 판매원 문제 : 로컬 최적화 사례 연구 "(David S. Johnson 및 Lyle A. McGeoch)의 3 장을 참조하십시오.

이 범주에서 한 알고리즘을 다른 알고리즘과 차별화하는 것은 그들이 사용하는 "이웃 함수"입니다 (간단히 말하면 주어진 솔루션에 대한 주변 솔루션을 찾는 방법). 실제로 이것은 항상 그런 것은 아닙니다. 종종 이러한 알고리즘에는 여러 가지 구현이 있습니다.

언덕 오르기 알고리즘의 가장 분명한 한계는 특성상 즉 지역 검색 알고리즘이기 때문입니다. 따라서 그들은 보통 지역 최대 값 (또는 최소값)을 찾습니다 . 따라서 이러한 알고리즘 중 하나가 이미 로컬 최소 (또는 최대)로 수렴하고 솔루션 또는 검색 공간 에이 찾은 솔루션에 더 가까운 더 나은 솔루션이 있으면이 알고리즘을 찾지 못할 것입니다 더 나은 솔루션. 그들은 기본적으로 갇힐 것입니다.

지역 검색 알고리즘은 일반적으로 단독으로 사용되지 않습니다. 그것들은 시뮬레이션 어닐링, 반복 지역 검색 또는 개미 콜로니 알고리즘과 같은 다른 메타 휴리스틱 알고리즘의 하위 루틴으로 사용됩니다. 따라서 한계를 극복하기 위해 우리는 일반적으로 이들을 단독으로 사용하지는 않지만 확률 론적 특성을 가지며 전역 최소값 또는 최대 값 (예 : 개미 식민지 알고리즘 중 하나)을 찾을 수있는 다른 알고리즘과 함께 사용합니다.


좋은 답변 (+1)! 개미 콜로니 알고리즘에 대해 배울 수있는 리소스 (YouTube, 블로그 게시물, 열렬한 논문, 서적)를 추천 할 수 있습니까? 나는 그것에 대해 들어 본 적이 없으며 대략적인 아이디어를 얻고 싶습니다.
Martin Thoma

1
@MartinThoma 저는 ACS에 대한 아주 좋은 자습서를 잘 모르고 있습니다. cleveralgorithms.com/nature-inspired/swarm/… 간단한 자습서와 해당 구현으로 시작할 수 있습니다 . TSP에 적용되는 더 심각한 구현에 관심이 있다면 aco-metaheuristic.org/aco-code를 살펴보십시오. 발전에 Stützle (및 기타), 참여자 중 하나에 의해 구현을, 이 기술의.
nbro

asker는 Wikipedia 기사를 읽었 기 때문에 언덕 등반의 공식적인 정의가 무엇인지 알고 있습니다. 문제는 인공 지능에 사용하는 방법에 대한 방향으로 진행됩니다. 언덕 등반은 로컬 공간에서만 검색 할 수있어 AI 관련 문제를 해결하기가 어렵다는 것이 알려져 있습니다. 일반적으로 검색은 지역 최적화에 멈춰 여행 중 영업 담당자 문제에서 가장 짧은 경로를 찾을 수 없음을 의미합니다.
Manuel Rodriguez

1
@MartinThoma 어쨌든, 당신은 또한 연구 논문을 볼 수 있습니다. 몇 가지 중요한 연구원 : Dorigo (이 기술을 처음 도입 한 AFAIK), Gambardella 및 Stützle 만 알려 드릴 수 있습니다. 그들의 서류를보십시오. 어떤 것을 제안 해야할지 모르겠습니다. 또한 세부 정보를보고 싶다면 Swana 인텔리전스 (Bonabeau)에 관한 책이 있습니다.
nbro
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.