프롤로그 프로그래밍 : AI 봇에게 최고의 삶을 제공하십시오.

폭로: 귀하의 지원은 사이트 운영을 유지하는 데 도움이됩니다! 이 페이지에서 권장하는 일부 서비스에 대한 추천 수수료가 발생합니다.


프롤로그는 논리 프로그래밍 언어입니다. 따라서 C ++ 또는 Perl과 같은 경험이있는 사람들에게는 매우 기괴한 것처럼 보일 수 있습니다. 아이디어는 매우 간단합니다. 프로그램에서 사실과 규칙 (사실 간의 관계)을 정의합니다. 그리고이를 기반으로 쿼리를 수행 할 수 있습니다. 그러나 이러한 간단한 기능으로 많은 것을 할 수 있습니다

Prolog의 힘에 대한 아이디어를주기 위해 자연어 처리를 수행하도록 설계되었습니다. 당신은 아마 최초의 챗봇 중 하나 인 ELIZA에 대해 들어봤을 것입니다. 이것이 프롤로그가 의도 한 것입니다..

실제로, ELIZA의 프롤로그 버전은 온라인입니다. 그러나 이것은 시작에 불과합니다. 그것은 우리가 광범위하게“인공 지능”, 특히 전문가 시스템에서 생각하는 많은 분야에서 널리 사용됩니다..

프롤로그 작동 방식

프롤로그는 절차 적 언어에 경험이있는 사람들에게는 혼동 될 수 있습니다. 그것은 분명히 절차 적 측면을 가지고 있지만, 사실 체계와 그것이 어떻게 연관되어 있는지에 대한 문제입니다. 그런 다음 프롤로그가 수행 방법에 대한 세부 사항을 관리하게합니다. 절차 적 프로그래밍에는 일반적으로 많은“if”질문이 포함됩니다. 프롤로그에는 데이터 시스템에 이러한 측면이 내장되어 있습니다..

Prolog에 대한 기본 아이디어를 얻으려면 사실, 규칙 및 쿼리의 세 가지 기본 측면에 대해 이야기해야합니다..

  • 사리: 이것들은 당신이 생각하는 것입니다. 시스템에 정보를 알려줍니다. 다음 예에서 Heather는 Thomas를 좋아한다고 선언합니다.
    • 좋아요 (히터, 토마스).
  • 규칙: 논리식을 작성합니다. 그들은 :-연산자와 같은 것을 사용하는데, 기본적으로“if :
    • 좋아하는 (thomas, heather) :-좋아하는 (heather, thomas).

    “토마스를 좋아하는 사람”이 맞다면 토마스는 헤더를 좋아한다고합니다. 원래 사실은 다음과 같이 작성 될 수있는 암시 적 규칙입니다.

    • 좋아하는 (히터, 토마스) : = true.
  • 쿼리: 이것으로 시스템에 질문 할 수 있습니다. 예를 들면 다음과 같습니다.
    • ? 좋아하는 (토마스, 히터).

    “토마스가 헤더를 좋아합니까?”라는 질문을합니다. 그리고 프롤로그는 “예”라고 대답했습니다. 헤더가 사실로 Thomas를 좋아한다는 것을 처음으로 설정했기 때문입니다. 그런 다음 토마스가 헤더를 좋아하면 헤더를 좋아한다는 규칙을 만들었습니다..

Prolog의 또 다른 중요한 측면은 변수 사용입니다. 지금까지 제공된 모든 예가 어떻게 소문자인지 알 수 있습니다. 프롤로그에서 대문자로 시작하는 요소 ( “아톰”이라고 함)는 변수입니다. 따라서 Heather가 가진 친구를 찾고 싶다고 가정하고 변수 친구를 만들어서 이렇게 할 수 있습니다.

? 좋아요 (히터, 친구).

이것은“누가를 좋아합니까?”라는 질문을합니다. 그리고 프롤로그는 정의 된대로 친구를로드합니다. 우리의 경우에는 토마스입니다. 그러나 그것은 사람들의 목록이 될 수 있습니다.

자원

이제 프롤로그가 무엇인지에 대한 기본 개념을 이해 했으므로 이제 논리 프로그래머가되기위한 몇 가지 자료를 살펴 보겠습니다..

튜토리얼

  • 프롤로그 소개 :이 튜토리얼은 매우 간단한 튜토리얼이지만 다른 튜토리얼에서 다루는 기본적인 문제를 다루는 튜토리얼입니다..
  • 논리 프로그래밍을 사용해보십시오! 프롤로그에 대한 부드러운 소개 : 이것은 다른 프로그래밍 패러다임으로서 로직 프로그래밍에 중점을 둡니다..
  • 프롤로그 :-튜토리얼 :이 언어에 대한 자세한 예제 중심의 소개입니다.
  • 지금 프롤로그 배우기 : 처음부터 시작하여 고급 주제를 다루는 철저한 자습서입니다.

비디오 자습서

표준 튜토리얼 외에도 Prolog에는 훌륭한 비디오 튜토리얼이 많이 있습니다. 그들은 기초를 배우는 놀랍도록 쉬운 방법입니다.

  • 데릭 바 나스의 프롤로그 튜토리얼 : 컴퓨터에서 프롤로그 설치하기.
  • 프롤로그 프로그래밍 : SWI- 프롤로그를 사용한 간단한 엔지니어의 4 부 비디오 소개입니다..
  • 논리 프로그래밍 : 인공 지능에 관한 Pallab Dasgupta의 강의 시리즈의 일부입니다. 이것은 모두 논리 프로그래밍에 관한 것입니다. Prolog에 대한 후속 강의도 있습니다..

프롤로그 도서

정말로 관심이 있다면, 책을 체크 아웃하여 주제를보다 철저하게 살펴볼 수 있습니다..

  • Sam Key의 하루에 Prolog 프로그래밍 성공 : 하루 (또는 저녁)에 Prolog를 소개하는 작은 책.
  • Clocksin Mellish의 Prolog 프로그래밍 : 이것은 Prolog에 대한 철저하면서도 간결한 소개입니다..
  • Ivan Bratko의 인공 지능을위한 프롤로그 프로그래밍 : 소리가 들리더라도이 글은 프롤로그에 대한 소개입니다..
  • 프롤로그 기술 : Sterling과 Shapiro의 고급 프로그래밍 기법 : 이것은 고전적이지만 소개는 아닙니다. 언어에 익숙해지면 확인해야 할 부분입니다..

프롤로그 구현

다양한 무료 프롤로그 컴파일러와 인터프리터가 있습니다.

  • Toy Prolog Interpreter : 모나 쉬 대학교 (Monash University)의 온라인 통역사로, 약간의 코드를 확인하는 데 유용한 도구입니다. 컴퓨터에 컴파일러를 설치하기 전에 자습서와 함께 사용하는 것이 좋습니다..
  • SWI-Prolog : 거의 모든 플랫폼에서 사용할 수있는 널리 사용되는 Prolog 구현입니다..
  • GNU 프롤로그 : 다니엘 디아즈의 무료 컴파일러입니다.
  • 무료 프롤로그 컴파일러 및 구현 : 자유 국가의 다른 프롤로그 구현 목록.

기타 자료

사용 가능한 다른 리소스가 많이 있습니다. 그중 일부는 먼 길을 갔으므로 일부 정보가 오래되었을 수 있습니다..

  • 프롤로그 리소스 가이드 :이 리소스는 상당히 오래된 리소스이지만 유용한 정보가 많이 있습니다..
  • SWI-Prolog의 실제 프로그래밍 : 여기에는 SWI-Prolog 코더에 대한 많은 정보가 있지만 다른 환경을 사용하는 사람들에게 유용 할 것입니다. ## 프롤로그에 대한 질문과 대답이 특히 중요합니다..
  • Prolog WikiBook : 이것은 고급 자료가 많은 언어에 대한 훌륭한 개요입니다..
  • 스택 오버플로 프롤로그 : 많은 정보를 보유한 프로그래머를위한 온라인 포럼입니다. 또한 Prolog Tagged Questions 페이지를 확인하십시오..
  • SWI- 프롤로그 Google 그룹 :이 그룹은 굉장히 활동적인 그룹은 아니지만 여전히 많은 지식이있는 사람들이 있습니다. comp.lang.prolog 그룹도 확인하십시오..

요약

집중하고 싶거나 다른 프로그래밍 도구를 보완하기 위해 사용하든 Prolog는 공부하기에 좋은 언어입니다. 논리 프로그래밍 언어로서, 덜 절차적인 방식으로 문제에 대해 생각하게합니다. 이 자료를 통해 프롤로그 프로그래밍을 배우고 발전시킬 수 있습니다.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map