• 제목/요약/키워드: Prolog 언어

검색결과 35건 처리시간 0.026초

(Ab)(Cl) 집합 일치화의 구현에 관한 연구 (An Implementation of (Ab)(Cl) Set Unification)

  • 신동하;김인영
    • 한국정보통신학회논문지
    • /
    • 제8권5호
    • /
    • pp.1108-1113
    • /
    • 2004
  • ‘집합’은 컴퓨터 프로그램의 설계에 자주 사용되는 도구이다. 이런 이유 때문에 최근 ‘집합 제한 언어’도 등장하였다. 본 연구에서는 ‘(Ab)(Cl) 집합 일치화’ 문제를 소개하고 ‘집합 등식 다시쓰기(rewrite)’를 사용하여 집합 일치화를 Prolog 언어를 사용하여 구현하였다. 본 연구에서는 순차적 언어에서는 구현하기 힘들었던 집합 일치화가 Prolog 언어와 같은 논리 언어에서는 비결정성 제어 구조와 리스트 자료 구조를 사용하여 쉽게 구현 가능함을 보였다. 본 연구는 기존 구현이 고가의 상업용 Prolog를 사용한 것과는 달리 GNU 일반 공용 라이센스(GPL)를 가지는 Ciao Prolog를 사용하였기 때문에 누구나 무료로 사용할 수 있다는 장점도 가지고 있다. 현재 본 연구의 결과를 사용하여 ‘집합제한 언어’가 구현 중이다.

공개 집합 제한 논리 언어의 구현 방법 (An Implementation of Open Set Constraint Logic Language)

  • 신동하;손성훈
    • 정보처리학회논문지A
    • /
    • 제12A권5호
    • /
    • pp.385-390
    • /
    • 2005
  • `집합 제한 논리 언어`는 `집합 이론`을 프로그래밍에 도입한 언어이다. 본 논문은 A. Dovier 연구팀이 제안한 집합 제한 문제 풀이(solver) 절차를 소개하고, 이 절차가 논리 언어 Prolog 상에서 어떻게 구현 가능한 지를 보인다. 이 절차는 `다시쓰기 규칙(rewrite rule)`으로 표현되어 있는데 이 표현의 특징은 일반 프로그래밍 언어가 표현하기 힘든 비결정적 규칙 적용(nondeterministic rule application)과 수학적 변수 (mathematical variable)를 사용한다는 점이다. 본 연구에서는 이들 특징이 Prolog 언어에서 제공되는 비결정적 제어 (nondeterministic control), 논리적 변수(logical variable) 및 리스트(list) 자료구조의 사용으로 쉽게 구현 가능함을 보인다. 본 연구의 구현은 다음과 같은 의의를 가지고 있다. 첫째 본연구는 이 언어의 모든 기능을 완전하게 구현하였다는 점이다. 둘째 본 연구에서는 이 언어의 구현 방법을 누구나 알기 쉽게 기술하였다는 점이다. 셋째 기존의 구현이 상업적 Prolog인 SICStus Prolog를 사용하여 구현한 것과는 달리 본 구현은GNU GPL(General Public License)을 가지는CIAO Prolog를 사용하여 구현하였기 때문에 누구나 자유롭게 사용할 수 있는 점이다. 넷째 본 연구에서 개발된 소스 코드는 공개 소프트웨어이기 때문에 누구나 자유롭게 사용, 수정 및 배포할 수 있다는 점이다.

Prolog 언어를 사용한 집합 일치화의 구현 (An Implementation of Set Unification Using Prolog)

  • 김인영;신동하
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2003년도 춘계학술발표논문집 (상)
    • /
    • pp.463-466
    • /
    • 2003
  • 본 논문은 "집합 일치화 문제(set unification problem)"를 논리 언어 Prolog를 사용하여 구현한다. 집합 일치화 문제는 고전적 논리 언어(logic languages)의 일치화 문제(unification problem)에서 집합을 표현할 수 있도록 확장한 것으로 최근 연구되고 있는 "집합 제한 논리 언어(set constraints logic languages)"를 구현하기 위하여 풀어야 하는 문제이다. 본 논문에서는 최근 A. Dovier 연구팀이 제안한 집합 일치화 문제의 풀이(solver)를 소개하고, 이 풀이를 논리 언어 Prolog를 사용하여 구현하는 방법을 기술한다. Prolog 언어는 비결정성(nondeterminism)을 표현할 수 있는 기능과 리스트(list)라는 자료 구조를 제공하는 기능 때문에 다른 어떤 언어에서보다 쉽게 집합 일치화 문제 풀이를 구현할 수 있다. 본 연구의 결과는 집합 제한 논리 언어의 수행기(interpreter) 개발에 직접 이용될 수 있다.

  • PDF

Prolog 언어를 사용한 집합 제한 논리 언어의 구현 (An Implementation of Set Constraints Logic Language Using Prolog)

  • 김인영;신동하
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국해양정보통신학회 2003년도 추계종합학술대회
    • /
    • pp.183-187
    • /
    • 2003
  • In this paper, we describe an implementation method of "set constraints logic language" using the logic language Prolog. "Set constraints logic language" is a programming language with a new paradigm that uses the "set theory" in programming. In this paper, we explain "set constraints problem solver" that has been proposed by A. Dovier and his researchers and we describe an implementation method of this solver using Prolog. We ran easily implement the "set constraints problem solver" in Prolog, since Prolog easily implements nondeterministic problems and provides a data structure railed list. We have applied the language to several application fields to show the usefulness of the language.

  • PDF

C 및 Prolog 언어용 웹 입출력 라이브러리 (WEBIO Libraries for C and Prolog Languages)

  • 신동하
    • 한국정보통신학회논문지
    • /
    • 제6권5호
    • /
    • pp.755-761
    • /
    • 2002
  • 인터넷이 등장하기 전에는 대부분의 응용 프로그램이 표준입출력 장치로 호스트 컴퓨터에 연결된 단말기를 사용하며 수행되었다. 오늘날은 인터넷의 사용이 보편화되었고 많은 서비스가 인터넷에 연결된 웹 브라우저 상에서 제공된다. 단말기를 통한 표준입출력 방식과 웹 브라우저를 통한 통신 입출력 방식은 기술적으로 다르기 때문에 과거에 작성된 단말기용 응용 프로그램을 쉽게 인터넷을 통하여 웹 브라우저 상에서는 수행시킬 수는 없다. 본 논문은 표준입출력 방식으로 작성된 프로그램의 소스를 수정하지 않고 다시 컴파일만 하여 인터넷에 연결된 웹 브라우저 상에서도 서비스할 수 있게 해주는 웹 입출력 (WEBIO) 라이브러리의 개발에 대하여 기술한다. 현재 C 및 Prolog 언어 용 웹 입출력 라이브러리가 개발되어 시험 중이다.

퍼지 지능형 튜터링 시스템 설계 (Design on the Fuzzy intelligent tutoring system)

  • 정원일;이규영;임기영
    • 한국지능시스템학회:학술대회논문집
    • /
    • 한국퍼지및지능시스템학회 1998년도 추계학술대회 학술발표 논문집
    • /
    • pp.545-552
    • /
    • 1998
  • 본 연구에서는 prolog을 저자 언어로 사용한 퍼지 지능형 튜터링 시스템을 습득 모듈, 튜터링 콘크롤러, 전문가 지식의 3부분으로 구성하여 UNSW prolog로 실행시켰다. 습득 모듈은 기존의 지식에 새로운 정보를 첨가하여 사용하는 모듈이고 튜터링 콘트롤러는 시스템 사이의 정보를 상호 조정하는데 사용한다. 전문가 지식은 전문가의 지식을 저장한 내부 지식 베이스로서 가르칠 내용에 대한 정보와 해를 구하는 해결 모듈을 포함하고 있다. 특히 애매한 지식 처리를 위하여 퍼지 이론을 적용하였다. 하지만 지능형 튜터링 시스템의 구현을 위하여 먼저 고려해야 할 것이 전문가 지식에서 지식의 변환 방법이다. 그러므로 본 논문에서는 frame과 시멘틱 네트의 성질을 결합하여 계측적 frame 상태로 지식을 포현하였다. 계층적 frame에서 설정된 frame을 goal을 나타내게 하여 G frame이라 하였다. G-frame을 AND-OR 그래프 특성에 따라서 prolog언어를 저자 언어로 사용하여 퍼지 지능형 튜터링 시스템을 설계 하였다.

  • PDF

PROLOG기반의 규칙 기반 전문가 시스템을 이용한 서울시 도시 공원 추천 시스템 구현 (Implementation of Recommender System of Seoul Urban Parks Using Rule-based Expert System based on PROLOG)

  • 손세진;김다희;조예본;전수완;이강희
    • 예술인문사회 융합 멀티미디어 논문지
    • /
    • 제7권7호
    • /
    • pp.847-856
    • /
    • 2017
  • 본 논문은 사용자들에게 알맞은 공원을 추천해주는 시스템을 제안한다. 사회적, 심리적, 환경적, 신체적 등 사람들에게 긍정적인 요소를 제공하는 도시공원의 기능에 따라 서울시 도시공원을 6가지로 분류한다. 분류된 공원을 규칙기반 전문가 시스템을 기반으로 사용자들에게 추천한다. 공원 선택에 영향을 주는 요인들을 언어 객체로 설정하여 규칙 기반 추론 시스템을 논리 프로그램 언어인 PROLOG로 구현한다. 공원 추천의 규칙 기반 객체는 활동·다목적성과 접근성, 이용 시간을 기준으로 총 9가지 언어 객체를 설계하고 그에 따른 허용된 값을 부여한다. 이를 이용하여 생성된 규칙들이 사용자의 선호도에 따라 점화되고 추천 공원을 추론한다. 선호도에 대한 정보는 사용자들에게 직접 공원 선택에 있어서 기준이 되는 세 가지 요소에 대한 질문을 건네는 대화의 방식으로 얻는다. 결과적으로 공원 추천 시스템을 통해 공원 이용자들의 공원 이용 및 여가 생활에 대한 만족감을 높여주고자 한다.

능동형 서비스 수준 계약의 표현 자동화 (Automated Representation of Active SLA's)

  • 김상락;배재학
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2011년도 추계학술발표대회
    • /
    • pp.279-282
    • /
    • 2011
  • 최근 기업들이 SOA, 웹 서비스, 유틸리티 컴퓨팅, 클라우드 컴퓨팅 등과 같은 서비스 지향적인 컴퓨팅 환경에 관심을 가지면서 SLA(Service Level Agreement) 기반의 자동화된 계약관리의 수요가 증가하고 있다. 일반적으로 기업에서는 종이에 자연언어로 표현된 SLA를 사용하고 있다. 이를 SLM(Service Level Management) 시스템에서 이해하고 계약조항을 직접 실행시키는 한 방법으로서 본 논문에서는 ASLA(Active SLA) 도입을 제안하였다. ASLA에서는 계약조항이 내용이 Prolog로 표현 된다.사람이 계약조항을 분석하여 Prolog로 표현할 때는 사람에 따라 변환 결과가 달라질 수 있을 뿐만 아니라 작업시간이 많이 소요된다는 단점이 있다. 본 논문에서는 제한된 자연어로 작성된 SLA를 APE(Attempto Parsing Engine)를 사용하여 ASLA를 얻는 방법을 제안한다. 그 방법의 핵심은 SLA ${\rightarrow}$ [APE Parser] ${\rightarrow}$ DRS(Discource Representation Structure) ${\rightarrow}$[drs2prolog] ${\rightarrow}$ Prolog 프로그램 ${\rightarrow}$ [prolog2xml] ${\rightarrow}$ ASLA로 요약할 수 있다.

검증 규칙을 포함한 XML 문서 (XML Documents Including Validation Rules)

  • 남철기;양재군;배재학
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2001년도 가을 학술발표논문집 Vol.28 No.2 (3)
    • /
    • pp.709-711
    • /
    • 2001
  • 본 논문에서는 XML 문서에 문서검증을 위한 로직을 추가하였다 로직을 기술하기 위해 규칙 표현에 효과적인 Prolog를 이용하였고 검증 규칙을 XML 문서로 변환하여 원래의 XML 문서에 포함시켰다. XML 문서검증에 관한 연구가 기존에는 주로 문서 구조의 검증에 치중한 반면 본 논문은 XML 엘리먼트의 데이터 값 검증에 역점을 두었다. 또한 폼 값의 검증을 XML과 Prolog를 이용하여 검증함으로써 스크립트언어를 사용해 검증하는 일반적인 방법을 개선하였다.

  • PDF