KR100905582B1 - 로봇 지놈을 생성하기 위한 시스템 및 생성 방법 - Google Patents

로봇 지놈을 생성하기 위한 시스템 및 생성 방법 Download PDF

Info

Publication number
KR100905582B1
KR100905582B1 KR1020060085570A KR20060085570A KR100905582B1 KR 100905582 B1 KR100905582 B1 KR 100905582B1 KR 1020060085570 A KR1020060085570 A KR 1020060085570A KR 20060085570 A KR20060085570 A KR 20060085570A KR 100905582 B1 KR100905582 B1 KR 100905582B1
Authority
KR
South Korea
Prior art keywords
robot
internal state
delete delete
user
genomes
Prior art date
Application number
KR1020060085570A
Other languages
English (en)
Other versions
KR20080022300A (ko
Inventor
이강희
김광춘
김종환
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020060085570A priority Critical patent/KR100905582B1/ko
Priority to EP07114959A priority patent/EP1901209A3/en
Priority to CN2007101492060A priority patent/CN101140636B/zh
Priority to US11/851,175 priority patent/US7937337B2/en
Publication of KR20080022300A publication Critical patent/KR20080022300A/ko
Application granted granted Critical
Publication of KR100905582B1 publication Critical patent/KR100905582B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming

Abstract

본 발명은 로봇 지놈을 생성하기 위한 시스템 및 방법을 제공한다. 이를 위해 본 발명은, 각 내부 상태들에 대한 내부 상태 속성별 선호도 및 내부 상태 속성별로 분류된 행동 선호도 값들만을 사용자로부터 입력받고, 기 설정된 초기화 알고리즘을 이용하여, 사용자가 입력한 선호도 값이 반영된 내부 상태 관련 유전자 및 행동 결정 관련 유전자의 초기값을 가지는 한 개 또는 그 이상의 로봇 지놈들로 이루어진 집합, 즉 로봇 지놈군(群)(이하 한 개의 로봇 지놈도 로봇 지놈군으로 통칭)을 생성한다. 그리고 생성된 로봇 지놈군의 각 로봇 지놈들을 마스킹 처리를 통해 각 내부 상태에 따라 적합한 내부 상태에 관련된 속성이 발현되도록 발현 여부를 결정하고, 그 속성의 증감 여부를 결정한다. 그리고 마스킹 과정을 거친 로봇 지놈들을 개성 엔진에 로드 한 후 이 개성 엔진을 현재 설정된 자극 시나리오에 따라 발현한다. 그리고 개성 엔진을 통해 발현된 로봇 지놈군의 로봇 지놈들 각각의 발현 결과들로부터 신뢰도 값을 산출하고, 그 중 추출된 일부의 로봇 지놈들의 신뢰도 값이 기 설정된 사용자 신뢰도를 만족하는지를 체크한다. 그리고 사용자 신뢰도를 만족하지 않는 경우 현재 추출된 로봇 지놈들을 변경하여 이들을 포함하는 새로운 로봇 지놈군을 생성하고 새로 생성된 로봇 지놈들을 통해 상기 과정을 반복하여 사용자 신뢰도를 만족하는 로봇 지놈을 추출한다. 이에 따라 본 발명에서는 사용자가 각 로봇 지놈의 내부 상태들에 대한 선호도들만을 입력받아 사용자가 원하는 개성을 가지는 로봇 지놈이 생성되도록 할 뿐만 아니라, 사용자가, 현재 생성된 로봇 지놈이 사용자가 원하는 개성을 가진 것임을 신뢰할 수 있다는 효과가 있다.
유전자 로봇, 개성, 로봇 지놈

Description

로봇 지놈을 생성하기 위한 시스템 및 생성 방법{SYSTEM AND METHOD FOR CREATING ROBOT GENOME}
도 1은 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템의 구성 예시도,
도 2는 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서, 사용자가 입력한 선호도 값들에 따른 로봇 지놈을 생성하는 동작 과정을 도시한 흐름도,
도 3은 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서, 사용자로부터 각 내부 상태 속성들에 대한 선호도를 입력받는 GUI 화면 생성 동작의 흐름도,
도 4는 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서, 사용자가 각각의 유전인자들에 대한 선호도 값을 입력할 수 있는 GUI 화면의 예시도,
도 5는 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서, 초기화된 로봇 지놈의 발현 여부를 체크하기 위한 자극 시나리오 설정 동작의 흐름도,
도 6은 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서, 사용자가 자극 시나리오를 설정하는 경우의 자극 시나리오 설정창의 예시도,
도 7은 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서, 현재 설정된 자극 시나리오에 따라 발현된 로봇 지놈이 사용자가 입력한 사용자 선호도를 만족하는지 여부를 판단하기 위한 신뢰도 값 산출 동작의 흐름도,
도 8은 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서, 현재 추출된 로봇 지놈들을 변경하는 동작 과정을 도시한 흐름도,
도 9는 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서 사용가능한 로봇 지놈 변경 방법 중 일반 교차 연산 방법의 예시도,
도 10은 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서 사용가능한 로봇 지놈 변경 방법 중 독립 교차 연산 방법의 예시도,
도 11은 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서 사용가능한 로봇 지놈 변경 방법 중 균등 교차 연산 방법의 예시도,
도 12는 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서 사용가능한 로봇 지놈 변경 방법 중 집합 교차 연산 방법의 예시도,
도 13은 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서, 변경된 로봇 지놈들을 포함하는 새로운 로봇 지놈군을 생성하는 동작 과정을 도시한 흐름도,
도 14a는 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서, 초기 생성된 로봇 지놈의 예시도,
도 14b는 로봇 지놈군들의 발현 결과를 체크한 결과를 보이는 예시도,
도 15는 사용자 신뢰도를 만족하는 로봇 지놈의 예를 도시한 예시도.
본 발명은 유전자 로봇(genetic robot)에 관한 것으로, 특히 사용자 입력에 따른 유전자 로봇의 유전자 코드를 생성하기 위한 시스템 및 방법에 대한 것이다.
일반적으로 유전자 로봇이라는 것은, 자신의 고유한 유전자 코드(genetic code)를 가지는 인공 생명체(artificial creature)나 소프트웨어 로봇(software robot : Sobot) 또는 일반적인 로봇(robot) 을 말하는 것이다. 그리고 로봇 유전자 코드라는 것은 다수의 인공 염색체(artificial chromosome)들로 구성된 하나의 로봇 지놈(robot genome)을 의미한다. 여기서 소봇이라는 것은 네트워크를 통해 이동하면서 때론 독립적인 소프트웨어 에이전트로서 사용자와 상호작용을, 때론 센서 네트워크와 하드웨어 로봇을 연동하는 로봇의 지능부로서 동작할 수 있는 소프트웨어적인 인공 생명체를 말한다.
상기 로봇 지놈에 정의된 다수의 인공 염색체들은 로봇 외부의 환경과 상호작용을 하면서 로봇 내부의 동기, 항상성, 감정 상태 등으로 구성된 내부 상태 변화와 그에 따른 발현 행동을 결정짓는 로봇 고유의 개성 또는 인격(robot personality)을 정의하게 된다. 여기서 인공 생명체 및 동기(motivation), 항상성(homeostasis), 감정(emotion), 행동(Behavior) 등의 정의는 하기 표 1에서 보이고 있는 바와 같다.
Figure 112008032316681-pat00143
그리고 상기 인공 염색체라는 것은, 필수 요소 관련 유전자와 내부 상태 관련 유전자, 그리고 행동 결정 관련 유전자로 구분할 수 있다. 여기서 필수 요소 관련 유전자라는 것은 내부 상태 변화와 외부 행동 발현에 큰 영향을 미치는 필수 파라미터들을 말하는 것이고, 내부 상태 관련 유전자라는 것은 로봇에게 가해지는 외부 입력에 연관되어 로봇의 내부 상태에 영향을 미치는 파라미터들을 말하는 것이다. 그리고 행동 결정 관련 유전자라는 것은, 현재 결정된 내부 상태에 따라, 상기 내부 상태와 관련된 외부 행동을 결정짓는 파라미터들을 말하는 것이다.
여기서 내부 상태라는 것은 동기, 항상성, 감정등의 상태를 말하는 것이다. 즉, 로봇의 내부 상태는 하기 표 2에서 보이고 있는 바와 같이 각각의 내부 상태와, 각 외부 자극에 따른 내부 상태의 파라미터, 즉 내부 상태 관련 유전자에 의해 결정되어 질 수 있다.
Figure 112008032316681-pat00144
이는 행동 결정 관련 유전자의 경우도 마찬가지이다. 다만 행동 결정 관련 유전자의 경우는 상기 외부 자극 대신, 다양한 행동들이 포함된다는 점이 다를 뿐이다. 즉, 행동 결정 관련 유전자의 경우 각각의 내부 상태에 대해 특정 행동에 대한 다양한 파라미터들이 포함된다. 그리고 예를 들어 필수 요소 유전자가, 각각의 내부 상태 변화와 외부 행동 발현에 큰 영향을 미치는 필수 파라미터들로서, 휘발성 여부, 초기값, 평균값, 수렴값 및 시간에 따른 감쇄값과, 특정 시간에 의해 특별히 정해지는 특정값으로 구성되는 경우, 필수 요소 관련 유전자의 경우 역시, 각각의 내부 상태, 즉 동기, 항상성, 그리고 감정의 내부 상태들에 따른 휘발성 여부, 초기값, 평균값, 수렴값, 감쇄값 그리고 특정값등이 포함될 수 있다. 이처럼 로봇 지놈은, 내부 상태들과, 각 내부 상태에 대응하는 내부 상태 변화 및 외부 행동 발현에 필수적인 요소들의 파라미터들로 이루어지는 필수 요소 관련 유전자, 그리고 다양한 외부 자극들과, 그 외부 자극들에 대응되는 각 내부 상태들의 파라미터들로 이루어지는 내부 상태 관련 유전자, 그리고 다양한 발현 행동들과, 그 발현 행동들에 대응되는 각 내부 상태들의 파라미터들로 이루어지는 행동 결정 관련 유전자들로 이루어진다. 즉, 로봇 지놈은, 하기 표 3에서 보이고 있는 바와 같이 각 내부 상태들과, 그 내부 상태에 각각 대응되는 필수적인 요소들, 외부 자극들, 그리고 발현 행동들의 2차원적 매트릭스(Matrix)를 통해 표현될 수 있다.
Figure 112008032316681-pat00145
따라서 각 내부 상태들의 속성이 많을수록, 그리고 외부 자극과 행동 결정 및 필수 요소의 개수가 많을수록 로봇은 더욱 많은 수의 유전자를 가질 수 있게 되고, 이에 따라 더욱 다양한 행동을 표현할 수 있게 된다. 그런데 문제는 이러한 유전자들의 파라미터를 사용자가 직접 입력하여야 한다는 것이다. 일 예를 들어 내부 상태의 속성수가 14개이고, 필수 요소들이 5개, 그리고 외부 자극의 수가 47개, 발현 행동의 종류가 77개인 경우, 사용자가 입력하여야 하는 파라미터, 즉 유전자의 수는, 필수 요소 관련 유전자 70개(5*14), 내부 상태 관련 유전자 658개(47*14), 행동 결정 관련 유전자 1078개(77*14), 총 1806개(=70+658+1078)에 달한다. 따라서 이러한 경우 사용자가 일일이 이렇게 많은 수의 파라미터를 직접 입력하기가 곤란하다는 문제점이 있다.
또한 이 뿐만 아니라, 사용자가 각 파라미터들을 모두 입력하였다 하더라도, 사용자는 자신이 입력한 파라미터에 따라 발현되는 로봇의 개성이 정말 사용자가 원한 것인지 아닌지를 확인할 수 있는 방법이 없다는 문제점이 있다. 즉, 로봇의 개성은 직접 발현되기 전에는 사용자가 알 수 없으며, 또한 발현이 되었다 하더라도 정말 사용자가 원하는 개성을 가지고 있는 것인지 여부를 시험할 방법이 없다는 문제점이 있다.
현재, 이러한 문제점들을 해소하기 위해, 아예 로봇이 생성될 때 모든 유전자가 균일한 값을 가지도록 설정하여 출시하고, 사용자에 의한 학습 등을 통해 사용자가 원하는 개성을 가지는 로봇이 될 수 있도록 하거나(전자), 아니면 각각의 개성 별로 로봇의 개성 모델을 만들어 놓고, 그 중에서 어느 하나를 사용자가 선택할 수 있도록 하기도 한다(후자). 그런데 상기 전자의 경우, 사용자가 원하는 개성에 따라 로봇을 학습시키기에는 너무나 오랜 시간이 걸린다는 문제점이 있고, 상기 후자의 경우 개성 모델이 동일한 로봇들은 동일한 개성을 가지게 되므로,비록 그 개성 모델이, 특정한 개성이 발현된다는 사실이 검증되었다 할지라도 사용자마다 특화된 로봇의 개성을 특화시킬 수 없다는 문제점이 있다. 즉, 현재의 로봇 지놈 생성 방법들 역시 기존의 로봇 지놈 생성 시에 발생하는 문제점들을 해결할 수 없다는 문제점이 있다.
그러므로 본 발명의 목적은, 유전자 로봇의 로봇 지놈 작성시, 사용자가 원하는 개성을 가진 로봇이 발현될 수 있도록 하는 로봇 지놈을 생성하기 위한 로봇 지놈 생성 시스템 및 방법을 제공함에 있다.
또한 본 발명의 다른 목적은, 유전자 로봇의 로봇 지놈 작성시, 사용자가 원하는 개성이 발현될 수 있는 로봇 지놈을 보다 용이하게 할 수 있는 로봇 지놈 생성 시스템 및 방법을 제공함에 있다.
상술한 목적을 달성하기 위한 본 발명의 로봇 지놈 생성 시스템은, 사용자로부터 각 외부 자극들에 따른 내부 상태 속성들에 대한 내부 상태 속성별 선호도 및 각 내부 상태 속성별로 분류된 행동 선호도를 포함하는 사용자 선호도를 입력받기 위한 사용자 선호도 입력부와, 상기 내부 상태 속성별 선호도 및 상기 행동 선호도를 반영하여 생성된 내부 상태 관련 유전자 및 행동 결정 관련 유전자의 초기값 및 기 설정된 조건에 따라 결정된 필수 요소 관련 유전자의 초기값을 포함하는 로봇 지놈을 다수 포함하는 로봇 지놈군(群)을 생성하는 초기값 생성부와, 상기 다수의 로봇 지놈들 각각에 기 설정된 마스킹(Masking) 테이블을 적용하여, 상기 유전자들 중 각 외부 자극들 및 발현 행동들에 대해 발현되는 내부 상태 관련 유전자들 및 행동 결정 관련 유전자들을 결정하고, 발현이 결정된 유전자들의 발현 속성 증감 여부를 결정하는 마스킹 처리를 수행하는 마스킹부와, 상기 로봇 지놈들이 상기 입력된 사용자 선호도들에 적합한지 시험하기 위한 자극 시나리오에 따라 상기 로봇 지놈들 각각을 발현하여 그 자극 시나리오에 따른 발현 결과 처리를 수행하는 발현부와, 상기 자극 시나리오에 따른 발현 결과들을 입력받아, 각 로봇 지놈의 신뢰도 값을 결정하며 상기 로봇 지놈군 중에서 추출된 로봇 지놈들의 발현 결과에 따른 신뢰도 값이 상기 사용자 선호도에 적합한지 여부를 판단하는 적합도 판단부와, 상기 추출된 로봇 지놈들이 입력되는 경우, 입력된 로봇 지놈들을 기 설정된 변경 방법에 따라 변경하는 변경부와, 상기 적합도 판단부의 판단 결과에 따라 상기 추출된 로봇 지놈들의 변경 또는 상기 추출된 로봇 지놈들 중 어느 하나의 출력을 결정하고, 상기 추출된 로봇 지놈들이 변경이 결정되는 경우 상기 변경부를 제어하여 상기 추출된 로봇 지놈들을 변경하고, 상기 내부 상태 속성별 선호도 및 상기 행동 선호도가 반영된 다수의 새로운 로봇 지놈 및 상기 변경된 로봇 지놈들을 포함하는 기 설정된 개수의 새로운 로봇 지놈군을 생성하도록 상기 초기값 생성부를 제어하며, 생성된 새로운 로봇 지놈군에 대해 상기 마스킹 처리와 상기 발현 처리가 재수행 되도록 상기 마스킹부 및 발현부를 제어하고, 상기 발현 처리의 재수행 결과에 따른 로봇 지놈들을 다시 상기 적합도 판단부에 입력하는 제어부를 포함한다.
또한 본 발명의 로봇 지놈 생성 방법은, 사용자로부터 각 외부 자극들에 따 른 내부 상태 속성들에 대한 내부 상태 속성별 선호도 및 각 내부 상태 속성별로 분류된 행동 선호도를 포함하는 사용자 선호도를 입력받는 사용자 선호도 수신 단계와, 상기 내부 상태 속성별 선호도 및 상기 행동 선호도를 반영하여 생성된 내부 상태 관련 유전자 및 행동 결정 관련 유전자의 초기값 및 기 설정된 조건에 따라 결정된 필수 요소 관련 유전자의 초기값을 포함하는 로봇 지놈을 다수 포함하는 로봇 지놈군(群)을 생성하는 로봇 지놈군 생성 단계와, 상기 다수의 로봇 지놈들 각각에 기 설정된 마스킹(Masking) 테이블을 적용하여, 상기 유전자들 중 각 외부 자극들 및 발현 행동들에 대해 발현되는 내부 상태 관련 유전자들 및 행동 결정 관련 유전자들을 결정하고, 발현이 결정된 유전자들의 발현 속성 증감 여부를 결정하는 마스킹 처리 단계와, 상기 로봇 지놈들이 상기 입력된 사용자 선호도들에 적합한지 시험하기 위한 자극 시나리오에 따라 상기 로봇 지놈들 각각을 발현하여 그 자극 시나리오에 따른 각 로봇 지놈들의 발현 결과들을 출력하는 발현 단계와, 상기 자극 시나리오에 따른 발현 결과들과 해당 로봇 지놈들을 입력받아, 각 로봇 지놈들의 신뢰도 값을 결정하며, 상기 로봇 지놈군 중에서 추출된 로봇 지놈들의 신뢰도 값이 상기 사용자 선호도에 적합한지 여부를 판단하는 적합도 판단 단계와, 상기 적합도 판단부의 판단 결과에 따라 상기 추출된 로봇 지놈들의 신뢰도 값이 상기 사용자 선호도에 적합하지 않은 경우, 상기 로봇 지놈들을 기 설정된 변경 방법에 따라 변경하는 변경 단계와, 상기 내부 상태 속성별 선호도 및 상기 행동 선호도가 반영된 다수의 새로운 로봇 지놈 및 상기 변경된 로봇 지놈들을 포함하는 기 설정된 개수의 새로운 로봇 지놈군을 생성하는 2차 로봇 지놈군 생성 단계와, 상기 2차 로봇 지놈군에 대한 상기 마스킹 처리 단계, 상기 발현 단계, 상기 적합도 판단 단계 및 상기 적합도 판단 결과에 따라 상기 변경 단계와 상기 2차 로봇 지놈군 생성 단계를 반복 수행하는 반복 단계를 포함한다.
이하 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 도면들 중 동일한 구성 요소들은 가능한 한 어느 곳에서든지 동일한 부호들로 나타내고 있음에 유의하여야 한다. 하기 설명 및 첨부 도면에서 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략한다.
먼저 본 발명의 완전한 이해를 돕기 위해, 본 발명의 기본 원리를 설명하면, 본 발명에서는, 각 내부 상태들에 대한 내부 상태 속성별 선호도들 및 내부 상태 속성별로 분류된 행동 선호도들을 사용자로부터 입력받고, 기 설정된 초기화 알고리즘을 이용하여, 사용자가 입력한 선호도들이 반영된 내부 상태 관련 유전자들 및 행동 결정 관련 유전자들의 초기값을 가지는 로봇 지놈들의 집합, 즉 로봇 지놈군(群)을 생성한다. 그리고 생성된 로봇 지놈군의 각 로봇 지놈들을 마스킹 처리를 통해 각 내부 상태에 따라 적합한 내부 상태 관련 유전자 및 행동 결정 관련 유전자의 속성이 발현되도록 발현 여부를 결정하고, 그 속성의 증감 여부를 결정한다. 그리고 마스킹 과정을 거친 로봇 지놈들을 현재 설정된 자극 시나리오에 따라 발현한다. 그리고 로봇 지놈군의 로봇 지놈들 각각의 발현 결과들로부터 신뢰도 값을 산출하고, 그 중 추출된 일부의 로봇 지놈들의 신뢰도 값이 기 설정된 사용자 신뢰도를 만족하는지를 체크한다. 그리고 사용자 신뢰도를 만족하지 않는 경우 현재 추출된 로봇 지놈들을 변경하여 이들을 포함하는 새로운 로봇 지놈군을 생성한다. 그 리고 새로 생성된 로봇 지놈군의 로봇 지놈들을 통해 상기 과정을 반복하여 사용자 신뢰도를 만족하는 로봇 지놈을 추출한다. 이에 따라 본 발명에서는 사용자가 각각의 로봇 지놈의 내부 상태들에 대한 선호도만을 입력받아 사용자가 원하는 개성을 가지는 로봇 지놈이 생성되도록 할 뿐만 아니라, 사용자가, 현재 생성된 로봇 지놈이 사용자가 원하는 개성을 가진 것임을 신뢰할 수 있다는 효과가 있다.
도 1은 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템의 구성 예를 보이고 있는 도면이다.
도 1을 참조하여 살펴보면, 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템은, 제어부(100) 및 제어부(100)와 연결되는 사용자 선호도 입력부(104), 초기값 생성부(106), 마스킹부(108), 자극 시나리오 생성부(110), 발현부(112), 적합도 판단부(114), 변경부(116), 및 출력부(118)를 포함한다.
여기서 제어부(100)는 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템의 각 부분을 제어한다. 그리고 제어부(100)는 초기값 제어부(100)를 제어하여 사용자가 입력한 선호도들을 반영하는 한 개 또는 다수의 로봇 지놈들을 생성한다. 이하 한 개 또는 그 이상의 로봇 지놈들을 원소로서 가지는 로봇 지놈들의 집합을 로봇 지놈군이라 한다. 그리고 제어부(100)는 이들을 각각 마스킹부(108)를 통해 마스킹 처리를 한 다음, 이들을 현재 설정된 자극 시나리오에 따라 발현한다. 그리고 제어부(100)는 발현된 로봇 지놈들 중 일부를 추출하고, 현재 추출된 로봇 지놈들이 사용자 신뢰도를 만족한다면 그 중 어느 하나를 선택하여 사용자가 설정한 선호도에 적합한 개성을 가지는 로봇 지놈으로서 출력한다. 그러나 만약 추출된 로봇 지놈들 이 사용자 신뢰도를 만족하지 않는다면, 제어부(100)는 이들을 변경하고, 변경된 로봇 지놈들 및 새로운 로봇 지놈들을 기 설정된 개수만큼 포함하는 새로운 로봇 지놈군을 다시 생성한다. 그리고 상기 새로 생성된 로봇 지놈군의 로봇 지놈들을 다시 자극 시나리오에 따라 발현한다. 그리고 다시 사용자 신뢰도를 만족하는 로봇 지놈들이 있는지를 체크한다.
그리고 메모리부(102)는, 제어부(100)의 처리 및 제어를 위한 프로그램과 각종 참조 데이터를 저장한다. 그리고 제어부(100)의 워킹 메모리(working memory)를 제공하며, 갱신 가능한 각종 보관용 데이터를 저장하기 위한 저장 영역을 제공한다. 여기서 상기 저장 영역에는 상기 마스킹(Masking) 작업을 수행하기 위한 마스킹 테이블을 비롯하여, 사용자가 설정한 것뿐만 아니라 기 설정된 다수의 자극 시나리오 설정 정보들이 저장될 수 있다. 그리고 사용자가 각각의 내부 상태 유전자별로 내부 상태 속성별 선호도 및 각 내부 상태 속성별로 분류된 행동 선호도를 입력할 수 있는, GUI(Graphic User Interface)를 생성하기 위한 GUI 생성 데이터가 저장될 수 있다.
그리고 사용자 선호도 입력부(104)는, GUI 생성부(120)를 구비하여 제어부(100)의 제어에 따라, 사용자가 내부 상태 관련 유전자 및 행동 결정 관련 유전자들의 내부 상태 속성별 선호도 값들을 입력할 수 있도록 기 설정된 GUI(Graphic User Interface) 화면을 생성하고 이를 출력한다. 여기서 상기 GUI 인터페이스는 다양하게 구성될 수 있으며, 사용자가 선호도 값을 입력하는 개수를 최소화하기 위해, 각 내부 상태 유전자별로 내부 상태 속성별 선호도를 입력받기 위한 입력 메뉴 와, 각 내부 상태 유전자별로 행동 선호도를 입력받는 입력 메뉴를 포함하여 구성될 수도 있다.
또한 비록 도시되지는 않았지만, 상기 사용자 선호도 입력부(104)는 상기 GUI를 표시하기 위한 표시부 및 사용자의 키 입력을 수신하기 위한 사용자 키 입력부를 구비할 수 있다. 그러나 만약 본 발명의 실시 예에 따른 로봇 지놈 시스템이 무선 또는 유선 네트워크(Network)를 통해 사용자의 로봇 플랫폼(Platform)과 접속되는 경우, 상기 사용자 선호도 입력부(104)는 상기 표시부 대신, 상기 GUI 화면을 생성하기 위한 데이터를 상기 로봇 플랫폼에 출력하는 GUI 출력부와, 상기 사용자 키 입력부 대신 상기 네트워크를 통해 상기 로봇 플랫폼으로부터 사용자 입력을 수신하는 사용자 입력 데이터 수신부를 구비할 수도 있음은 물론이다.
그리고 초기값 생성부(106)는, 상기 사용자 선호도 입력부(104)를 통해 입력받은 내부 상태 속성별 선호도 및 행동 선호도를, 기 설정된 초기값 설정 알고리즘을 통해 현재 설정된 각 내부 상태 관련 유전자 및 행동 결정 관련 유전자의 파라미터에 반영하여 각 유전자들의 초기값들을 산출한다. 여기서 상기 내부 상태 관련 유전자들의 초기값은, 비록 동일한 외부 자극이라고 할지라도 관련된 내부 상태, 즉 내부 상태의 속성에 따라 다르게 계산되어 질 수 있다. 즉, 예를 들어 내부 상태의 속성이 '친밀감'인 경우, 외부 자극'때리기'와 외부 자극'달래기'는 서로 다른 방식으로 계산되어 질 수 있다. 그리고 이러한 계산 방식은, 상기 마스킹 처리를 위해 사용되는 마스킹 테이블(Masking table)의 값에 의해 결정되어 질 수 있다. 즉, 상기 내부 상태 관련 유전자의 초기값은 하기 수학식 1에 따라 결정되어 질 수 있다.
Figure 112008032316681-pat00146
여기서
Figure 112008032316681-pat00147
는 현재 내부 상태의 속성에 대해 입력된 사용자 선호도 값을 의미하며,
Figure 112008032316681-pat00148
,
Figure 112008032316681-pat00149
는 상기 현재 외부 자극에 기 설정된 제어 상수이다. 그리고
Figure 112008032316681-pat00150
는 현재 내부 상태 속성에 따른 내부 상태 관련 유전자의 초기값
Figure 112008032316681-pat00151
이 설정될 수 있는 최대값이다. 이는 필수 요소 관련 유전자에 의해 정해질 수 있다. 그리고
Figure 112008032316681-pat00152
는 상기 외부 자극(예: 어루만지기)과 내부 상태 속성(예: 친밀감)에 해당되는 마스킹 테이블의 값(이하 마스킹 값이라 칭함)이다.
따라서 상기 마스킹 값(
Figure 112008032316681-pat00153
)이, 0미만일 때는 상기 사용자 선호도 값을 기 설정된 제어 상수로 나누게 되고, 상기 마스킹 값(
Figure 112008032316681-pat00154
)이 0이상일 때는 기 설정된 제어 상수를 상기 사용자 선호도 값으로 나누게 된다. 이에 따라 현재 내부 상태 속성에 따른 내부 상태 관련 유전자의 초기값
Figure 112008032316681-pat00155
는, 마스킹 값이 0이상인 경우에는
Figure 112008032316681-pat00156
의 연산에 의해 기 설정된 최대값(
Figure 112008032316681-pat00157
) 보다 큰 값이 결정될 확률이 높아진다. 그리고 마스킹 값이 0미만인 경우에는,
Figure 112008032316681-pat00158
의 연산에 의해 기 설정된 최대값(
Figure 112008032316681-pat00159
) 보다 작은 값이 결정될 확률이 높아진다.
따라서 사용자 선호도가 높은 내부 상태에 대해서는, 마스킹 값이 0이상인 내부 상태 관련 유전자의 초기값은 큰 값이 결정될 확률이 높아지지만, 마스킹 값이 0미만인 내부 상태 관련 유전자의 초기값은 작은 값이 결정될 확률이 높아진다. 그리고 이와 반대로, 사용자 선호도가 낮은 내부 상태 속성에 대해서는, 마스킹 값이 0이상인 내부 상태 관련 유전자의 초기값은 작은 값이 결정될 확률이 높아지지만, 마스킹 값이 0미만인 내부 상태 관련 유전자의 초기값은 큰 값이 결정될 확률이 높아진다. 즉, 사용자가 내부 상태 속성'친밀감'의 선호도를 높이면, 이에 대해 마스킹 값이 0이상인 외부 자극'어루만지기'의 내부 상태 관련 유전자의 초기값은 큰 값이 결정될 확률이 높아지고, 마스킹 값이 0미만인 외부 자극 '때리기'의 내부 상태 관련 유전자의 초기값은 작은 값이 결정될 확률이 높아진다. 그러나 사용자가 내부 상태 속성 '친밀감'의 선호도를 낮추면, 이에 대해 마스킹 값이 0 이상인 외부 자극'어루만지기'의 내부 상태 관련 유전자 초기값은 작은 값이 결정될 확률이 높아지고, 마스킹 값이 0 미만인 외부 자극'때리기'의 내부 관련 유전자 초기값은 큰 값이 결정될 확률이 높아진다.
이에 반해 상기 행동 결정 관련 유전자 별 초기값은 행동 결정 관련 유전자 마스킹이 적용된 후에 결정될 수 있다. 행동 결정 관련 유전자의 경우, 내부 상태에 따라 발현되는 행동을 결정짓기 위한 유전자이기 때문에 행동 결정 관련 유전자 마스킹 값은 각 내부 상태별로 관련된 행동들의 발현 여부에 대한 정보를 가진다. 즉, 행동 결정 관련 유전자의 마스킹 값이 0인 경우 각 내부 상태에 관련된 행동들은 발현되지 않을 것이고, 마스킹 값이 1인 경우 각 내부 상태에 관련된 행동들은 발현될 확률을 가지게 된다. 그러므로 행동 결정 관련 유전자의 경우 마스킹 값은 0 미만의 값을 가지지 않는다. 이에 따라 상기 행동 결정 관련 유전자의 초기값은 하기 수학식 2와 같이 결정될 수 있다.
Figure 112008032316681-pat00160
여기서 상기
Figure 112008032316681-pat00161
는 현재 내부 상태 속성에 대해 입력된 사용자 선호도 값을 의미하며,
Figure 112008032316681-pat00162
는 상기 현재 행동 발현에 기 설정된 일정 상수이다. 그리고
Figure 112008032316681-pat00163
는 현재 내부 상태 속성에 따른 행동 결정 관련 유전자의 초기값
Figure 112008032316681-pat00164
이 설정될 수 있는 최대값이다. 여기서 상기
Figure 112008032316681-pat00165
는 필수 요소 관련 유전자에 의해 정하여질 수 있다. 따라서 사용자 선호도 값이 증가하면, 이에 따라
Figure 112008032316681-pat00166
연산에 의해 결정되는 행동 결정 관련 유전자의 초기값
Figure 112008032316681-pat00167
는 증가한다. 그러나 만약 사용자 선호도 값이 감소하면, 이에 따라
Figure 112008032316681-pat00168
연산에 의해 결정되는 행동 결정 관련 유전자의 초기값
Figure 112008032316681-pat00169
는 감소한다.
한편, 필수 요소 관련 유전자의 값은 상술한 바와 같이 내부 상태 관련 유전 자 및 행동 결정 관련 유전자의 발현에 큰 영향을 미치는 파라미터들이므로 사용자에 의해 설정되는 것이 아니라 미리 시스템 내부에서 설정되어 질 수도 있으며, 또는 기 설정된 조건(예 : 기 설정된 최대값 및 최소값의 범위 내)에 따라 임의로 생성될 수 있다.
그리고 이러한 각 유전자들의 초기값들이 모여서 하나의 로봇 지놈을 생성하게 된다. 그리고 하나의 로봇 지놈의 생성이 완료되면, 초기값 생성부(106)는 제어부(100)의 제어에 따라 상기 초기값 연산 과정을 반복하여 사용자 선호도가 반영된 다수의 다른 로봇 지놈들을 생성한다.
그리고 마스킹부(108)는 제어부(100)의 제어에 따라 초기값 생성부(106)로부터 생성된 로봇 지놈들을 입력받아 마스킹 과정을 수행한다. 마스킹에는 필수 요소 관련 유전자 마스킹, 내부 상태 관련 유전자 마스킹, 행동 결전 관련 유전자 마스킹과 같이 유전자 종류별로 마스킹이 존재하고 그 마스킹 방법도 달라진다. 여기선 마스킹이란 +1,0, -1의 숫자를 곱해주는 것을 의미하지만 광의적인 의미로는 어떤 속성의 발현 여부 및 증감 여부를 결정해주는 과정을 의미하며 그 값들은, 엘리자 효과 (Eliza effect) 또는 밈(Meme) 학설에 따라 사회 구성원이 일반적으로 인정하는 관습값에 따라 경험적으로 설정될 수 있다.
필수 요소 관련 유전자 마스킹은 소봇의 내부 상태 결합적인 속성(예를 들어 친밀감, 적대감 등)들이 필수 요소 관련 유전자들과 높은 상관관계가 있기 때문에 필요한 필수 요소는 1로, 필요하지 않은 요소는 0으로 마스킹하여 기능 발현 여부를 마스킹 해주고 적정 최소값과 최대값 등을 설정해 준다. 이렇게 함으로써 사용 자 선호도에 따라 일관성있게 로봇 지놈을 변경하는 것이 가능하다.
즉, 필요하지 않은 유전자 값을 1로 마스킹 할 경우 일관성을 잃어버리고 필수 요소 유전자가 모두 최대값 또는 최소값으로 수렴 또는 발산되어 내부 상태 관련 유전자의 설정 자체를 무의미하게 만들 수 있기 때문이다. 예를 들어 사용자가 '친밀감'이 높은 개성을 원하는 경우 필수 요소 관련 유전자에서 '친밀감의 시간에 따른 감쇠값'정보를 지닌 유전자 값을 낮추면 일단 올라간 친밀감은 쉽게 떨어지지 않아 긴 시간에 걸쳐 '친밀감'을 유지할 수 있다. 또는 필수 요소 관련 유전자에서 '친밀감의 시간에 따른 수렴값' 정보를 지닌 유전자 값을 높이면 시간에 따라 결국 높은 수렴값을 지니므로 높은 '친밀감'을 유지할 수 있다. 결국 이러한 유전자 값을 둘 다 1로 마스킹을 할 경우 최적화가 되면 될수록 '친밀감의 시간에 따른 감쇠값'은 최소값으로, '친밀감의 시간에 따른 수렴값은 최대값'으로 수렴될 것이다. 그러므로 이러한 경우 임의의 자극에 상관없이 한번 올라간 친밀감은 절대 떨어지지 않고, 항상 친밀감이 최대값을 지닌 일반적인 개성의 모습과는 거리가 먼 개성이 되어버리고 만다. 따라서 둘 중 하나를 1로 마스킹 한 후 적정 수준으로 최대값 또는 최소값을 고정 시키거나 0으로 마스킹을 해야 한다. 말하자면 필수 요소 관련 유전자 마스킹은 개성 형성에 있어 가장 중요한 원칙 중 하나인 '개성으로서의 그럴듯함(plausibility)'을 유지시키고 내부상태 관련 유전자와 행동 결정 관련 유전자의 존재의미를 부여하게 된다.
그리고 내부상태 관련 유전자 마스킹은 각 유전자와 연결된 자극 정보에 대해서 연관지어 소속된 내부 상태가 적절하게 증가, 감소, 또는 영향받지 않도록 +1, -1, 0으로 마스킹 함으로써 이루어진다. . 예를 들어 사용자가 외부 자극으로 '때리기'를 선택하는 경우, 일반적으로 '친밀감'속성보다 '적대감'속성이 발현되어야 하는 것이 당연할 것이다. 또한 사용자가 외부 자극으로 '달래주기'를 선택하는 경우, 일반적으로 '슬픔'속성보다 '기쁨'속성이 발현되어야 하는 것이 당연할 것이다. 이와 마찬가지로, 사용자가 '어루만지기'를 외부자극으로 선택하였는데, '공포'속성 등이 발현되어서는 안 될 것이다. 이처럼 일반적으로 사회 구성원이 인정하는 관습에 따라, 각 외부 자극 및 발현 행동에 대응되는 적합한 내부 상태 속성이 발현되도록 발현 여부를 결정하고, 그 속성의 증감 여부를 결정하는 과정이 바로 내부 상태 관련 마스킹 과정이다. 이러한 마스킹 과정은 마스킹 테이블에 의해 결정될 수 있는데, 예를 들어 마스킹 값이 +1인 경우, 그 내부 상태 관련 유전자는 증가(Positive) 속성을 가지게 되고, 마스킹 값이 -1인 경우 그 내부 상태 관련 유전자는 감소(negative) 속성을 가지게 된다. 그리고 만약 마스킹 값이 0인 경우라면 그 내부 상태 관련 유전자는 특정한 속성을 발현하지 않게 된다. 이러한 예를 들어보면 하기 표 4와 같다.
Figure 112006064358219-pat00028
상기 표 4를 참조하여 살펴보면, '밥주기'의 경우, '배고픔'의 마스킹 값은 -1이지만 기쁨의 마스킹 값은 +1이다. 그리고 나머지 마스킹 값들은 모두 0이다. 즉, 사용자가 '밥주기'를 외부 자극으로 선택하는 경우 '배고픔'속성은 감소하게 되고, '기쁨'속성은 증가하게 된다. 그리고 나머지 내부 상태 속성들, 즉 친밀감, 적대감, 무서움 등은 아무런 변화가 발생하지 않는다. 따라서 이러한 마스킹 과정을 통해 본 발명의 로봇 지놈 생성 시스템은, 현재 시대의 사회의 구성원이 일반적으로 인정하는 바를 로봇의 감성에 반영할 수 있다. 그러나 사용자의 선택에 따라 마스킹 테이블의 특정 마스킹 값을 변경하여 특정 속성이 사회의 일반적인 통념과는 다르게 발현되도록 할 수도 있음은 물론이다.
한편, 행동 결정 관련 유전자는 특정 내부 상태와 자극 정보에 관련하여 적절한 행동이 발현되거나 또는, 발현되지 않도록 1 또는 0으로 마스킹을 하게 된다. 예를 들어 '때리기'와 같은 자극이 들어오고 '친밀감' 상태가 최저의 상태에 있다면 '기쁜 표정을 하고 재롱피우기'같은 행동들은 발현되지 않아야 한다. 그리고 '으르렁 대기'와 같은 행동들이 발현이 되어야 한다. 즉, '친밀감'의 내부 상태에 관련해서 '기쁜 표정을 하고 재롱 피우기'행동의 마스킹 값은 0, '으르렁대기'의 마스킹 값은 +1이 되어야 한다.
따라서 이러한 마스킹 과정을 통해 본 발명의 로봇 지놈 생성 시스템은, 현재 시대의 사회의 구성원이 일반적으로 인정하는 바를 로봇의 개성에 반영할 수 있다. 그러나 이와는 달리 만약 사용자가 이러한 마스킹 값을 변경하기를 원한다면, 사용자의 선택에 따라 마스킹 테이블의 특정 마스킹 값을 변경하여 특정 속성이 사회의 일반적인 통념과는 다르게 발현되도록 할 수도 있음은 물론이다. 표 5는 이러한 본 행동 결정 관련 유전자들에 따른 마스킹 테이블의 예를 보이고 있는 도면이다.
Figure 112006064358219-pat00029
그리고 자극 시나리오 생성부(110)는, 제어부(100)의 제어에 따라 현재 초기값이 설정된 로봇 지놈군의 로봇 지놈들이, 사용자 선호값에 따라 적절한 개성을 발현하는지를 시험하기 위한 자극 시나리오를 생성한다. 자극 시나리오 생성부(110)는 자극 시나리오 설정부(122)를 구비하여, 사용자의 설정에 따라 현재 설정된 자극 시나리오의 내용을 변경하거나 또는 새로운 자극 시나리오를 생성할 수도 있다.
이러한 경우, 사용자는 자극 시나리오에 포함되는 자극의 종류, 자극의 발현 빈도, 그리고 자극의 지속 시간 등을 설정할 수 있다. 그리고 상기 자극 시나리오를 사용자가 설정하거나 또는 선택하는 경우, 이러한 자극 시나리오 선택창 또는 자극 시나리오 설정창은 상기 사용자 선호도 입력부(104)의 표시부를 통해 출력되거나, 아니면 상기 자극 시나리오 선택창 또는 자극 시나리오 설정창을 사용자의 로봇 플랫폼에 출력하기 위한 출력부를 통해 사용자의 로봇 플랫폼에 출력할 수 있다.
그리고 발현부(112)는, 제어부(100)의 제어에 따라 상기 설정된 자극 시나리오에 따라 현재 생성된 로봇 지놈군들의 로봇 지놈들 각각을 테스트하여 그 결과를 발현한다. 즉, 자극 시나리오 생성부(110)로부터 어느 하나의 자극 시나리오가 설정되면, 발현부(112)는 현재 설정된 자극 시나리오에 따라 상기 로봇 지놈군들의 어느 한 로봇 지놈을 선택하고 그 로봇 지놈을 상기 자극 시나리오에 설정된 시간동안, 상기 자극 시나리오에 포함된 자극들에 따른 순서대로 로봇 지놈을 발현한다. 그리고 이러한 과정을 반복하여 현재 로봇 지놈군에 포함된 모든 로봇 지놈들을 해당 자극 시나리오에 따라 발현한다. 그리고 발현부(112)에서 로봇 지놈군의 모든 로봇 지놈들이 발현되면, 제어부(100)는 그 발현 결과 및 로봇 지놈들을 적합도 판단부(114)에 인가한다.
적합도 판단부(114)는 제어부(100)의 제어에 따라 각 로봇 지놈들의 발현 결과 및 로봇 지놈들을 입력받는다. 여기서 각 지놈들의 발현 결과는 상기 자극 시나리오 동안 전체 내부 상태 속성들의 각 샘플링 타임당 궤적값과 이들의 적분값, 각 내부 상태 속성별 관련 그룹 행동들의 발현수이다. 적합도 판단부(114)는 각 지놈의 발현 결과에 대해서, 상기 자극 시나리오 동안 전체 내부 상태 속성들의 적분값들의 합에 대해 각 내부 상태 속성들의 적분값의 비율들을 산출한다. 이하 이 비율을 각 내부 상태 속성들의 점유율들이라고 칭하기로 한다. 즉, 내부 상태 속성의 점유율은, 상기 자극 시나리오 동안 매 샘플링 타임당 임의의 값을 지니는 임의의 지놈 발현 결과의 각 내부 상태 속성들에 대해, 전체 내부 상태 속성들의 발현 결과 중 어느 하나(예: 자극 시나리오 시간 동안 내부 상태 속성 '친밀감'의 내부 상태값의 적분값)와 이를 포함한 모든 내부 상태 속성들의 발현 결과들의 합(예:'친밀감', '적대감', '호기심' 등 모든 내부 상태 속성들의 내부 상태값의 적분값들의 합)의 비율을 말한다.
그리고 적합도 판단부(114)는, 상기 내부 상태 속성의 점유율들 중 어느 하나를 선택한다. 그리고 사용자가 각각의 내부 상태별로 입력한 내부 상태 속성별 선호도들 중 현재 선택된 내부 상태 속성 점유율에 대응되는 선호도를 추출한다. 그리고 사용자가 각 내부 상태 속성 별로 설정한 내부 상태 속성별 선호도들의 총합에 대해 현재 추출된 내부 상태 속성의 내부 상태 속성별 선호도의 비율을 산출한다. 이 비율을 내부 상태 속성 선호도 게인(gain)이라 칭하기로 한다. 즉, 상기 내부 상태 속성 선호도 게인은, 특정 내부 상태 속성에 대해 상기 사용자가 입력한 내부 상태 속성 선호도의 값과, 상기 사용자가 입력한 각 내부 상태 속성별 선호들의 총합에 대한 비율을 의미한다.
그리고 적합도 판단부(114)는 각각의 내부 상태 속성별로, 내부 상태 속성 선호도 게인과, 그 내부 상태 속성 선호도 게인의 내부 상태 속성에 대응되는 내부 상태 속성 점유율의 차에 대한 절대값을 산출한다. 그리고 산출된 절대값들을 합산한다. 이를 내부 상태 관련 적합도라고 칭하기로 한다.
여기서 적합도 판단부(114)는 각 내부 상태 속성들의 점유율을 산출할 수 있을 뿐만 아니라, 각 내부 상태 속성별로 분류된 행동 발현수의 점유율을 산출할 수도 있다. 이러한 경우, 적합도 판단부(114)는 자극 시나리오의 결과에 따른 로봇 지놈의 발현 결과로부터, 자극 시나리오의 결과에 의해 발현된 각 행동들에 대해, 로봇 지놈의 전체 내부 상태 속성별로 분류된 행동 발현수들의 합(또는 전체 행동 발현수)에 대한 각 내부 상태 속성별로 분류된 행동 발현수의 비율들을 산출한다. 이를 이하 각 내부 상태 속성별로 분류된 행동 발현수의 점유율이라고 칭하기로 한다.
이러한 경우 상기 적합도 판단부(114)는 내부 상태 속성별로 분류된 행동 선호도에 따라 각 내부 상태 속성별로 분류된 행동 발현수의 점유율을 산출한다. 그리고 상기 내부 상태 관련 적합도와 유사한 방식으로 각 내부 상태 속성별로 분류된 행동 발현수의 점유율과 내부 상태 속성별로 분류된 행동 선호도 게인과의 차에 대한 절대값을 각각의 내부 상태 속성별로 산출하고, 산출된 절대값들의 합을 산출한다. 이를 행동 결정 관련 적합도라고 칭하기로 한다. 이때 내부 상태 속성별로 분류된 행동 선호도 게인이란 사용자가 각각의 내부 상태 속성별로 입력한 행동 선호도들의 총합에 대해 현재 선택된 행동 선호도의 비율을 의미한다. 그리고 적합도 판단부(114)는 상기 내부 상태 관련 적합도와, 상기 행동 결정 관련 적합도를 합산하고, 이를 기 설정된 스케일링(scaling) 값으로 스케일링 한 후 기 설정된 적합도 상수에서 차감하여 신뢰도 값을 산출한다. 이처럼 본 발명의 실시 예에서 로봇 지놈군에 포함된 각각의 로봇 지놈들에 대한 발현 결과를 이용하여, 각 로봇 지놈들의 신뢰도 값을 산출하는 함수를 적합도 함수라고 칭하기로 한다. 그리고 적합도 판단부(114)는 상기 적합도 함수의 산출 결과에 따른 신뢰도 값으로 현재 선택된 로봇 지놈이, 사용자가 설정한 선호도 값들을 얼마나 잘 반영하고 있는지를 나타내는지를 판단한다.
하기 수학식 3은 이러한 신뢰도 값을 산출하기 위한 것이다. 하기 수학식 3에서는 상기 내부 상태 관련 적합도의 산출 시에 전체 내부 상태 속성들을 3종류, 즉 '동기', '항상성' 그리고 '감정'에 속하는 내부 상태들로 구분하여 각각의 경우에 따른 내부 상태 관련 적합도를 산출하고 이를 합하는 경우를 가정한 것이다.
Figure 112008032316681-pat00170
여기서
Figure 112008032316681-pat00171
는 k번째 내부 상태에 대한 가중치로서, k번째 내부 상태 적분값의 점유율의 수렴을 촉진하기 위해 기 설정되는 값을 의미한다. 그리고
Figure 112008032316681-pat00172
는 상기 기 설정된 적합도 상수를 의미하며,
Figure 112008032316681-pat00173
는 백분율 연산을 위한 스케일링 펙터(scaling factor), 즉 기준값을 의미한다.
그리고
Figure 112008032316681-pat00174
는 각 내부 상태 속성들 중 '동기'에 해당되는 내부 상태들 각각의 내부 상태 속성 선호도 게인과 내부 상태 속성 점유율 차에 대한 절대값들의 합을 구하기 위한 것이다. 즉, 여기서
Figure 112008032316681-pat00175
는 '동기'에 포함되는 내부 상태 속성들 중, k번째 내부 상태 속성에 대한 내부 상태 속성 선호도 게인을 의미하고,
Figure 112008032316681-pat00176
는 '동기'에 포함되는 내부 상태 속성들 중 k번째 내부 상태에 대한 내부 상태 속성 점유율을 의미한다. 따라서 이러한 경우
Figure 112008032316681-pat00177
의 연산 결과는 각 내부 상태 관련 유전자들 중 내부 상태가 '동기'에 포함되는 것들의 내부 상태 관련 적합도가 된다.
그리고
Figure 112008032316681-pat00178
는 각 내부 상태 속성들 중 '항상성'에 해당되는 내부 상태들 각각의 내부 상태 속성 선호도 게인과 내부 상태 속성 점유율 차에 대한 절대값들의 합을 구하기 위한 것이다. 즉, 여기서
Figure 112008032316681-pat00179
는 '항상성'에 포함되는 내부 상태 속성들 중, k번째 내부 상태 속성에 대한 내부 상태 속성선호도 게인을 의미하고,
Figure 112008032316681-pat00180
는 '항상성'에 포함되는 내부 상태 속성들 중 k번째 내부 상태에 대한 내부 상태 속성 점유율을 의미한다. 따라서 이러한 경우
Figure 112008032316681-pat00181
의 연산 결과는 각 내부 상태 관련 유전자들 중 내부 상태가 '항상성'에 포함되는 것들의 내부 상태 관련 적합도가 된다.
그리고
Figure 112008032316681-pat00182
는 각 내부 상태 속성들 중 '감정'에 해당되는 내부 상태들 각각의 내부 상태 속성 선호도 게인과 내부 상태 속성 점유율 차에 대한 절대값들의 합을 구하기 위한 것이다. 즉, 여기서
Figure 112008032316681-pat00183
는 '감정'에 포함되는 내부 상태 속성들 중, k번째 내부 상태 속성에 대한 선호도 게인을 의미하고,
Figure 112008032316681-pat00184
는 '감정'에 포함되는 내부 상태 속성들 중 k번째 내부 상태에 대한 내부 상태 속성 점유율을 의미한다. 따라서 이러한 경우
Figure 112008032316681-pat00185
의 연산 결과는 각 내부 상태 관련 유전자들 중 내부 상태가 '감정'에 포함되는 것들의 내부 상태 관련 적합도가 된다.
그리고
Figure 112008032316681-pat00186
는 각 내부 상태 속성별로, 행동 선호도 게인과 내부 상태 속성별로 분류된 행동 발현수의 점유율과의 차에 대한 절대값들의 합을 구하기 위한 것이다. 즉, 여기서
Figure 112008032316681-pat00187
는 각 내부 상태 속성들 중 k번째 내부 상태 속성별로 분류된 행동 선호도 게인을 의미하고,
Figure 112008032316681-pat00188
는 각 내부 상태 속성들 중 k번째 내부 상태에 대한 내부 상태 속성별로 분류된 행동 발현수의 점유율을 의미한다. 따라서 이러한 경우
Figure 112008032316681-pat00189
의 연산 결과는 행동 결정 관련 적합도가 된다.
그리고 상기한 수학식 3에서의 내부 상태 속성별 선호도 게인 및 행동 선호도 게인은 하기 수학식 4와 같이 구할 수 있다.
Figure 112008032316681-pat00190
여기서 상기
Figure 112008032316681-pat00191
는 상술한 바와 k번째 내부 상태 속성 선호도 게인이며, 상기
Figure 112008032316681-pat00192
는 k번째 내부 상태 속성별로 분류된 행동 선호도 게인이다. 그리고
Figure 112008032316681-pat00193
는 사용자가 GUI를 통해 입력한 k번째 내부 상태에 대한 내부 상태 속성별 선호도이며,
Figure 112008032316681-pat00194
는 사용자가 GUI를 통해 입력한 k번째 내부 상태에 속성별로 분류된 행동 선호도이다. 그리고
Figure 112008032316681-pat00195
는 각 내부 상태 속성별 선호도들의 합이며,
Figure 112008032316681-pat00196
는 각 내부 상태 속성별로 분류된 행동 선호도들의 합을 의미한다. 따라서 각 내부 상태 속성 선호도 게인은 내부 상태 속성별 선호도 값을, 전체 내부 상태 속성별 선호도 값들의 합으로 나누어 구할 수 있고, 각 내부 상태 속성별로 분류된 행동 선호도 게인은 각 내부 상태 속성별로 분류된 행동 선호도 값을, 전체 내부 상태별로 분류된 행동 선호도 값들의 합으로 나누어 구할 수 있다. 따라서 상기 수학식 3에서, 현재 선택된 로봇 지놈의 전체 내부 상태 관련 적합도는,
Figure 112008032316681-pat00197
의 연산 결과와,
Figure 112008032316681-pat00198
의 연산 결과, 그리고
Figure 112008032316681-pat00199
의 연산 결과의 합이 된다. 그리고 행동 관련 적합도는
Figure 112008032316681-pat00200
이므로, 현재 선택된 로봇 지놈의 신뢰도 값
Figure 112008032316681-pat00201
는, 상기 연산 결과들의 합을 기 설정된 적합도 상수(
Figure 112008032316681-pat00202
)에서 차감함으로써 구해질 수 있다. 그리고 적합도 판단부(114)는 추출부(124)를 통해 로봇 지놈군에 속한 모든 로봇 지놈들에 대해 이러한 신뢰도 값을 각각 산출하고, 각 로봇 지놈들로부터 추출된 신뢰도 값이 큰 순서대로 기 설정된 개수의 로봇 지놈들을 추출한다. 그리고 추출된 로봇 지놈들의 신뢰도 값이 기 설정된 사용자 신뢰도 범위에 포함되는지를 체크하여 신뢰 여부를 판단한다.
여기서 신뢰 여부란, 현재 산출된 신뢰도 값들에 따라 현재 추출된 로봇 지놈들이 사용자가 입력한 선호도에 적합한 것인지 여부를 말하는 것이다. 즉, 상기 수학식 3은 사용자가 입력한 내부 상태 속성별 선호도 값과 자극 시나리오에 따라 발현된 각 내부 상태 속성별 점유율의 차의 합을 구하기 위한 것이다. 따라서 이러한 차의 합이 적을수록, 즉 신뢰도 값이 클수록 상기 로봇 지놈은 사용자가 입력한 선호도들을 잘 반영하고 있다는 것을 나타낸다. 그러므로 적합도 판단부(114)는 상기 로봇 지놈군의 로봇 지놈들 중 신뢰도 값이 큰 순서대로 기 설정된 개수를 추출하고, 추출된 로봇 지놈들의 신뢰도 값이 기 설정된 신뢰 범위 안에 포함되어 있을 때 이를 사용자가 입력한 선호도에 적합한 것이라고 판단할 수 있다. 그리고 이러한 판단이 바로 신뢰 여부의 판단이 될 수 있다.
그리고 제어부(100)는 상기 적합도 판단부(114)의 신뢰 여부 판단 결과에 따라 현재 추출된 로봇 지놈들 중 어느 하나를 사용자 선호도에 적합한 로봇 지놈으로 출력할지 여부를 결정한다. 만약 상기 적합도 판단부(114)의 신뢰 여부 판단 결과 상기 로봇 지놈들이 사용자 선호도에 적합한 것일 경우, 제어부(100)는 상기 추출된 로봇 지놈들 중 어느 하나를 출력부(118)를 통해 출력한다. 여기서 출력부(118)는 상기 추출된 로봇 지놈들 중 어느 하나를 사용자의 로봇 플랫폼으로 출력하기 위한 것이다.
그러나 만약 상기 적합도 판단부(114)의 신뢰 여부 판단 결과 상기 로봇 지 놈들이 사용자 선호도에 적합한 것이 아닐 경우, 제어부(100)는 상기 추출된 로봇 지놈들을 변경부(116)에 인가하고, 상기 사용자가 입력한 내부 상태 속성별 선호도 및 행동 선호도를 반영하는 로봇 지놈들을 다시 생성한다.
변경부(116)는 입력받은 로봇 지놈들을 다양한 방법을 통해 변경시킨다. 이러한 변경 방법으로, 진화 연산 또는 신경 회로망 연산 등의 임의의 알고리즘을 이용할 수 있다. 여기서 진화 연산이란, 교차(Crossover), 돌연변이(Mutation) 등 진화론에 입각하여 로봇 지놈을 수세대를 걸쳐 변경 및 업데이트 시키면서, 적합도 함수에 따른 신뢰도 값을 최대화 시켜, 사용자 선호도에 최적인 지놈을 찾아내기 위해 로봇 지놈들을 변경시키는 연산을 말하는 것이다.
기존의 진화 연산이 주로 1차원 구조의 지놈과 동종(Homogeneous)의 유전자들로만 구성된 지놈을 다루었다면 본 발명에서는 2차원 구조의 이종(Heterogeneous)의 유전자들로 구성된 지놈에 적합한 교차 방법을 사용한다. 이러한 진화 연산 방법으로서는 특정 내부 상태에 따른 필수 요소 관련 유전자, 내부 상태 관련 유전자, 행동 결정 관련 유전자들을 다른 로봇 지놈과 교차하여 변경하는 일반 교차(General Crossover) 연산, 특정 내부 상태에 따른 필수 요소 관련 유전자나 내부 상태 관련 유전자, 그리고 행동 결정 관련 유전자를 각각 독립적으로 다른 로봇 지놈과 교차하여 변경하는 독립 교차(Independent crossover) 연산, 또는 특정 필수 요소 관련 유전자나, 특정 내부 상태 관련 유전자, 그리고 특정 행동 결정 관련 유전자들이 모두 내부 상태와 독립적으로 다른 로봇 지놈과 교차하여 변경하는 균등 교차(Uniform crossover) 연산, 그리고 특정 필수 요소 관련 유전자 나, 특정 내부 상태 관련 유전자, 그리고 특정 행동 결정 관련 유전자들이, 다수의 내부 상태들에 따라 집합적으로 다른 로봇 지놈과 교차되어 변경되는 집합 교차(Building crossover) 연산, 그리고 적어도 하나 이상의 특정 필수 요소 관련 유전자나 특정 내부 상태 관련 유전자, 그리고 행동 결정 관련 유전자를 임의로 선택하여 그 값을 변경하는 돌연변이 연산등이 사용될 수 있다. 그리고 상기 신경 회로망 연산으로서는 델타 규칙 등의 임의의 신경회로망 학습 연산 등이 사용될 수 있다.
여기서 변경부(116)는 일반 교차 연산, 독립 교차 연산, 균등 교차 연산, 그리고 집합 교차 연산등의 교차 연산을 이용하여 로봇 지놈의 변경을 수행한 후 돌연변이 연산 또는 신경망 연산을 다시 수행하여 한번 변경된 로봇 지놈을 다시 변경할 수도 있다. 또한 이 반대의 경우도 마찬가지로 가능함은 물론이다. 즉, 상기 변경부(116)는 기 설정된 횟수만큼 로봇 지놈들을 반복하여 임의적으로 선택되는 변경 방법들에 따라 변경할 수 있음은 물론이다.
그리고 상기 추출된 로봇 지놈들의 변경이 완료되면, 변경부(116)는 변경된 로봇 지놈들을 다시 제어부(100)에 인가한다. 그러면 제어부(100)는 상기 적합도 판단부(114)의 신뢰 여부 판단 결과에 따라 새로 생성된 로봇 지놈들에 상기 변경부(116)로부터 인가된 로봇 지놈들을 포함시켜 새로운 로봇 지놈군을 생성한다. 그리고 새로 생성된 로봇 지놈군을 다시 발현부(112)에 인가하여 현재 설정된 자극 시나리오에 따라 발현한다. 그리고 발현된 로봇 지놈들의 결과를 다시 적합도 판단부(114)에 인가하여 내부 상태 관련 적합도 및 행동 결정 관련 적합도를 산출하고 이들의 합을 이용하여 발현된 로봇 지놈들 각각의 신뢰도 값을 산출한다. 그리고 로봇 지놈들 중에서 기 설정된 개수만큼을 신뢰도 값이 큰 순서대로 추출하고, 이들의 신뢰도 값이 기 설정된 신뢰 범위에 포함되는지 여부를 체크하여 신뢰 여부를 판단한다. 그리고 신뢰 여부에 따라 어느 하나의 로봇 지놈을 추출하던지, 아니면 상기 추출된 로봇 지놈들의 신뢰도 값이 기 설정된 신뢰 범위에 포함될 때까지 이러한 과정을 반복한다.
이에 따라 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서는, 비록 사용자가 로봇 지놈을 구성하는 수천 개의 파라미터를 모두 입력하지 않았다고 하더라도 사용자가 입력한 선호도가 반영된 로봇 지놈을 생성할 수 있을 뿐만 아니라, 출력된 로봇 지놈이 사용자가 입력한 선호도들이 반영된 것임을 신뢰할 수 있다는 효과가 있다. 그리고 이러한 과정을 통해 출력되는 로봇 지놈은, 사용자가 입력한 내부 상태 속성별 선호도 및 내부 상태 속성별로 분류된 행동 선호도에 비슷한 경향을 지닐 뿐만 아니라, 단순 초기화에 의해서 만들어진 로봇 지놈과 비교했을 때에도 더욱 사용자가 입력한 선호도 값에 인접하면서도 다양한 경우의 자극 상황에서도 강인한 성능을 가질 수 있다는 효과가 있다.
도 2는 이러한 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서, 사용자가 입력한 선호도들에 따른 로봇 지놈을 생성하는 동작 과정을 도시하고 있는 도면이다.
도 2를 참조하여 살펴보면, 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템의 제어부(100)는 200단계로 진행하여 사용자 선호도 입력부(104)를 통해 GUI를 생성한다. 여기서 생성되는 GUI는 내부 상태 속성별 선호도들 및 행동 선호도들을 입력받을 수 있는 입력 메뉴를 포함한다. 이하 이러한 GUI 화면의 생성 동작을 도시하고 있는 도 3 및 상기 GUI 화면의 예를 보이고 있는 도 4를 참조하여, 상기 내부 상태 속성별 선호도들 및 행동 선호도들을 입력받을 수 있는 입력 메뉴를 포함하는 GUI 생성 과정을 자세히 살펴보기로 한다.
GUI가 생성되면, 제어부(100)는 202단계로 진행하여, 사용자로부터 각 내부 상태 속성별 선호도들 및 행동 선호도들을 상기 생성된 GUI를 통해 입력받는다. 그리고 제어부(100)는 204단계로 진행하여, 현재 입력된 내부 상태 속성별 선호도들에 따라 내부 상태 관련 유전자의 초기값들을 산출하고, 행동 선호도들에 따라 행동 결정 관련 유전자의 초기값들을 산출한다. 여기서 상기 내부 상태 관련 유전자의 초기값 및 행동 결정 관련 유전자의 초기값은 상기 수학식 1 및 수학식 2를 통해 산출될 수 있다. 그리고 산출된 내부 상태 관련 유전자들과 행동 결정 관련 유전자들 및, 기 설정되거나 또는 임의로 생성되는 필수 요소 관련 유전자를 포함하는 하나의 로봇 지놈을 생성한다. 그리고 제어부(100)는 204단계에서 이러한 로봇 지놈 생성 과정을 기 설정된 개수만큼 반복하여 하나의 로봇 지놈군을 생성한다.
그리고 제어부(100)는 206단계로 진행하여, 현재 생성된 로봇 지놈군의 로봇 지놈들에 대한 마스킹을 적용하여 마스킹 처리를 수행한다. 여기서 상기 마스킹 처리라는 것은 상술한 바와 같이 현재 설정된 로봇 지놈에 상기 마스킹 테이블의 값을 곱하여, 특정 자극 및 특정 행동에 대해 발현되는 내부 상태 속성을 결정하고, 또한 상기 특정 자극 및 특정 행동에 대해 발현되는 내부 상태 속성이 증 가(Positive)하는 속성인지, 또는 감소(Negative)하는 속성인지를 결정하기 위한 것이다.
여기서 상기 내부 상태 관련 유전자의 초기값에 대한 마스킹은 반드시 내부 상태 관련 유전자의 초기값이 설정된 후에 이루어져야 하지만, 행동 결정 관련 유전자의 초기값 생성은 상기 행동 결정 관련 유전자의 마스킹 적용이 완료된 후 수행될 수도 있다. 이는 내부 상태 관련 유전자의 경우 사용자 선호도에 따라 증가하거나 감소하는 속성을 가질 수 있으나, 행동 결정 관련 유전자의 경우는 상술한 바와 같이 발현의 여부만을 결정하는 것이므로 이를 반드시 초기값을 수행한 이후에 마스킹 과정을 수행할 필요가 없다. 즉, 행동 결정 관련 유전자의 경우 마스킹 처리를 먼저하여, 발현이 결정된 유전자들에 한해서만 초기값을 산출하는 과정을 수행하도록 함으로써 계산량을 줄일 수 있도록 할 수도 있음은 물론이다.
그리고 제어부(100)는 208단계로 진행하여 현재 설정된 자극 시나리오를 로드(load)한다. 여기서 자극(stimulate)이라는 것은 단순히 외부 적인 어떤 자극을 의미하는 것이 아니라, 특정 행동에 대한 로봇 관점에서의 인지(Perception)를 포함하는 개념이다. 즉, 단순히 '놀래키기', '어루만지기', '때리기'등의 외부 자극 뿐 아니라, '구르기', '둘러보기', '찾기' 등 특정 발현 행동이나, 이러한 특정 발현 행동을 유도하는 자극을 포함한다. 이 208단계에서 사용자는 기 저장된 자극 시나리오 중 어느 하나를 선택할 수 있지만, 사용자가 직접 자극 시나리오를 생성할 수도 있음은 물론이다. 이러한 경우 사용자는 자극 시나리오에 포함될 자극의 종류, 자극의 발현 빈도 및 자극이 가해지는 시간 등을 결정한다. 그리고 사용자에 의해 자극 시나리오가 생성 또는 선택되면, 제어부(100)는 생성 또는 선택된 자극 시나리오의 설정을 로드한다. 하기 도 5는 사용자가 자극 시나리오의 생성을 선택하는 경우 사용자의 선택에 따라 자극 시나리오를 생성하는 동작 과정을 보이고 있는 도면이며, 도 6은 이러한 자극 시나리오 생성 화면의 예를 보이고 있는 도면이다. 하기 도 5와 도 6을 참조하여 사용자가 자극 시나리오를 생성하는 과정을 더 자세히 살펴보기로 한다.
그리고 제어부(100)는 상기 208단계에서 설정된 자극 시나리오에 따라, 발현부(112)를 통해 상기 로봇 지놈군에 포함된 로봇 지놈들 각각을 발현시킨다. 그리고 제어부(100)는 로봇 지놈들에 대한 발현이 모두 완료되면 212단계로 진행하여 상기 적합도 판단부(114)에, 상기 자극 시나리오에 의해 발현된 로봇 지놈들의 발현 결과들 및 로봇 지놈들 입력한다. 그리고 상기 적합도 판단부(114)를 통해 각 로봇 지놈들의 내부 상태 관련 적합도 및 행동 결정 관련 적합도를 산출하고, 이들의 합을 이용하여 각 로봇 지놈들의 신뢰도 값을 산출한다. 그리고 해당 로봇 지놈군에 포함된 로봇 지놈들의 신뢰도 값이 모두 산출되었으면, 제어부(100)는 214단계로 진행하여, 상기 적합도 판단부(114)를 제어하여 신뢰도 값이 큰 순서대로 기 설정된 개수 만큼의 로봇 지놈들을 추출한다.
그리고 제어부(100)는 216단계에서 상기 추출된 로봇 지놈들의 신뢰도 값이 기 설정된 신뢰 범위 안에 포함되는지 여부를 판단한다. 여기서 상기 로봇 지놈들의 신뢰도 값이 신뢰 범위 안에 포함되는지 여부를 판단하는 것은 사용자 선택 또는 기 설정된 바에 따라 다양하게 설정될 수 있다. 즉, 현재 추출된 모든 로봇 지 놈들의 신뢰도 값이 상기 신뢰 범위 안에 포함되어야 상기 로봇 지놈들이 사용자 선호도에 적합한 것으로 판단하거나, 현재 추출된 모든 로봇 지놈들의 신뢰도 값들 중 대푯값(예:신뢰도값들의 평균, 중앙값, 최대값 또는 최소값)이 상기 신뢰 범위 안에 포함될 경우 상기 로봇 지놈들이 사용자 선호도에 적합한 것으로 판단할 수도 있다.
그리고 제어부(100)는 상기 216단계의 판단 결과, 만약 상기 추출된 로봇 지놈들이 사용자 선호도에 적합한 것으로 판단되는 경우에는 222단계로 진행하여 상기 추출된 로봇 지놈들 중 어느 하나를 선택하여 이를 출력한다. 이 222단계에서 제어부(100)는 상기 로봇 지놈들을 선택함에 있어서, 기 설정된 바 또는 사용자의 선택에 따라, 상기 추출된 로봇 지놈들 중 어느 하나를 임의로 선택하거나 또는 상기 추출된 로봇 지놈들 중 가장 신뢰도 값이 큰 로봇 지놈을 선택할 수 있다.
그러나 상기 216단계의 판단 결과 만약 상기 추출된 로봇 지놈들이 사용자 선호도에 적합한 것으로 판단되지 않는 경우에는, 제어부(100)는 218단계로 진행하여 추출된 로봇 지놈들을 변경부(116)로 인가하여 다양하게 변경한다.
변경부(116)는 상술한 바와 같이, 진화연산을 이용할 경우 일반 교차 연산, 독립 교차 연산, 균등 교차 연산, 그리고 집합 교차 연산과 돌연변이 연산 알고리즘 또는 신경회로망 연산을 이용할 경우 델타 룰(Rule), 기울기 하강(Gradient descent) 등 신경회로망의 다양한 업데이트 알고리즘등을 통해 다양한 방식으로 입력된 로봇 지놈들의 필수 요소 관련 유전자, 내부 상태 관련 유전자 및 행동 결정 관련 유전자들을 변경시킨다. 하기 도 8은 이러한 로봇 지놈의 변경 시의 동작 과 정을 도시하고 있는 도면이며, 하기 도 9에서 도 12는 상기 진화 연산 중, 일반 교차 연산, 독립 교차 연산, 균등 교차 연산, 그리고 집합 교차 연산의 예를 보이고 있는 도면이다. 하기 도 8에서 도 12를 참조하여 이러한 로봇 지놈의 변경 동작 과정을 자세히 살펴보기로 한다.
상기 변경부(116)를 통해 로봇 지놈들의 변경 과정이 완료되면, 제어부(100)는 220단계로 진행하여 상기 변경된 로봇 지놈들을 포함하는 기 설정된 개수의 새로운 로봇 지놈군을 생성한다. 여기서 상기 변경된 로봇 지놈들을 제외한 다른 로봇 지놈들은, 현재 입력된 사용자 선호도를 반영하여 그 초기값이 생성되고 마스킹부(108)를 통해 마스킹 과정을 거친 로봇 지놈들이다.
그리고 상기 변경된 로봇 지놈들을 포함하는 다수의 로봇 지놈들을 포함하는 새로운 로봇 지놈군이 생성되면, 제어부(100)는 상기 210단계로 진행하여 다시 현재 설정된 자극 시나리오에 따라 새로 생성된 로봇 지놈군들의 로봇 지놈들 각각을 발현한다. 그리고 이들 각각에 대한 신뢰도 값을 산출하는 212단계 및 이들 중 일부를 추출하는 214단계를 반복 수행한 후 현재 추출된 로봇 지놈들의 신뢰도 값이 사용자 적합도를 만족하는 지 여부를 다시 판단한다. 그리고 판단 결과에 따라 다시 210단계 및 216단계를 반복 수행하던지 아니면, 222단계로 진행하여 사용자 선호도에 적합한 어느 하나의 로봇 지놈을 출력한다. 따라서 본 발명은, 사용자가 선호도 값이 반영된 로봇 지놈을 생성할 수 있을 뿐만 아니라, 본 발명의 실시 예에 따라 출력된 로봇 지놈은 사용자가 입력한 선호도에 적합한 것으로 신뢰할 수 있다.
도 3은 상술한 바와 같이, 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서, 사용자로부터 각 유전인자들에 대한 선호도를 입력받는 GUI 화면을 생성하는 동작의 흐름을 도시한 흐름도이다.
상기 도 3을 참조하여 살펴보면, 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템의 제어부(100)는, 사용자가 로봇 지놈의 생성 시작을 선택하는 경우 300단계로 진행하여, 각 내부 상태 속성들에 대한 내부 상태 속성별 선호도를 사용자가 설정할 수 있도록 하는 입력 메뉴인 내부 상태 속성별 선호도 입력 메뉴를 생성한다. 그리고 제어부(100)는 302단계로 진행하여 각 내부 상태 속성들에 대한 행동 선호도를 사용자가 설정할 수 있도록 하는 입력 메뉴인 행동 선호도 입력 메뉴를 생성한다. 그리고 제어부(100)는 304단계로 진행하여 상기 내부 상태 속성별 선호도 입력 메뉴 및 상기 행동 선호도 입력 메뉴를 포함하는 GUI를 생성한다.
도 4는 이러한 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서, 사용자가 각각의 유전인자들에 대한 선호도 값을 입력할 수 있는 GUI 화면의 예를 보이는 예시도이다.
도 4를 참조하여 살펴보면, 본 발명의 실시 예에 따른 GUI 화면은 상기 도 300단계와 302단계에서 언급한 바와 같이, 각각의 내부 상태 속성별로 내부 상태 속성별 선호도 입력 메뉴와, 행동 선호도 입력 메뉴가 포함된다. 즉, 본 발명의 실시 예 에서는 사용자가 각각의 내부 상태 속성에 대한 선호도만을 입력함으로써 사용자가 입력하는 파라미터의 수를 최소화시킬 수 있도록 하는 것을 가정하기로 한다. 따라서 이러한 경우 만약 내부 상태의 개수, 즉 내부 상태의 속성의 개수가 14 개인 경우라면, 사용자는 각각의 내부 상태 속성들에 대한 내부 상태 속성별 선호도 14개와 각각의 내부 상태 속성들에 대한 행동 선호도 14개, 즉 모두 28개의 선호도만을 입력하면 된다.
그러면 제어부(100)는 202단계로 진행하여 사용자가 입력한 선호도들을 수신한다. 도 4는 이러한 경우에 실제로 사용자가 특정 내부 속성들에 대한 선호도들을 입력한 경우의 예를 보이고 있다. 이를 자세히 살펴보면, 사용자는 '동기'에 해당되는 내부 상태 속성들 중 친밀감(intimacy:400)을 증가시키고, 피하기(Avoidance:402)와 탐욕(Greed:404), 그리고 자제력(Control:406)을 감소시켰으며, '감정'에 해당되는 내부 상태 속성들 중 행복감(Happiness:408)을 증가시키고, 화(anger:410)와 공포(fear:412)를 감소시켰다. 즉, 이러한 경우 사용자는 보다 사용자에게 친밀하며, 겁이나 욕심이 적고, 솔직하며, 낙천적이며, 이에 따른 행동을 유발할 수 있도록 사용자 선호도를 설정한 것이 된다.
도 4에서 보이고 있는 바와 같이 사용자가 선호도들을 입력하면, 제어부(100)는 204단계에서 상기 입력된 선호도들을 이용하여 각 내부 상태 관련 유전자의 초기값 및 행동 결정 관련 유전자의 초기값을 산출한다. 즉, 상기 도 4에서 보이고 있는 바와 같이 사용자가 증가시킨'친밀감'의 경우에는, '친밀감'에 대한 마스킹 값이 0이상인 내부 상태 관련 유전자는 초기값보다 더 큰 값이 설정될 확률이 높아지고, '친밀감'에 대한 마스킹 값이 0미만인 내부 상태 관련 유전자는 초기값보다 더 작은 값이 설정될 확률이 높아진다. 이와 반대로, 사용자가 감소시킨 '탐욕'의 경우에는, '탐욕'에 대한 마스킹 값이 0이상인 내부 상태 관련 유전자는 초기값보다 더 작은 값이 설정될 확률이 높아지고, '탐욕'에 대해 마스킹 값이 0미만인 내부 상태 관련 유전자는 초기값보다 더 큰 값이 설정될 확률이 높아진다.
이는 현재 사용자가 설정한 선호도 값이, 그 내부 상태 관련 유전자에 대응하는 외부 자극에 기 설정된 제어 상수(
Figure 112008032316681-pat00203
,
Figure 112008032316681-pat00204
)보다 큰지 작은지에 의해 결정된다. 즉, 상기 수학식 1을 참조하여 보면, 마스킹 값이 0이상인 경우에는 입력된 사용자 선호도를 제어 상수로 나누고(분자 : 사용자 선호도, 분모 : 제어 상수), 마스킹 값이 0미만인 경우에는 입력된 제어 상수를 사용자 선호도로 나누게(분자 : 제어 상수, 분모 : 사용자 선호도) 된다. 따라서 만약 상기 사용자 선호도가 제어 상수보다 작은 값일 경우에는, 비록 마스킹 값이 0이상이라고 할지라도 분자인 사용자 선호도가, 분모인 제어 상수보다 작아지게 되므로, 해당 내부 상태 관련 유전자의 초기값은 더 작은 값이 설정될 가능성이 높아지게 되기 때문이다.
그리고 제어부(100)는 각각의 내부 상태 관련 유전자, 행동 결정 관련 유전자, 그리고 필수 요소 관련 유전자를 포함하는 하나의 로봇 지놈을 생성하고, 이러한 로봇 지놈 생성 과정을 반복 수행하여 사용자 선호도가 반영된 기 설정된 개수의 로봇 지놈들을 포함하는 로봇 지놈군을 생성한다.
한편, 상기 208단계에서 마스킹 처리가 완료되면, 제어부(100)는 현재 설정된 자극 시나리오를 로드하는 208단계로 진행한다. 그런데 상기 208단계는, 기 저장된 자극 시나리오뿐만 아니라 사용자가 직접 자극 시나리오를 생성 또는 기 저장된 자극 시나리오의 설정을 변경할 수도 있음을 상술한 바 있다. 도 5는 이러한 경 우 상기 208단계의 초기화된 로봇 지놈의 발현 여부를 체크하기 위한 자극 시나리오를 설정하는 동작의 흐름을 보이고 있는 도면이다.
우선 도 5를 참조하여 살펴보면, 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템의 제어부(100)는 500단계로 진행하여 사용자가, 기 저장된 자극 시나리오 중 어느 하나를 선택하는 '자동 설정'메뉴를 선택하였는지 아니면 새로운 자극 시나리오를 생성하기 위한 '사용자 설정 메뉴'를 선택하였는지를 체크한다.
그리고 만약 사용자가 상기 500단계에서 '자동 설정'메뉴를 선택한 경우라면, 제어부(100)는 510단계로 진행하여 현재 기 저장된 자극 시나리오들을 포함하는 자극 시나리오 선택 메뉴를 출력한다. 여기서 상기 기 저장된 자극 시나리오에는 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템의 출시 시부터 기 저장되어 있던 자극 시나리오 및 사용자가 이전에 생성 후 저장한 자극 시나리오들을 포함한다. 그리고 제어부(100)는 512단계로 진행하여 상기 기 저장된 자극 시나리오들 중 사용자의 선택에 따른 어느 하나의 자극 시나리오를 로드한다. 그리고 제어부(100)는 210단계로 진행하여 현재 설정된 자극 시나리오에 따라 현재 생성된 로봇 지놈군에 포함된 각 로봇 지놈들을 발현한다.
한편 만약 사용자가 상기 500단계에서 '사용자 설정'메뉴를 선택한 경우라면, 제어부(100)는 502단계로 진행하여 자극 시나리오 파라미터의 설정을 변경할 수 있는 자극 시나리오 설정창을 출력한다. 도 6은 상기 502단계에서 사용자가 자극 시나리오를 설정하는 경우의 자극 시나리오를 설정할 수 있는 자극 시나리오 설정창의 예를 보이고 있는 도면이다.
도 6을 참조하여 살펴보면, 자극 시나리오 설정창은, "Setting Parameter" 메뉴의 "Due time"에서 보이고 있는 것처럼, 자극 시나리오가 유지되는 시간을 설정할 수 있는 메뉴 및, "Resolution"에서 보이고 있는 것처럼 자극 정보 간격을 설정할 수 있는 메뉴, 그리고 "Stimulus equalizer"에서 보이고 있는 것처럼 각 자극 그룹의 발생 확률을 설정할 수 있는 메뉴를 포함한다.
그러면 제어부(100)는 504단계로 진행하여 사용자의 입력에 따라 자극 시나리오의 파라미터들을 설정한다. 그리고 제어부(100)는 506단계로 진행하여 설정된 파라미터를 포함하는 자극 시나리오를 생성한다. 즉, 예를 들어 504단계에서, 사용자가 도 6의 "Due time" 메뉴에서 보이고 있는 것처럼 자극 시나리오가 유지되는 시간을 60초로 설정 및, "Resolution"메뉴에서 보이고 있는 것처럼 자극 정보 간격을 최소 0.1초에서 최고 10초로 설정하고, "Stimulus equalizer" 메뉴에서 보이고 있는 것처럼 각 자극 그룹의 발생 확률을 50%로 설정하면, 제어부(100)는 506단계에서 자극 시나리오의 유지 시간은 1분이며, 각 자극의 정보 간격은 최소 0.1초에서 최대 10초 사이에 발생하고, 또한 각 자극 그룹에 따른 자극들이 50%의 확률로 발생하는 자극 시나리오를 생성한다. 그리고 제어부(100)는 508단계로 진행하여 현재 생성된 자극 시나리오에 따라 현재 생성된 로봇 지놈군의 로봇 지놈들을 발현하기 위해 자극 시나리오의 설정들을 로드한다. 여기서 상기 502단계에서는 새로운 자극 시나리오를 생성하는 것 뿐만 아니라, 기 설정된 자극 시나리오를 로드하여 그 설정들을 디스플레이하는 단계가 될 수도 있다.
도 7은 이러한 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서, 현재 설정된 자극 시나리오에 따라 발현된 로봇 지놈이 사용자가 입력한 선호도들에 대해 적합한지 여부를 판단하기 위한 신뢰도 값을 산출하는 동작의 흐름을 보이고 있는 도면이다. 적합도 판단 여부는, 상기 적합도 판단부(114)에서 설명하였던 과정을 통해 이루어진다. 즉, 다수의 로봇 지놈들을 현재 설정된 자극 시나리오에 따라 발현한 경우, 제어부(100)는 700단계로 진행하여 발현된 로봇 지놈들 중 어느 하나를 선택한다. 그리고 제어부(100)는 702단계로 진행하여 각 자극에 대한 내부 상태 속성들의 점유율들을 산출한다. 그리고 제어부(100)는 704단계로 진행하여 각각의 내부 상태 속성별로 , 내부 상태 속성 선호도 게인을 산출한다. 여기서 상기 선호도 게인은 상기 수학식 4에서 보이고 있는 바와 같이 내부 상태 속성별 선호도 및 행동 선호도 별로 산출될 수 있다.
그리고 제어부(100)는 706단계로 진행하여 각각의 내부 상태 관련 유전자별로, 상기 내부 상태 속성 선호도 게인과 상기 산출된 내부 상태 속성의 점유율의 차에 대한 절대값을 산출한다. 그리고 이를 합산하여 내부 상태 관련 적합도를 산출한다. 여기서 상기 내부 상태 관련 적합도는, 상기 수학식 3에서 보이고 있는 바와 같이 내부 상태 속성들을 특정 종류별로 나누어 산출할 수 있다. 그리고 제어부(100)는 각각의 내부 상태 속성별로 분류된 행동 선호도에 따라 산출된 행동 선호도 게인과 상기 산출된 내부 상태 속성별로 분류된 행동 발현수의 점유율의 차에 대한 절대값을 산출한다. 그리고 이를 합산하여 행동 결정 관련 적합도를 산출한다. 그리고 제어부(100)는 708단계로 진행하여 상기 내부 상태 관련 적합도와 행동 결정 관련 적합도를 합하고 적합도 상수와의 차를 통해 현재 선택된 로봇 지놈의 신뢰도 값을 산출한다. 그리고 제어부(100)는 현재 생성된 로봇 지놈군의 모든 로봇 지놈들에 대해 이러한 도 7의 과정을 수행하여 모든 로봇 지놈들의 신뢰도 값을 산출한다.
도 8은 이러한 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서, 현재 추출된 로봇 지놈들이 사용자 선호도에 적합하지 않다고 판단된 경우에 이를 변경, 즉 특정 유전자의 파라미터 값을 변경하는 동작을 도시한 도면이다. 이하 도 8에서는 이러한 변경 방법의 예로 크게 진화 연산 방법 및 신경회로망 연산 방법을 사용하는 것을 가정하고, 또한 상기 진화 연산 방법으로 일반 교차 연산, 독립 교차 연산, 균등 교차 연산, 집합 교차 연산, 그리고 돌연변이 연산 중 적어도 하나 이상을 사용하는 것을 예로 든 것이다.
도 8을 참조하여 살펴보면, 제어부(100)는 800단계로 진행하여 현재 추출된 로봇 지놈들 중 어느 하나를 선택하고, 현재 선택된 로봇 지놈의 변경 방법을 선택한다. 상기한 가정에 따라 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템이 진화 연산 및 신경회로망 연산 중 어느 하나를 사용하는 것으로 가정하면, 제어부(100)는 기 설정된 조건 또는 기 설정된 바에 따라 두 가지 연산 방법 중 어느 하나를 선택한다.
만약 상기 800단계에서 만약 제어부(100)가 선택한 변경 방법이 신경회로망 연산인 경우라면, 제어부(100)는 816단계를 통해 신경 회로망 연산 방법에 따라 델타(delta) 규칙(Rule), 즉 각각의 경우마다 가중치를 부여하는 학습 방법으로 상기 추출된 로봇 지놈들을 업데이트한다. 여기서 상기 816단계는 상기 델타 규칙 외에 기울기 하강(Gradient descent) 등을 이용한 방법등을 사용하는 단계가 될 수도 있다. 그리고 제어부(100)는 다시 800단계로 진행하여 상기 추출된 로봇 지놈들 중 어느 하나를 선택한다.
그러나 만약 제어부(100)가 선택한 변경 방법이 진화 연산인 경우라면, 제어부(100)는 802단계로 진행하여, 현재 선택된 로봇 지놈을 변경할 변경 방법으로 일반 교차 연산, 독립 교차 연산, 균등 교차 연산, 그리고 집합 교차 연산을 포함하는 교배 연산과 돌연변이 연산 중 어느 하나를 선택한다. 여기서 제어부(100)가 교배 연산과 돌연변이 연산 중 어느 하나를 선택하는 것은 사용자의 선택 또는 임의 설정 및 기 설정된 조건에 따라 이루어 질 수 있다.
상기 802단계에서 만약 제어부(100)가 선택한 변경 방법이 돌연변이 연산이라면, 제어부(100)는 814단계로 진행하여 돌연변이 연산을 통해 현재 선택된 로봇 지놈을 변경한다. 여기서 돌연변이 연산이라는 것은 현재 선택된 로봇 지놈의 유전자들, 즉 필수 요소 관련 유전자, 내부 상태 관련 유전자, 행동 결정 관련 유전자들 중 적어도 하나 이상을 임의의 값으로 변경하는 것이다. 그리고 현재 선택된 로봇 지놈에 대한 돌연변이 연산이 완료되면, 제어부(100)는 다시 800단계로 진행하여 상기 추출된 로봇 지놈들 중 어느 하나를 선택한다.
그러나 만약 제어부(100)가 선택한 변경 방법이 교배 연산인 경우라면, 제어부(100)는 804단계로 진행하여 일반 교차 연산, 독립 교차 연산, 균등 교차 연산, 그리고 집합 교차 연산 중 어느 하나를 선택한다. 여기서 제어부(100)가 상기 연산 방법들 중 어느 하나를 선택하는 것은 사용자의 선택 또는 임의 설정 및 기 설정된 조건에 따라 이루어 질 수 있다.
여기서 일반 교차 연산이라는 것은 상술한 바와 같이, 특정 내부 상태에 따른 필수 요소 관련 유전자, 내부 상태 관련 유전자, 행동 결정 관련 유전자들을 다른 로봇 지놈과 서로 교환하여 변경하는 변경 방법을 말하는 것이다. 이러한 경우 제어부(100)는 806단계로 진행하여 상기 추출된 로봇 지놈들 중 어느 하나 또는 현재 로봇 지놈군의 로봇 지놈들 중 어느 하나를 더 선택하고 일반 교차 연산을 수행한다. 하기 도 9는 이러한 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서 사용가능한 로봇 지놈 변경 방법 중 일반 교차 연산 방법의 예를 보이고 있는 도면이다.
도 9를 참조하여 살펴보면 도 9의 (a)가 현재 변경이 선택된 로봇 지놈이라고 하였을 때, 도 9의 (b)는 상기 변경이 선택된 로봇 지놈의 변경을 위해 추가로 선택된 로봇 지놈이다. 그리고 일반 교차 연산의 경우 임의로 선택되는 내부 상태(c1~c14)에 관련된 필수 요소 관련 유전자와 내부 상태 관련 유전자, 그리고 행동 결정 관련 유전자가 서로 교차되어 변경된다. 즉, 예를 들어 일반 교차의 대상으로 선택된 내부 상태가 c4, c5, c6, c8, c11인 경우라면, 현재 변경이 선택된 로봇 지놈의 필수 요소 관련 유전자(900)와, 내부 상태 관련 유전자(902), 그리고 행동 결정 관련 유전자(904)들 중 상기 내부 상태 c4, c5, c6, c8, c11에 해당되는 필수 요소 관련 유전자와 내부 상태 관련 유전자, 그리고 행동 결정 관련 유전자들은, 추가로 선택된 로봇 지놈의 내부 상태 c4, c5, c6, c8, c11에 해당되는 필수 요소 관련 유전자와 내부 상태 관련 유전자, 그리고 행동 결정 관련 유전자들과 서 로 바뀌게 된다. 그리고 현재 선택된 로봇 지놈에 대한 이러한 일반 교차 연산이 완료되면, 제어부(100)는 다시 800단계로 진행하여 상기 추출된 로봇 지놈들 중 어느 하나를 선택하고 선택된 로봇 지놈을 변경할 방법을 선택한다.
또한 독립 교차 연산이라는 것은 상술한 바와 같이, 특정 내부 상태에 따른 필수 요소 관련 유전자나 내부 상태 관련 유전자, 그리고 행동 결정 관련 유전자를 각각 독립적으로 다른 로봇 지놈과 서로 교환하여 변경하는 변경 방법을 말하는 것이다. 이러한 경우 제어부(100)는 808단계로 진행하여 상기 추출된 로봇 지놈들 중 어느 하나 또는 현재 로봇 지놈군의 로봇 지놈들 중 어느 하나를 더 선택하고, 독립 교차 연산을 수행한다. 하기 도 10은 이러한 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서 사용가능한 로봇 지놈 변경 방법 중 독립 교차 연산 방법의 예를 보이고 있는 도면이다.
도 10을 참조하여 살펴보면 도 10의 (a)가 현재 변경이 선택된 로봇 지놈이라고 하였을 때, 도 10의 (b)는 상기 변경이 선택된 로봇 지놈의 변경을 위해 추가로 선택된 로봇 지놈이다. 그리고 독립 교차 연산의 경우 내부 상태(c1~c14)와 독립적으로 임의로 선택되는 필수 요소 관련 유전자와, 임의로 선택되는 내부 상태 관련 유전자, 그리고 임의로 선택되는 행동 결정 관련 유전자가 교차되어 변경된다. 즉, 예를 들어 필수 요소 관련 유전자(1000), 내부 상태 관련 유전자(1002), 그리고 행동 결정 관련 유전자(1004) 들 중 내부 상태 c4에 대응하는 필수 요소 관련 유전자와, 내부 상태 c5에 해당되는 내부 상태 관련 유전자, 그리고 내부 상태 c6에 대응하는 행동 결정 관련 유전자 및 다수의 유전자들이 독립 교차 연산의 대 상으로 선택되는 경우, 추가로 선택된 로봇 지놈의 내부 상태 c4에 대응하는 필수 요소 관련 유전자와, 내부 상태 c5에 해당되는 내부 상태 관련 유전자, 그리고 내부 상태 c6에 대응하는 행동 결정 관련 유전자 및 독립 교차 연산의 대상으로 선택된 유전자들이 서로 바뀌게 된다. 그리고 현재 선택된 로봇 지놈에 대한 이러한 독립 교차 연산이 완료되면, 제어부(100)는 다시 800단계로 진행하여 상기 추출된 로봇 지놈들 중 어느 하나를 선택하고 선택된 로봇 지놈을 변경할 방법을 선택한다.
그리고 균등 교차 연산이라는 것은 상술한 바와 같이, 특정 필수 요소 관련 유전자나, 특정 내부 상태 관련 유전자, 그리고 특정 행동 결정 관련 유전자들이 모두 내부 상태와 독립적으로 다른 로봇 지놈과 교환하여 변경하는 변경 방법을 말하는 것이다. 이러한 경우 제어부(100)는 810단계로 진행하여 상기 추출된 로봇 지놈들 중 어느 하나 또는 현재 로봇 지놈군의 로봇 지놈들 중 어느 하나를 더 선택하고, 균등 교차 연산을 수행한다. 하기 도 11은 이러한 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서 사용가능한 로봇 지놈 변경 방법 중 균등 교차 연산 방법의 예를 보이고 있는 도면이다.
도 11을 참조하여 살펴보면 도 11의 (a)가 현재 변경이 선택된 로봇 지놈이라고 하였을 때, 도 11의 (b)는 상기 변경이 선택된 로봇 지놈의 변경을 위해 추가로 선택된 로봇 지놈이다. 그리고 균등 교차 연산의 경우 교차 변경이 선택된 유전자가 필수 요소 관련 유전자인지, 내부 상태 관련 유전자인지, 또는 행동 결정 관련 유전자인지 관계없이 임의로 선택되는 유전자가 대응되는 다른 로봇 지놈의 유전자와 교차 변경된다. 즉, 예를 들어 내부 상태 c4와 발현 행동 '둘러보기'에 따 른 행동 결정 관련 유전자가 균등 교차 선택의 대상으로 선택되는 경우, 추가로 선택된 로봇 지놈의 내부 상태 c4와 발현 행동 '둘러보기'에 따른 행동 결정 관련 유전자가, 상기 선택된 유전자들과 서로 바뀌게 된다. 이러한 방식으로 임의로 선택된 모든 유전자들을 교차하여 변경하고 나면, 제어부(100)는 균등 교차 연산이 완료된 것으로 판단하고 다시 800단계로 진행하여 상기 추출된 로봇 지놈들 중 어느 하나를 선택하고 선택된 로봇 지놈을 변경할 방법을 선택한다.
그리고 집합 교차 연산이라는 것은 상술한 바와 같이, 특정 필수 요소 관련 유전자나, 특정 내부 상태 관련 유전자, 그리고 특정 행동 결정 관련 유전자들이, 다수의 내부 상태들에 따라 집합적으로 다른 로봇 지놈과 교환하여 변경하는 변경 방법을 말하는 것이다. 이러한 경우 제어부(100)는 812단계로 진행하여 상기 추출된 로봇 지놈들 중 어느 하나 또는 현재 로봇 지놈군의 로봇 지놈들 중 어느 하나를 더 선택하고, 집합 교차 연산을 수행한다. 하기 도 12는 이러한 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서 사용가능한 로봇 지놈 변경 방법 중 집합 교차 연산 방법의 예를 보이고 있는 도면이다.
도 12를 참조하여 살펴보면 도 12의 (a)가 현재 변경이 선택된 로봇 지놈이라고 하였을 때, 도 12의 (b)는 상기 변경이 선택된 로봇 지놈의 변경을 위해 추가로 선택된 로봇 지놈이다. 그리고 집합 교차 연산의 경우 필수 요소 관련 유전자(1200), 내부 상태 관련 유전자(1202), 행동 결정 관련 유전자(1024)들 중 다수의 내부 상태에 관련된 필수 요소 관련 유전자, 내부 상태 관련 유전자, 그리고 행동 결정 관련 유전자가 적어도 하나 이상 집합적으로 교차되어 변경된다. 즉, 예를 들어 내부 상태 c1, c2, c3와 필수요소 '초기값'에 해당되는 필수 관련 유전자들과, 내부 상태 c4, c5와 외부 자극 '놀래키기'에 해당되는 내부 상태 관련 유전자들, 그리고 내부상태 c7, c8, c9, c10와 발현 행동'둘러보기'에 해당되는 특정 행동 결정 관련 유전자들이 집합 교차 대상으로 선택되는 경우, 추가로 선택된 로봇 지놈의 내부 상태 c1, c2, c3와 필수요소 '초기값'에 해당되는 필수 관련 유전자들과, 내부 상태 c4, c5와 외부 자극 '놀래키기'에 해당되는 내부 상태 관련 유전자들, 그리고 내부상태 c7, c8, c9, c10와 발현 행동'둘러보기'에 해당되는 특정 행동 결정 관련 유전자들이 상기 선택된 유전자들과 서로 바뀌게 된다. 그리고 현재 선택된 로봇 지놈에 대한 이러한 집합 교차 연산이 완료되면, 제어부(100)는 다시 800단계로 진행하여 상기 추출된 로봇 지놈들 중 어느 하나를 선택하고 선택된 로봇 지놈을 변경할 방법을 선택한다.
여기서 상기 도 8에 개시된 218단계는 비록 현재 추출된 로봇 지놈들에 대한 모든 변경이 이루어졌다고 하더라도 이를 기 설정된 횟수 이상 반복하여 수행할 수도 있음은 물론이다. 그리고 반복하여 변경이 일어나게 되는 경우, 과거에 사용되었던 변경 방법과 상관없이 새로운 변경 방법이 선택될 수 있음은 물론이다. 즉, 예를 들어 독립 교차 연산 방법에 의한 첫 번째로 변경이 이루어진 로봇 지놈에 대해, 두 번째 변경 방법이 신경회로망 연산 방법이 선택되어 질 수도 있음은 물론이다. 그리고 이러한 경우 역시 상기 변경 방법은 임의로 선택되어 질 수 있음은 물론이다.
도 13은 이러한 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서, 변경 된 로봇 지놈들을 포함하는 새로운 로봇 지놈군을 생성하는 동작 과정의 예를 보이고 있는 도면이다.
도 13을 참조하여 살펴보면, 상기 218단계에서 현재 추출된 로봇 지놈들의 변경이 완료되는 경우, 제어부(100)는 1300단계로 진행하여 상기 102단계에서 수신한 사용자 선호도가 반영된 로봇 지놈들을 포함하는 새로운 로봇 지놈군, 즉 차세대(next generation)의 로봇 지놈군을 생성한다. 그리고 제어부(100)는 1302단계로 진행하여 현재 생성된 새로운 로봇 지놈군에 상기 변형된 로봇 지놈들을 추가한다. 그리고 제어부(100)는 1304단계로 진행하여 상기 변경된 로봇 지놈들을 포함하는 로봇 지놈군의 각 로봇 지놈들 각각에 대해 마스킹을 적용한다. 그리고 제어부(100)는 1306단계로 진행하여 현재 설정된 자극 시나리오를 로드한 후, 상기 210단계로 진행하여 현재 로드된 자극 시나리오의 설정에 따라 상기 변경된 로봇 지놈들을 포함하는 로봇 지놈군의 로봇 지놈들 각각을 발현한다. 그리고 다시 상기 212단계와 214단계, 그리고 216단계를 반복 수행하여 상기 214단계에서 추출된 로봇 지놈들의 신뢰도 값이 기 설정된 신뢰 범위안에 포함되는지를 체크하여 현재 추출된 로봇 지놈들이 사용자 선호도에 적합한지 여부를 판단한다.
그리고 만약 상기 216단계의 판단 결과, 상기 추출된 로봇 지놈들이 사용자 선호도에 적합하지 않은 것으로 판단된 경우라면, 제어부(100)는 다시 218단계로 진행하여 220단계 및 210단계에서 216단계에 이르는 과정을 반복 수행한다. 그러나 만약 상기 216단계의 판단 결과, 사용자 선호도에 적합한 것으로 판단된 경우라면 222단계로 진행하여 상기 추출된 로봇 지놈들 중 어느 하나를 선택하여 사용자의 로봇 플랫폼으로 출력하고 로봇 지놈 생성 과정을 종료한다.
즉, 본 발명에서는, 비록 사용자가 입력한 선호도 값을 반영하여 각 유전자들에 대한 초기값을 결정하였지만, 이를 지속적인 변경 및 임의로 생성되는 다수의 로봇 지놈군을 대상으로 하는 전역 검색(Global search)을 통해 더욱 사용자가 입력한 선호도에 적합한 로봇 지놈을 생성한다. 따라서 이러한 경우 초기에 생성된 로봇 지놈과 최종적으로 사용자 선호도에 적합한 것으로 출력된 로봇 지놈은 차이가 발생하게 된다.
도 14a는 본 발명의 실시 예에 따른 로봇 지놈 생성 시스템에서, 초기 생성된 로봇 지놈의 예를 보이고 있는 도면이며, 도 14b는 로봇 지놈군들의 발현 결과를 체크한 결과를 보이는 있는 도면이다.
이 중 도 14a는 상술한 바와 같이 사용자의 선호도 값이 반영된 초기 로봇 지놈의 예를 보이고 있는 것이다. 그리고 도 14b는 상술한 본 발명의 실시 예에서와 같이, 지속적인 변경 및, 다수의 로봇 지놈들과 상기 변경된 로봇 지놈들을 포함시켜 다시 발현하여, 그 중에서 그 발현 결과가 사용자 선호도에 근접하는, 즉 신뢰도 값이 큰 순서에 따라 로봇 지놈들을 추출하는 과정등을 통해 점점 사용자 선호도에 적합하도록 신뢰도 값이 수렴해 가는 실험 결과를 보이고 있는 도면이다. 예를 들어 비록 1세대, 즉 초기에 생성된 로봇 지놈군들에서는 사용자 선호도를 반영하지 못하고 있었으나, 세대를 거듭하면서, 점점 사용자 선호도에 적합한 로봇 지놈이 생성되는 것을 알 수 있다.
도 15는 이러한 본 발명의 실시 예에 따라 최종 출력된 사용자 신뢰도를 만 족하는 로봇 지놈의 예를 도시한 예를 도시한 도면이다. 여기서 상기 도 14와 도 15의 로봇 지놈에 포함된 유전자 중 짙은 색으로 표시된 유전자는 강한 속성, 즉 증가 또는 감소되는 양이 큰 유전자이고, 옅은 색으로 표시된 유전자는 약한 속성, 즉 증가 또는 감소되는 양이 적은 유전자이다.
이를 참조하여 도 14a와 비교하여 보면, 도 14a에 비해 다수의 유전자가 강화된 것을 알 수 있다. 즉 예를 들어 비록 내부 상태 c12, c13, c14의 경우 초기 상태는 약한 속성을 가지고 있었으나, 최종 출력된 로봇 지놈에서는 도 14에서 보이고 있는 것보다 강한 속성을 가지는 것으로 강화된 것을 알 수 있다. 그리고 또한 내부 상태 c3의 경우 역시 도 14a에서 보이고 있는 로봇 지놈의 속성보다 강화된 것을 알 수 있다. 따라서 본 발명의 실시 예에 따라 생성되는 로봇 지놈은 사용자가 입력한 내부 상태 속성별 선호도 및 행동 선호도에 비슷한 경향을 지닐 뿐만 아니라, 단순 초기화에 의해서 만들어진 로봇 지놈과 비교했을 때에도 더욱 사용자가 입력한 선호도 값에 인접하면서도 다양한 경우의 자극 상황에서도 강인한 성능을 가지는 것을 알 수 있다.
한편 상술한 본 발명의 설명에서는 구체적인 실시 예에 관해 설명하였으나, 여러 가지 변형이 본 발명의 범위에서 벗어나지 않고 실시될 수 있다. 특히 본 발명의 실시 예에서는 따라서 발명의 범위는 설명된 실시 예에 의해 정할 것이 아니고, 특허청구범위와 특허청구범위의 균등한 것에 의해 정하여져야 한다.
따라서 본 발명은 유전자 로봇의 로봇 지놈 작성시, 사용자가 보다 용이하게 생성할 수 있도록 하고, 생성된 로봇 지놈이 사용자가 원하는 개성을 가진 것임을 사용자가 신뢰할 수 있는 로봇 지놈 생성 시스템 및 방법을 제공함에 있다.

Claims (63)

  1. 삭제
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 삭제
  38. 삭제
  39. 삭제
  40. 삭제
  41. 삭제
  42. 삭제
  43. 삭제
  44. 삭제
  45. 삭제
  46. 인공 생명체에 있어서 고유한 유전자 코드를 생성하기 위한 시스템에 있어서,
    내부 상태 변화와 외부 행동 발현에 영향을 미치는 유전자 파라미터값을 생성하는 초기값 생성부와,
    상기 유전자 파라미터값은 상기 고유한 유전자 코드를 형성하는 값임을 특징으로 하고,
    상기 내부 상태 변화와 외부 행동 발현에 관련된 사용자 선호도를 입력받는 사용자 선호도 입력부와,
    상기 유전자 파라미터값에 상기 내부 상태 변화와 외부 행동 발현의 속성 증감 여부를 나타내는 마스킹 값을 적용하는 마스킹 처리부와,
    상기 초기값 생성부를 통해서 생성된 유전자 파라미터값에 상기 사용자 선호도 입력부를 통해서 입력된 사용자 선호도를 반영하고, 상기 마스킹 처리부를 통해서 상기 사용자 선호도가 반영된 유전자 파라미터값에 상기 마스킹 값을 적용하도록 제어하는 제어부를 포함하는 것을 특징으로 하는 고유 유전자 코드 생성 시스템.
  47. 제46항에 있어서,
    미리 설정된 복수의 자극 시나리오를 이용하여 상기 유전자 코드를 발현하여 발현 결과 값을 산출하는 발현부와,
    상기 유전자 코드에 대한 신뢰 여부를 판단하는 적합도 판단부를 더 포함하고,
    상기 제어부는 상기 발현부로부터 산출된 발현 결과 값에 따라 기 설정된 개수의 유전자 코드를 추출하고, 상기 적합도 판단부를 통해서 상기 추출된 유전자 코드에 대한 신뢰 여부를 판단하여 신뢰가 있다고 판단되면 상기 추출된 유전자 코드를 출력하도록 제어하는 것을 특징으로 하는 고유 유전자 코드 생성 시스템.
  48. 제47항에 있어서, 상기 제어부는,
    신뢰가 없다고 판단되면 상기 유전자 코드를 기 설정된 변경 방법에 따라 변경하고, 상기 변경된 유전자 코드에 상기 발현 동작, 상기 발현 결과 값 산출동작, 상기 신뢰 판단 동작을 반복적으로 수행하는 것을 특징으로 하는 고유 유전자 코드 생성 시스템.
  49. 제48항에 있어서, 상기 유전자 코드는,
    복수의 내부 상태 관련 유전자, 복수의 행동 결정 관련 유전자, 복수의 필수 요소 관련 유전자를 포함하는 것을 특징으로 하는 고유 유전자 코드 생성 시스템.
  50. 제46항에 있어서, 상기 마스킹 값은,
    하나 이상의 자극에 따라 내부 상태들이 발현하지 않을 경우에는 ‘0’이고, 발현할 경우 ‘+1’또는 ‘-1’인 것을 특징으로 하는 고유 유전자 코드 생성 시스템.
  51. 제50항에 있어서, 상기 마스킹 값은,
    사회 구성원이 일반적으로 인정하는 관습에 따라 경험적으로 설정되는 것을 특징으로 하는 고유 유전자 코드 생성 시스템.
  52. 제47항에 있어서, 상기 적합도 판단부는,
    상기 추출된 유전자 코드에 대한 신뢰도 값을 산출하고, 상기 산출된 신뢰도 값이 기 설정된 신뢰 범위 안에 포함되는지 여부를 판단하는 것을 특징으로 하는 고유 유전자 코드 생성 시스템.
  53. 제48항에 있어서, 상기 제어부는,
    상기 유전자 코드를 변경할 시 진화 연산과 신경회로망 연산 중 어느 하나의 방법으로 변경하는 과정임을 특징으로 하는 고유 유전자 코드 생성 시스템.
  54. 제53항에 있어서, 상기 진화 연산은,
    돌연변이 연산, 일반 교차 연산, 독립 교차 연산, 균등 교차 연산, 집합 교차 연산 중 어느 하나 또는 이들의 조합을 특징으로 하는 고유 유전자 코드 생성 시스템.
  55. 인공 생명체 고유 유전자 코드 생성 시스템에서 고유 유전자 코드를 생성하기 위한 방법에 있어서,
    내부 상태 변화와 외부 행동 발현에 영향을 미치는 유전자 파라미터값을 초기값 생성부로부터 생성하는 과정과,
    상기 유전자 파라미터값은 상기 고유한 유전자 코드를 형성하는 값임을 특징으로 하고,
    상기 내부 상태 변화와 외부 행동 발현에 관련된 사용자 선호도를 입력부를 통해 입력받는 과정과,
    상기 유전자 파라미터값에 상기 입력된 사용자 선호도를 제어부를 통해 반영하는 과정과,
    상기 사용자 선호도가 반영된 유전자 파라미터값에 상기 내부 상태 변화와 외부 행동 발현의 속성 증감 여부를 나타내는 마스킹 값을 상기 제어부를 통해 적용하는 과정을 포함함을 특징으로 하는 고유 유전자 코드 생성 방법.
  56. 제55항에 있어서,
    상기 적용 과정 이후에 미리 설정된 복수의 자극 시나리오를 이용하여 발현부를 통해 상기 유전자코드를 발현하는 과정과,
    상기 발현된 유전자 코드의 발현 결과 값을 상기 발현부를 통해 산출하는 과정과,
    상기 산출된 발현 결과 값에 따라 기 설정된 개수의 유전자 코드를 상기 제어부를 통해 추출하는 과정과,
    상기 추출된 유전자 코드에 대한 신뢰 여부를 적합도 판단부를 통해 판단하는 과정과,
    상기 제어부는 상기 발현부로부터 산출된 발현 결과값에 따라 기 설정된 개수의 유전자 코드를 추출하고, 상기 적합도 판단 결과 신뢰가 있다고 판단되면 상기 추출된 유전자 코드를 출력하는 과정을 더 포함함을 특징으로 하는 고유 유전자 코드 생성 방법.
  57. 제56항에 있어서,
    상기 제어부가 상기 적합도 판단 과정 이후에 신뢰가 없다고 판단되면 상기 발현된 유전자 코드를 기 설정된 변경 방법에 따라 변경하는 과정과,
    상기 제어부가 상기 변경된 유전자 코드에 상기 발현 과정, 상기 발현 결과 값 산출과정, 상기 판단 과정을 반복적으로 수행하는 과정을 포함함을 특징으로 하는 고유 유전자 코드 생성 방법.
  58. 제57항에 있어서, 상기 유전자 코드는,
    복수의 내부 상태 관련 유전자, 복수의 행동 결정 관련 유전자, 복수의 필수 요소 관련 유전자를 포함하는 것을 특징으로 하는 고유 유전자 코드 생성 방법.
  59. 제55항에 있어서, 상기 마스킹 값은,
    하나 이상의 자극에 따라 내부 상태들이 발현하지 않을 경우에는 ‘0’이고, 발현할 경우 ‘+1’또는 ‘-1’인 것을 특징으로 하는 고유 유전자 코드 생성 방법.
  60. 제59항에 있어서, 상기 마스킹 값은,
    사회 구성원이 일반적으로 인정하는 관습에 따라 경험적으로 설정되는 것을 특징으로 하는 고유 유전자 코드 생성 방법.
  61. 제56항에 있어서, 상기 제어부의 상기 적합도 판단 과정은,
    상기 추출된 유전자 코드에 대한 신뢰도 값을 산출하는 단계와,
    상기 산출된 신뢰도 값이 기 설정된 신뢰 범위 안에 포함되는지 여부를 판단하는 단계를 포함함을 특징으로 하는 고유 유전자 코드 생성 방법.
  62. 제57항에 있어서, 상기 제어부의 상기 변경 과정은,
    상기 유전자 코드를 진화 연산과 신경회로망 연산 중 어느 하나의 방법으로 변경하는 과정임을 특징으로 하는 고유 유전자 코드 생성 방법.
  63. 제62항에 있어서, 상기 진화 연산은,
    돌연변이 연산, 일반 교차 연산, 독립 교차 연산, 균등 교차 연산, 집합 교차 연산 중 어느 하나 또는 이들의 조합을 특징으로 하는 고유 유전자 코드 생성 방법.
KR1020060085570A 2006-09-06 2006-09-06 로봇 지놈을 생성하기 위한 시스템 및 생성 방법 KR100905582B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020060085570A KR100905582B1 (ko) 2006-09-06 2006-09-06 로봇 지놈을 생성하기 위한 시스템 및 생성 방법
EP07114959A EP1901209A3 (en) 2006-09-06 2007-08-24 System and method for generating robot genome
CN2007101492060A CN101140636B (zh) 2006-09-06 2007-09-06 产生机器人基因组的系统和方法
US11/851,175 US7937337B2 (en) 2006-09-06 2007-09-06 System and method for generating robot genome

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060085570A KR100905582B1 (ko) 2006-09-06 2006-09-06 로봇 지놈을 생성하기 위한 시스템 및 생성 방법

Publications (2)

Publication Number Publication Date
KR20080022300A KR20080022300A (ko) 2008-03-11
KR100905582B1 true KR100905582B1 (ko) 2009-07-02

Family

ID=38740288

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060085570A KR100905582B1 (ko) 2006-09-06 2006-09-06 로봇 지놈을 생성하기 위한 시스템 및 생성 방법

Country Status (4)

Country Link
US (1) US7937337B2 (ko)
EP (1) EP1901209A3 (ko)
KR (1) KR100905582B1 (ko)
CN (1) CN101140636B (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101493903A (zh) * 2008-01-24 2009-07-29 鸿富锦精密工业(深圳)有限公司 有性格特征的类生物装置及其展现方法
KR101678018B1 (ko) * 2010-01-22 2016-11-22 삼성전자주식회사 감성 모델 장치 및 감성 모델 장치의 행동 결정 방법
US8762305B1 (en) * 2010-11-11 2014-06-24 Hrl Laboratories, Llc Method and system for dynamic task selection suitable for mapping external inputs and internal goals toward actions that solve problems or elicit rewards
US8447419B1 (en) 2012-05-02 2013-05-21 Ether Dynamics Corporation Pseudo-genetic meta-knowledge artificial intelligence systems and methods
JP6309673B1 (ja) * 2017-06-09 2018-04-11 六月 林 デバイスと操作者との間に恋愛感情を形成する恋愛感情形成装置、恋愛感情形成方法、及びプログラム
US11461404B2 (en) 2018-06-26 2022-10-04 Intuition Robotics, Ltd. System and method for adjustment of a device personality profile
KR102145777B1 (ko) * 2019-09-23 2020-08-19 인포보스 주식회사 인공지능을 이용한 셀프검증형 감성분석에 기반한 기기제어 방법 및 장치
US11132598B1 (en) 2021-02-23 2021-09-28 Neuraville, Llc System and method for humanoid robot control and cognitive self-improvement without programming

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004066367A (ja) 2002-08-05 2004-03-04 Mitsubishi Heavy Ind Ltd 行動パターン生成装置、行動パターン生成方法、及び行動パターン生成プログラム
KR20060026297A (ko) * 2004-09-20 2006-03-23 한국과학기술원 로봇의 감성합성장치 및 방법

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6324529B1 (en) * 1996-09-27 2001-11-27 Yamaha Hatsudoki Kabushiki Kaisha Evolutionary controlling system
JP3825845B2 (ja) * 1996-09-27 2006-09-27 ヤマハ発動機株式会社 進化的制御方式
JPH10289006A (ja) * 1997-04-11 1998-10-27 Yamaha Motor Co Ltd 疑似感情を用いた制御対象の制御方法
KR20010053322A (ko) * 1999-04-30 2001-06-25 이데이 노부유끼 전자 페트 시스템, 네트워크 시스템, 로봇, 및 기억 매체
EP1182610A1 (en) * 2000-02-09 2002-02-27 Sony Corporation Information processing device and method, data holding device, and program
NZ503882A (en) * 2000-04-10 2002-11-26 Univ Otago Artificial intelligence system comprising a neural network with an adaptive component arranged to aggregate rule nodes
JP2002024795A (ja) * 2000-07-04 2002-01-25 Sony Corp 情報処理装置および方法、並びに記録媒体
US20020082077A1 (en) * 2000-12-26 2002-06-27 Johnson Douglas R. Interactive video game system with characters that evolve physical and cognitive traits
GB0104995D0 (en) * 2001-02-28 2001-04-18 Isis Innovation Artificial morpho-functional multiped and motion controller therefor
AU2003262893A1 (en) * 2002-08-21 2004-03-11 Neal Solomon Organizing groups of self-configurable mobile robotic agents
US7493295B2 (en) * 2003-01-17 2009-02-17 Francisco J. Ayala Method, system and computer program for developing cortical algorithms

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004066367A (ja) 2002-08-05 2004-03-04 Mitsubishi Heavy Ind Ltd 行動パターン生成装置、行動パターン生成方法、及び行動パターン生成プログラム
KR20060026297A (ko) * 2004-09-20 2006-03-23 한국과학기술원 로봇의 감성합성장치 및 방법

Also Published As

Publication number Publication date
CN101140636B (zh) 2010-06-02
CN101140636A (zh) 2008-03-12
US7937337B2 (en) 2011-05-03
EP1901209A2 (en) 2008-03-19
US20080306627A1 (en) 2008-12-11
KR20080022300A (ko) 2008-03-11
EP1901209A3 (en) 2011-03-30

Similar Documents

Publication Publication Date Title
KR100905582B1 (ko) 로봇 지놈을 생성하기 위한 시스템 및 생성 방법
Cui et al. A novel artificial bee colony algorithm with an adaptive population size for numerical function optimization
WO2020259502A1 (zh) 神经网络模型的生成方法及装置、计算机可读存储介质
Gero et al. An exploration‐based evolutionary model of a generative design process
US20220176248A1 (en) Information processing method and apparatus, computer readable storage medium, and electronic device
CN105637540A (zh) 用于强化学习的方法和设备
CN111105034A (zh) 基于反事实回报的多智能体深度强化学习方法、系统
US20070179917A1 (en) Intelligent design optimization method and system
CN108115678B (zh) 机器人及其动作控制方法和装置
Gao et al. Multi-agent based simulation of organizational routines on complex networks
Faliszewski et al. Multiwinner rules with variable number of winners
Rawson et al. Old or heavy? Decaying gracefully with age/weight shapes
CN109731338A (zh) 游戏中的人工智能训练方法及装置、存储介质及电子装置
Lemke et al. A numerical investigation of adaptation in populations of random Boolean networks
Taatgen A model of individual differences in skill acquisition in the Kanfer–Ackerman air traffic control task
Sallam et al. Two-phase differential evolution framework for solving optimization problems
KR20050096791A (ko) 인공지능 학습을 통한 게이머의 게임 스타일 이식시스템및 그 이식방법
CN109857552A (zh) 一种游戏人工智能行动规划方法及系统
CN116245009A (zh) 人机策略生成方法
KR102122232B1 (ko) 멀티 태스크를 위한 신경망 자동 생성 장치 및 방법
WO2021256135A1 (ja) 制御装置、方法及びプログラム
WO2018167885A1 (ja) 情報処理装置、情報処理方法、および情報処理プログラム
JP2022063864A (ja) 機械学習を自動化するための装置及び機械学習自動化方法
JP2022015502A (ja) 機械学習装置および機械学習方法
GB2408599A (en) Multi-objective genetic optimization method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E90F Notification of reason for final refusal
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130530

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140529

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20150528

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20160530

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20170529

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20180530

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20190530

Year of fee payment: 11