더북(TheBook)

4.1.2 관점 2 - 설계한 알고리즘이 결과를 얻을 수 있는 최적의 방법인가?

두 번째 관점은 다음 질문에 대한 답을 찾는 것입니다.

“현재 해결책이 최선입니까? 현재 보유한 해결책보다 더 나은 해결책이 존재하지 않음을 증명할 수 있습니까?”

이 질문은 언뜻 보면 답하기 쉬운 것처럼 느껴집니다. 그러나 이는 결코 쉬운 문제가 아닙니다. 연구자들이 수십 년에 걸쳐 연구를 진행하고 있는데도, 어떤 종류의 알고리즘은 그를 통해 얻은 해결책이 문제를 해결할 수 있는 유일한 최적의 방법인지 아직 증명되지 않았습니다. 그렇기 때문에 우리는 먼저 문제와 그 요구사항, 그리고 알고리즘을 실행하는 데 투입해야 하는 자원을 명확히 이해해야 합니다. 다음과 같은 질문을 생각해 봐야 합니다.

“이 문제를 푸는 최적의 해결책을 찾는 것을 목표로 해야 할까요? 최적의 해결책을 찾아내고 또 이를 검증하는 것은 시간도 오래 걸리고 복잡하기 때문에 휴리스틱에 기반을 둔 실행 가능한 해결책을 찾는 것이 때로는 최선의 선택이 될 수 있습니다.”

따라서 문제의 성격과 복잡도를 이해하는 것은 매우 중요하며, 자원 요구사항을 측정하는 데 도움이 됩니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.