범용 검색에 대한 일반적인 설명은 무엇입니까?


13

나는 컴퓨터 과학 주제에 관한 책을 읽고 있지만 전제 조건의 일부가 부족하다. 일반적으로 용어를봤을 때 나는 단순히 그것들을 찾는다는 것을 이해하지 못하지만, 범용 검색의 경우 통계 / 컴퓨터 과학에 대한 배경 지식이없는 독자에게 적합한 설명을 찾을 수 없었습니다.

나는 Scholarpedia의 Universal Search 에서이 기사를 읽었 으며 주제를 다루는 것 같습니다. 범용 검색 (또는 Levin Search )의 의미 에 대해 설명해 주셔서 감사합니다 .

답변:


15

이것을 이렇게 생각하십시오. 입력 문제 가 있으며 행렬 역수 또는 상상하고 싶은 것과 같은 솔루션을 찾은 경우 솔루션을 확인하는 방법을 알고 있습니다.x

xx

iiii

Psi=max{|P|,s}sP


3

Pål GD가 말한 것에 덧붙여서, 길이 이하 의 모든 프로그램을 실행하고 최대 초 동안 실행할 수 있음을 기억하십시오 . 따라서 100 자 길이의 정답을 얻는 프로그램이있을 수 있지만 실행하는 데 120 초가 걸립니다. 그 프로그램 호출하십시오 . 에 이 프로그램을 확인할 수 있습니다,하지만 당신이 그것을 폐기 있도록 실행하는 데 시간이 오래 걸립니다. 길이가 100 인 모든 프로그램을 확인한 후에는 정답을 찾을 수 없으므로 길이가 프로그램과 이전에 시도한 모든 프로그램을 시도하십시오 . 를 재 시도하십시오.iiPi=100101 P, (우리가 아는) 프로그램이 정답을 줄 것이지만 여전히 너무 오래 걸리므로 버립니다. 우리는 도달 할 때까지 프로세스를 유지합니다 . 그런 다음 우리는 길이가 인 모든 프로그램을 시도 하고 도달 하면 올바른 대답을 줄 수있을 정도로 오랫동안 실행되도록했습니다. 그런 다음 중지합니다. 원하는 알고리즘을 찾았습니다. 프로그램 의 길이 는 짧지 만 ( ), 소요되는 시간이 120 초 ( )가 될 때까지 기다려야 했기 때문에 반복은 입니다. ). 따라서 단순히 프로그램 의 최대 길이를 의미합니다.i=120120Pi=120P|P|=100s=120i=max{|P|,s}P그리고 를 실행하는데 걸린 시간 .s

그것을 보는 또 다른 방법은 프로그램을위한 소요 , 우리가 확인해야 정답을 생산하는 초 이상반복하고, 최소한 반복 때문에 우리는 경우를 찾을 수 있습니다 전에그런 다음 해당 프로그램을 아직 확인하지 않았으며 이면 프로그램을 충분히 오래 실행하지 않았습니다.Ps |P| si<|P|i<s

이 검색 방법은 답변이있는 경우에만 답변을 얻을 수 있습니다. 최단 또는 가장 빠른 답을 찾을 수는 없습니다. 올바른 답변을 제공하는 프로그램을 찾 자마자 프로세스가 종료된다고 생각하면 그 이유가 분명해야합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.