SHRDU

SHRDLU
SHRDU
원저작자테리 위노그라드
초기 릴리즈1968
기입처Micro Planner, 리스프 프로그래밍 언어
운영 체제PDP-6
플랫폼DEC
유형자연어 이해

SHRDLU1968년부터 1970년까지 MIT의 테리 위노그라드에 의해 개발된 초기 자연어 이해 컴퓨터 프로그램이었다.이 프로그램에서 사용자는 컴퓨터와의 대화, 오브젝트 이동, 컬렉션 이름 지정 및 단순화된 "블록 월드" 상태, 즉 본질적으로 [1]다른 블록으로 채워진 가상 상자 상태를 조회한다.

SHRDLU는 DEC PDP-6 컴퓨터와 DEC 그래픽 터미널에서 Micro Planner 및 Lisp 프로그래밍 언어로 작성되었습니다.이후 유타 대학컴퓨터 그래픽 연구실에서 SHRDLU의 "세계"를 완전히 3D 렌더링하는 작업을 추가했습니다.

SHRDLU라는 이름은 영문 사용 빈도 내림차순으로 배열된 Linotype 기계 문자 키 배열인 ETAOIN SHRDLU에서 유래되었습니다.

기능

SHRDLU는 주로 영어 용어를 사용하여 사용자와의 상호작용을 가능하게 하는 언어 파서였습니다.사용자는 SHRDLU에 블록, 원뿔, 공 등 다양한 기본 오브젝트를 포함하는 "블록 월드"에서 다양한 오브젝트를 이동하도록 지시했습니다.SHRDLU를 독특하게 만든 것은 "이해"의 시뮬레이션을 훨씬 더 설득력 있게 만들기 위해 합친 4가지 간단한 아이디어의 조합이었다.

하나는 SHRDLU의 세계가 너무 단순해서 전체 개체와 위치를 50개 정도의 단어만 포함하면 묘사할 수 있다는 것이다: "블록"과 "콘"과 같은 명사, "플레이스 온"과 "이동"과 같은 동사, 그리고 "크다"와 "파란"과 같은 형용사.이러한 기본 언어 구성 요소의 가능한 조합은 매우 단순했으며, 프로그램은 사용자의 뜻을 파악하는 데 매우 능숙했습니다.

SHRDLU에는 컨텍스트를 제공하기 위한 기본 메모리도 포함되어 있습니다.SHRDLU에게 "녹색 원뿔을 빨간색 블록에 올려놓아라"고 요청한 후 "원뿔을 떼어내라"고 요청할 수 있습니다. "원뿔"은 방금 말한 녹색 원뿔을 의미하는 것으로 간주됩니다.SHRDLU는 대부분의 경우 추가 형용사가 제공되었을 때 적절한 문맥을 찾기 위해 상호작용을 통해 더 많이 검색할 수 있었다.역사에 대한 질문도 할 수 있다. 예를 들어, "원뿔 전에 무엇을 주웠나요?"라고 물을 수 있다.

이 기억의 부작용과 SHRDLU의 원래 규칙은 이 프로그램이 세상에서 무엇이 가능한지, 무엇이 가능하지 않은지에 대한 질문에 대답할 수 있다는 것이다.예를 들어, SHRDLU는 예를 들어 블록을 쌓을 수 있다고 추론하지만, 삼각형을 쌓은 후 쌓을 수 없다는 것을 알게 됩니다."세계"에는 언어 파서와는 별개로 블록을 넘어뜨릴 수 있는 기초 물리학이 포함되어 있었습니다.

마지막으로 SHRDLU는 객체에 주어진 이름이나 객체의 배열도 기억할 수 있었다.예를 들어, "첨탑은 높은 직사각형 위에 있는 작은 삼각형"이라고 말할 수 있습니다. 그러면 SHRDLU는 블록 세계의 스텝에 대한 질문에 답하고 새로운 스텝을 구축할 수 있습니다.

SHRDLU의 [2]유명한 데모를 다음에 나타냅니다.

사람: 큰 빨간 블록을 집어 들어라.
컴퓨터: OK.
사람: 피라미드를 잡아라.
컴퓨터: 어떤 피라미드를 말하는지 이해가 안 돼요.
사람(생각이 바뀌다):들고 있는 블록보다 더 높은 블록을 찾아서 상자에 넣습니다.
컴퓨터: "IT"란 내가 들고 있는 블록보다 더 높은 블록을 말하는 것 같습니다.
컴퓨터: OK.
Person: 그 상자에는 무엇이 들어 있나요?
컴퓨터:파란 피라미드와 파란 블록이요
Person: 피라미드는 무엇에 의해 지탱되고 있나요?
컴퓨터:박스
Person: 상자 안에 몇 블록이나 있지?
컴퓨터: 네 개
Person: 적어도 그 중 하나는 내가 주워오라고 한 것보다 좁니?
컴퓨터: 네, 레드 큐브입니다.
개인: 지원되나요?
컴퓨터: 네, 테이블 옆에요.
사람: 테이블이 블록을 들어 올릴 수 있나요?
컴퓨터: 아니요.
Person: 피라미드가 블록으로 지탱될 수 있을까?
컴퓨터: 네.
Person: 피라미드가 피라미드를 지탱할 수 있을까?
컴퓨터: 모르겠어요.
개인: 피라미드 두 개를 쌓아 올려라.
컴퓨터:못해요.
Person: 빨간색 블록과 초록색 큐브나 피라미드 둘 다 쌓아주시겠어요?
컴퓨터: OK.
Person: 탁자 위에 어떤 큐브가 있나요?
컴퓨터:붉은 피라미드를 지탱하는 커다란 녹색 건물입니다.
Person: 피라미드 뒤에 큰 블록이 있니?
컴퓨터: 네, 그 중 세 개는 큰 빨간색, 큰 녹색 큐브, 그리고 파란색입니다.
사람: 피라미드를 지탱하는 녹색 큐브 위에 작은 큐브를 올려놓으세요.
컴퓨터: OK.
사람: 가장 작은 피라미드를 그 위에 올려놓으세요.
컴퓨터: OK.
Person: 가장 높은 피라미드의 지지대가 지탱하는 가장 짧은 것이 녹색을 지탱하는 것이 있는가?
컴퓨터: 네, 녹색 피라미드입니다.
사람: 무슨 색이야?
컴퓨터: "IT"라는 말은 가장 높은 피라미드의 지지대가 지탱하는 가장 짧은 것을 의미한다고 생각합니다.
컴퓨터: 빨간색
사람: 녹색 큐브 위에 몇 개의 물건이 있나요?
컴퓨터:녹색 큐브 위에"라는 문구가 무슨 뜻인지 잘 모르겠어요.
의미:
1 - 직접 표면에 표시
2 - 그 위에 위치?
개인: 2
컴퓨터:셋이요
사람: 초록색 피라미드를 작은 큐브 위에 올려놓기 전에 피라미드를 만져본 적이 있나요?
컴퓨터: 네, 녹색이요.
Person: 언제 주웠니?
컴퓨터: 빨간색 큐브를 쌓아올리는 동안 큰 빨간색 블록과 큰 녹색 큐브를 쌓아올렸습니다.
Person: 왜요?
컴퓨터: 그것을 없애기 위해.
Person: 왜 그랬어?
컴퓨터: 레드 큐브를 청소합니다.
개인: 왜 큐브를 치웠어요?
컴퓨터:큰 녹색 큐브에 올려놓기 위해서요
Person: 왜 그랬어?
컴퓨터: 빨간색 큐브, 빨간색 블록 및 녹색 큐브를 쌓아 올립니다.
Person: 왜 그랬어?
컴퓨터: 당신이 부탁했으니까.
Person: 어떻게 한 거야?
컴퓨터: 큰 빨간색 블록을 테이블 위에 올려놓고, 그 다음에 그것을 내려놓고, 그 위에 큰 녹색 큐브를 올려놓고, 그 큐브를 내려놓고, 그 큐브 위에 빨간 큐브를 올려놓고, 그 큐브를 내려놓으면 그 큐브를 내려놓습니다.
Person: 그것을 하는 동안 얼마나 많은 물체를 만졌나요?
컴퓨터: 네 개
Person: 청소하기 전에 빨간 큐브는 무엇을 지원했나요?
컴퓨터:녹색 피라미드
사람: 그 때 상자의 왼쪽에 5블럭이 있었어.
컴퓨터: 아니요, 네 개밖에 없어요.빨간색 큐브, 녹색 큐브 2개, 빨간색 블록 1개.
사람: 파란 피라미드를 상자 안에 블록 위에 놓아라.
컴퓨터: OK.
Person: 모든 피라미드보다 크지만 그것을 지탱하는 것만큼 넓지 않은 것이 있는가?
컴퓨터: 네, 파란색 블록입니다.
개인: 첨탑이 있나요?
컴퓨터(중지): 죄송합니다. "강제"라는 단어를 모릅니다.
Person: "스텝플"은 두 개의 녹색 입방체와 피라미드를 포함하는 스택이다.
컴퓨터:알겠습니다.
사람: 지금은 뾰족한 게 있나요?
컴퓨터: 아니요.
개인: 하나 만드세요.
컴퓨터: OK.
Person: 가장 큰 블록을 "슈퍼 블록"이라고 부릅니다.
컴퓨터: OK.
Person: 우리가 시작한 이후로 슈퍼블럭을 주운 적이 있니?
컴퓨터: 네.
Person: 왜 떨어뜨렸어?
컴퓨터: "IT"란 슈퍼블록을 말하는 것 같군요.
존재하지 않는 사건을 설명할 수 없어요
사람: 빨간 피라미드 오른쪽에 뭔가 있나요?
컴퓨터: 네 가지: 박스, 레드 큐브, 블루 피라미드 및 슈퍼 블록이라는 이름의 블록
개인: 감사합니다.
컴퓨터: 천만에요!

결과들

SHRDLU는 인공지능(AI)의 엄청난 성공 사례로 여겨졌다.이것은 다른 AI 연구자들을 과도한 낙관론으로 이끌었지만, 이후 시스템이 좀 더 현실적인 수준의 모호함과 복잡함을[citation needed] 가지고 상황을 다루려고 시도했을 때 곧 사라졌습니다.Cyc와 같은 SHRDLU 유형의 후속 노력은 결론을 도출할 수 있는 상당히 많은 정보를 프로그램에 제공하는 데 초점을 맞추는 경향이 있다.

SHRDLU는 의도적으로 개발된 것은 아니지만 사용자가 가상 환경 내에서 객체를 이동시키는 단순한 명령어와 상호 작용하기 때문에 인터랙티브 픽션 장르에 일반적으로 존재하는 독특한 스토리텔링이 결여되어 있기 때문에 인터랙티브 픽션의 첫 번째 공식 사례로 간주됩니다.1976-1977년 게임 Colosity Cave Adventure는 인터랙티브 [3]픽션의 첫 번째 진정한 작품으로 널리 알려져 있다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ Winograd, Terry (1971-01-01). "Procedures as a Representation for Data in a Computer Program for Understanding Natural Language". hdl:1721.1/7095. {{cite journal}}:Cite 저널 요구 사항 journal=(도움말)
  2. ^ "SHRDLU". Stanford Human-Computer Interaction (HCI) Group.
  3. ^ Montfort, Nick (2003). Twisty Little Passages: An Approach To Interactive Fiction. Cambridge: The MIT Press. pp. 84–85. ISBN 0-262-13436-5.

외부 링크

  • Winograd, Terry (2001). "SHRDLU". Archived from the original on 2020-08-17. – Terry Winograd의 SHRDLU 페이지 (소스 코드 포함)