KR101668078B1 - 자율적 로봇 협업 시스템과 그 방법 - Google Patents

자율적 로봇 협업 시스템과 그 방법 Download PDF

Info

Publication number
KR101668078B1
KR101668078B1 KR1020150057138A KR20150057138A KR101668078B1 KR 101668078 B1 KR101668078 B1 KR 101668078B1 KR 1020150057138 A KR1020150057138 A KR 1020150057138A KR 20150057138 A KR20150057138 A KR 20150057138A KR 101668078 B1 KR101668078 B1 KR 101668078B1
Authority
KR
South Korea
Prior art keywords
robot
task
robots
tasks
assigned
Prior art date
Application number
KR1020150057138A
Other languages
English (en)
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 KR1020150057138A priority Critical patent/KR101668078B1/ko
Application granted granted Critical
Publication of KR101668078B1 publication Critical patent/KR101668078B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0287Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
    • G05D1/0291Fleet control
    • G05D1/0295Fleet control by at least one leading vehicle of the fleet
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0084Programme-controlled manipulators comprising a plurality of manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1682Dual arm manipulator; Coordination of several manipulators

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Manipulator (AREA)

Abstract

본 발명은 복수의 로봇을 운용하기 위한 시스템 및 그 방법에 관한 것으로, 서로 다른 특성 및 기능을 가지는 복수의 로봇과, 상기 복수의 로봇 간에 통신이 이루어지도록 형성되는 네트워크와, 상기 복수의 로봇 중 적어도 하나에 각각 적어도 하나의 과업을 포함하는 적어도 하나의 임무를 하달하는 통제 시스템을 포함하여 구성되며, 상기 복수의 로봇 중 적어도 하나는, 상기 임무를 하달받고, 상기 하달받은 임무에 포함된 적어도 하나의 과업을 분석 및, 상기 분석된 과업별로, 각 로봇의 서로 다른 특성 및 기능에 근거하여 상기 과업들을 수행하기에 최적의 로봇에 과업을 할당하며, 상기 할당된 과업을 수행하는 추종 로봇으로부터 감지된 이벤트에 근거하여 상기 추종 로봇에 새로운 과업을 할당하는 것을 특징으로 한다.

Description

자율적 로봇 협업 시스템과 그 방법{AUTONOMOUS ROBOT COLLABORATIVE SYSTEM AND METHOD}
본 발명은 복수의 로봇을 운용하기 위한 시스템 및 그 방법에 관한 것이다.
종래의 로봇 운용은 운용자, 즉 사람에 의해서 이루어지는 것이 일반적이다. 하지만, 사람이 효과적으로 운용통제 가능한 로봇의 수는 제한이 있다. 특히, 다수의 로봇을 통합적으로 운용하여 공동의 목표를 달성하고자 할 때, 운용자는 실시간적으로 전장 상황을 평가하고 적시에 로봇에게 적절한 임무를 부여하는 협업 통제를 수행하여야 한다. 그러나 로봇의 수가 많아지거나, 전장 상황과 같이 복잡한 상황에서는 운용자의 판단에 의한 협업 통제가 제한될 수 있다.
이에 따라 운용자의 개입을 전제로 하지 않는, 로봇 스스로 임무를 수행하도록 하거나, 운용자 없이도 스스로 임무를 개시하고 완료할 수 있도록 하는 등의 로봇의 자율적인 운용 및, 복수의 로봇 간의 자율적인 협력, 즉 로봇 협업을 수행하기 위한 로봇 운용 방법이 필요한 실정이다.
본 발명의 목적은, 임무가 할당된 이후에 운용자의 개입을 전제로 하지 않으면서도, 로봇들이 서로 협업하여 자율적으로 임무를 수행하도록 할 수 있는 로봇 시스템 및 그 방법을 제공함에 있다.
본 발명의 다른 목적은, 과업(task) 기반으로 설정되는 로봇의 잇점에 따라 임무 자동화를 가능하게 할 뿐만 아니라, 과업과 로봇과의 협업 관계에 근거하여 복수의 로봇을 협력적으로 운용하기 위한 협업 통제를 제공할 수 있도록 하는 로봇 시스템 및 그 방법을 제공함에 있다.
상술한 목적을 달성하기 위한 본 발명의 실시 예에 따른 자율형 로봇 협업 시스템은, 서로 다른 특성 및 기능을 가지는 복수의 로봇과, 상기 복수의 로봇 간에 통신이 이루어지도록 형성되는 네트워크와, 상기 복수의 로봇 중 적어도 하나에 각각 적어도 하나의 과업을 포함하는 적어도 하나의 임무를 하달하는 통제 시스템을 포함하여 구성되며, 상기 복수의 로봇 중 적어도 하나는, 상기 임무를 하달받고, 상기 하달받은 임무에 포함된 적어도 하나의 과업을 분석 및, 상기 분석된 과업별로, 각 로봇의 서로 다른 특성 및 기능에 근거하여 상기 과업들을 수행하기에 최적의 로봇에 과업을 할당하며, 상기 할당된 과업을 수행하는 추종 로봇으로부터 감지된 이벤트에 근거하여 상기 추종 로봇에 새로운 과업을 할당하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 복수의 로봇 중 적어도 하나는, 상기 임무에 포함된 과업들을, 상기 복수의 로봇이 수행할 경우에 예상되는 소요 비용에 근거하여 결정되는 과업-로봇 적합도에 근거하여 상기 과업들 각각에 대응되는 최적의 로봇을 할당하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 복수의 로봇 중 적어도 하나는, 상기 과업 로봇 적합도 및, 기 설정된 적어도 하나의 제약 사항에 근거하여 상기 과업들 각각에 대응되는 최적의 로봇을 할당하며, 상기 적어도 하나의 제약 사항은, 로봇에게 할당되는 최소 과업 및 로봇에게 가해지는 임무 부하, 로봇이 과업을 수행하는 시간, 및 상기 로봇에게 동시에 복수의 과업이 부여될 수 있는지 여부에 관련된 사항 중 적어도 하나를 포함하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 과업이 할당되는 로봇들은, 상기 복수의 로봇 중 적어도 하나를 포함하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 이벤트는, 발생이 미리 예정된 정규 이벤트 및 발생이 미리 예정되지 않은 비정규 이벤트를 포함하며, 상기 정규 이벤트는, 상기 과업의 완료 및 기 설정된 피드백(feedback) 주기의 만료를 포함하며, 상기 비정규 이벤트는, 상기 임무가 할당된 로봇의 기능 이상 및 특정 상황의 발생을 포함하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 복수의 로봇 중 적어도 하나는, 상기 추종 로봇으로부터 상기 비정규 이벤트의 발생이 감지되는 경우, 적어도 하나의 임시 과업을 포함하는 임시 임무를 기 설정된 로봇 또는 기 설정된 조건에 따라 결정되는 로봇에 할당하며, 상기 임시 임무는, 상기 발생된 비정규 이벤트에 대응되는 것임을 특징으로 한다.
일 실시 예에 있어서, 상기 임시 임무가 할당된 로봇은, 상기 임시 임무에 포함된 적어도 하나의 임시 과업 별로, 상기 임시 과업을 수행하기에 최적의 로봇을 선택 및, 선택된 로봇에 상기 임시 과업을 할당하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 임시 과업이 할당된 로봇은, 현재 수행중인 과업이 있는 경우, 상기 임시 임무에 설정된 우선순위 및, 상기 현재 수행중인 과업에 대응되는 임무의 우선순위에 근거하여 상기 임시 과업 또는 현재 수행중인 과업을 우선적으로 수행하는 것을 특징으로 한다.
상술한 목적을 달성하기 위한 본 발명의 실시 예에 따른 자율형 로봇 협업 방법은, 서로 다른 특성 및 기능을 가지는 복수의 로봇에 임무를 하달하는 단계와, 상기 복수의 로봇 중 상기 임무를 하달받은 적어도 하나의 로봇이 지휘 로봇으로 설정되는 단계와, 상기 지휘 로봇이 상기 하달받은 임무에 포함된 적어도 하나의 과업을 분석 및, 분석된 과업별로 각 과업을 수행할 적어도 하나의 추종 로봇을 상기 복수의 로봇으로부터 선택하는 단계와, 상기 적어도 하나의 로봇에 상기 과업을 할당하는 단계와, 상기 추종 로봇이 상기 과업을 수행 및, 기 설정된 이벤트의 발생 여부를 감지하는 단계와, 상기 추종 로봇이 상기 이벤트의 발생을 상기 지휘 로봇에 알리는 단계, 및, 상기 지휘 로봇이 상기 추종 로봇에서 감지된 이벤트에 근거하여, 상기 추종 로봇에 새로운 과업을 할당하는 단계를 포함하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 과업을 분석 및 추종 로봇을 선택하는 단계는, 상기 임무에 포함된 과업들을, 상기 복수의 로봇이 수행할 경우에 예상되는 소요 비용에 근거하여 결정되는 과업-로봇 적합도에 근거하여 상기 과업들 각각을 수행할 로봇들을 선택하는 단계임을 특징으로 한다.
일 실시 예에 있어서, 상기 과업을 분석 및 추종 로봇을 선택하는 단계는, 상기 과업 로봇 적합도 및, 기 설정된 적어도 하나의 제약 사항에 근거하여 상기 과업들 각각을 수행할 로봇들을 선택하는 단계이며, 상기 적어도 하나의 제약 사항은, 로봇에게 할당되는 최소 과업 및 로봇에게 가해지는 임무 부하, 로봇이 과업을 수행하는 시간, 및 상기 로봇에게 동시에 복수의 과업이 부여될 수 있는지 여부에 관련된 사항 중 적어도 하나를 포함하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 이벤트는, 발생이 미리 예정된 정규 이벤트 및 발생이 미리 예정되지 않은 비정규 이벤트를 포함하며, 상기 정규 이벤트는, 상기 과업의 완료 및 기 설정된 피드백(feedback) 주기의 만료를 포함하며, 상기 비정규 이벤트는, 상기 임무가 할당된 로봇의 기능 이상 및 특정 상황의 발생을 포함하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 새로운 과업을 할당하는 단계는, 상기 추종 로봇으로부터 상기 비정규 이벤트의 발생이 감지되는 경우, 적어도 하나의 임시 과업을 포함하는 임시 임무를 기 설정된 로봇 또는 기 설정된 조건에 따라 결정되는 로봇에 할당하는 단계이며, 상기 임시 임무는, 상기 발생된 비정규 이벤트에 대응되는 것임을 특징으로 한다.
따라서 본 발명은, 최초의 임무 할당 외에 운용자의 개입 없이도 로봇들이 자율적으로 서로 협동하며 임무를 수행할 수 있도록 함으로써, 운용자의 불필요한 개입을 배제할 수 있다는 효과가 있다.
또한 본 발명은, 과업과 로봇과의 협업 관계에 근거하여 각 과업 별로 최적의 로봇이 과업을 수행하여 서로 협업할 수 있도록 함으로써, 운용자의 개입 없이도 복수의 과업을 포함하는 임무 수행에 있어, 최적의 효율을 가지는 로봇 협업이 이루어질 수 있도록 하는 효과가 있다.
도 1은 본 발명의 실시 예에 따른 자율 로봇 협업 시스템의 구성을 도시한 개념도이다.
도 2는 본 발명의 실시 예에 따른 자율 로봇 협업 시스템에서 설정된 지휘 로봇과 추종 로봇의 예를 도시한 개념도이다.
도 3a 내지 도 3c는 과업과 시간 및 노드와의 관계가 표시되는 예를 도시한 예시도들이다.
도 4a 및 도 4b는 본 발명의 실시 예에 따른 과업 진척 방법에 따라 과업을 진척하는 예를 도시한 예시도이다.
도 5는 본 발명의 실시 예에 따른 과업 진척 방법의 예를 도시하고 있는 예시도이다.
도 6은 본 발명의 실시 예에 따른 자율 로봇 협업 시스템에서, 자율적으로 과업을 진척하는 동작 과정을 도시한 흐름도이다.
도 7a 및 도 7b는 과업 및 로봇의 특성에 따라 사전에 정의된 과업-로봇 적합도를 도시한 개념도이다.
도 8은 본 발명의 실시 예에 따른 자율적 로봇 협업 시스템에서 임시 임무와 관련된 이벤트 발생되는 경우의 동작 과정을 도시한 흐름도이다.
도 9는 본 발명의 실시 예에 따른 자율적 로봇 협업 시스템에서, 임시 임무와 관련된 이벤트 발생시, 임시 임무를 수행하기 위한 지휘 로봇이 생성되는 예를 도시한 예시도이다.
본 명세서에서 사용되는 기술적 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 명세서에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "구성된다." 또는 "포함한다." 등의 용어는 명세서상에 기재된 여러 구성 요소들, 또는 여러 단계를 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다.
또한, 본 명세서에 개시된 기술을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 기술의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
먼저 본 발명의 완전한 이해를 돕기 위해, 본 발명의 기본 원리를 설명하면 본 발명에서는, 복수의 로봇 중, 사용자로부터 임무가 설정된 어느 하나의 로봇이, 상기 임무를 분석하고, 상기 복수의 로봇 중 적어도 하나를, 상기 임무에 포함된 과업들 별로 상기 과업을 수행하는데 있어 최적의 로봇을 추종 로봇으로 선택하여 과업을 할당하는 지휘 로봇으로 설정될 수 있다. 그리고 상기 지휘 로봇에 따라 과업이 할당된 추종 로봇들은 부여된 과업을 진척시킬 수 있도록 한다.
그리고 이처럼 추종 로봇들이 부여된 과업들을 수행하는 중, 기 설정된 조건에 따른 이벤트의 발생 여부를 지휘 로봇에 전송하도록 한다. 그러면 상기 지휘 로봇은, 상기 추종 로봇에서 감지된 이벤트에 근거하여, 상기 추종 로봇에게 적합한 새로운 과업을 할당하여 상기 새로운 과업이 진척될 수 있도록 한다. 이에 따라 본 발명은 복수개의 과업으로 구성되는 임무를 복수 개의 추종 로봇을 이용한 협업 과정을 통하여 수행되도록 함으로써, 보다 효율적이며, 운용자의 개입이 없이도 상기 운용자로부터 주어진 임무가 완료될 수 있도록 한다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예들을 상세히 설명하도록 한다.
우선 도 1은 이러한 본 발명의 실시 예에 따른 자율 로봇 협업 시스템의 구성을 도시한 개념도이다.
도 1을 참조하여 살펴보면, 본 발명의 실시 예에 따른 로봇 협업 시스템(100)은 다수의 동작 임무를 수행하는 복수의 로봇과, 상기 복수의 로봇을 통제하기 위한 통제 시스템(110)을 포함하여 구성될 수 있다. 여기서 상기 통제 시스템(110)과 상기 복수의 로봇은 별도의 통신망(120)을 통해 연결될 수 있으며, 상기 통제 시스템(110)과 연결된 통신망을 통해 현재 할당된 동작 임무에 관련된 다양한 정보를 상기 통제 시스템(110)에 전송할 수 있다.
그리고 상기 복수의 로봇은 상기 통제 시스템(110)과 연결된 통신망(120)과는 별도로 상기 복수의 로봇들 사이에 형성되는 별도의 네트워크로 연결될 수 있다. 예를 들어 상기 복수의 로봇은, 각 로봇끼리 ad-hoc 네트워크의 형태로 일대일로 연결될 수 있으며, 이러한 경우 상기 복수의 로봇은, 할당된 동작 임무를 수행하는 로봇들의 위치에 근거하여 형성되는 임무점(노드(node)) 기반의 네트워크(mission network)를 형성할 수 있다.
한편 이러한 복수의 로봇들은, 각각 그 특성과 성능 등이 각각 서로 다르게 구성될 수 있다. 이에 따라 상기 복수의 로봇들은 각각 수행 가능한 임무들이 미리 정해져 있을 수 있다. 그리고 특성 및 성능에 따라 수행 가능한 임무들 각각에 대한 임무 수행 비용(cost)이 서로 다를 수 있다. 예를 들어 상기 임무 수행 비용은, 상기 로봇이 특정 임무를 수행할 때에 필요한 시간 또는 자원등을 의미하는 것일 수 있으며, 상기 로봇의 특성 및 성능에 따라 특정 임무를 수행하는 경우 다른 로봇 보다 더 많은 비용을 요구되거나 또는 더 적은 비용이 요구될 수 있다.
한편 이러한 복수의 로봇은 특정 상황, 즉 발생되는 이벤트에 근거하여 지휘 로봇(Command Robot) 및 추종 로봇(Follow Robot)으로 구분될 수 있다. 예를 들어 상기 이벤트는 임무(mission)의 할당일 수 있다. 즉, 상기 복수의 로봇 중, 통제 시스템(110) 또는 다른 로봇으로부터 특정 임무가 할당되는 경우, 상기 임무를 할당받은 로봇은 지휘 로봇이 될 수 있으며, 상기 지휘 로봇으로 설정된 로봇은, 상기 임무를 수행하기 위한 적어도 하나의 추종 로봇들을 선택할 수 있다.
여기서 임무(mission)이라는 것은, 서로 상이한 수행 특성을 가지고 있거나 상호 구분될 수 있는 여러 활동들, 즉 과업(task)들로 구성될 수 있다. 여기서 과업(task)이라는 것은, 상기 임무를 달성하기 위하여 수행하여야 할 일 또는 작업을 의미하는 것으로, 예를 들어 로봇에 임무를 할당하는 것 자체가 하나의 과업일 수도 있으며, 동일한 시간에 복수의 장소에 동시에 발생하는 다수의 작업들 각각이, 어느 하나의 임무에 포함된 과업들일 수 있다. 또는 서로 간에 인과 관계를 가지고 연속적으로 발생하는 복수의 작업 즉 과업들로 상기 임무가 구성될 수도 있다.
이러한 경우, 상기 지휘 로봇은 임무가 할당되는 경우, 임무에 포함된 적어도 하나의 과업을 분석할 수 있다. 즉, 지휘 로봇은 해당 임무에 포함된 과업들의 종류나 특성을 분석할 수 있으며, 상기 분석 결과에 따라 상기 과업들 각각을 수행할 수 있는 추종 로봇들을 선택할 수 있다. 여기서 상기 지휘 로봇은, 상기 추종 로봇들 각각의 특성 및 성능에 근거하여, 상기 각 과업을 수행하는데 소요되는 비용을 산출하고, 상기 산출된 비용에 따라 과업을 수행하기에 최적의 추종 로봇을 선택할 수 있다.
도 2는 이처럼 본 발명의 실시 예에 따른 자율 로봇 협업 시스템에서 설정된 지휘 로봇과 추종 로봇의 예를 도시한 개념도이다.
도 2를 참조하여 살펴보면, ad hoc 네트워크로 연결된 복수의 로봇이 각각 서로 다른 임무를 수행하는 것을 개시하고 있으며, 복수의 지휘 로봇(210, 230, 250)이 각각 적어도 하나의 추종 로봇에 과업을 할당하는 예를 보이고 있다.
예를 들어 제1 임무점(제1 노드 : 200)에 관련된 임무(제1 임무)가 있는 경우, 복수의 로봇 중 어느 하나의 로봇(예를 들어 제1 로봇 : 210)에게 임무가 할당되면 상기 제1 로봇(210)은 지휘 로봇이 될 수 있다. 그리고 상기 제1 로봇은, 상기 제1 임무에 포함된 과업을 분석하고, 분석된 결과에 따라 다른 로봇을 과업을 수행할 추종 로봇으로 선택할 수 있다. 즉, 상기 제1 로봇(210)은, 상기 분석 결과에 따른 다른 로봇들(212, 214)을 추종 로봇으로 선택하고, 분석된 결과에 따른 과업을 각각 할당할 수 있다.
이러한 경우 상기 추종 로봇으로 선택된 로봇들(212, 214)은 할당된 과업을 진척시킬 수 있다. 그리고 상기 추종 로봇들(212, 214)은 할당된 과업의 진척 상황(예 : 진척 결과 또는 이벤트 발생 여부 등)을 상기 지휘 로봇(제1 로봇 : 210)에게 보고할 수 있다. 이러한 경우 상기 제1 로봇(210)은 다른 로봇(예를 들어 다른 지휘 로봇) 또는 통제 시스템(110)에 상기 진척 상황을 보고(예를 들어 상기 진척 상황에 대한 정보 전달)할 수 있다.
한편 상기 도 2에서 보이고 있는 것과 같이, 현재 지휘 로봇으로 설정된 제1 로봇 스스로도, 자신에게 가장 적합한 과업을 할당할 수 있으며, 이처럼 과업이 할당되면, 상기 지휘 로봇으로 설정된 제1 로봇 역시 자신에게 할당된 과업을 진척시킬 수 있음은 물론이다.
한편 이와 유사한 방식으로, 제2, 제3 임무점들(220, 240)과 관련된 각 임무들(제2 임무, 제3 임무)에 대해 각각 지휘 로봇 및 추종 로봇들이 설정될 수 있다. 이러한 경우 상기 제1 임무와 제2 임무의 특성 등에 근거하여 상기 지휘 로봇들(제1 로봇 : 210, 제2 로봇 : 230)은 상기 제1 임무를 수행하는데 있어 서로 협업할 수도 있음은 물론이다. 즉, 상기 제1 임무와 제2 임무가 선후 관계 또는 종속 관계가 있는 경우, 제1 로봇(210)은 상기 제1 임무의 진행 상황등과 같은 정보를 상기 제2 로봇(230)과 공유할 수 있으며, 이에 따라 제2 로봇(230)은 상기 제1 임무가 완료된 이후 상기 제2 임무에 포함된 과업들이 진척되도록, 상기 추종 로봇들(232, 234, 236)에게 과업을 할당할 수도 있다.
한편 상기 제1 및 제2 임무와 같이, 서로 관련된 임무가 아닌 다른 임무의 경우, 상기 제1 임무 또는 제2 임무가 수행되는 시간에 다른 임무(제3 임무, 제3 임무점(240)에 관련된 임무)가 수행될 수도 있음은 물론이다. 이러한 경우 상기 제3 임무에 포함된 과업들은, 상기 제1 임무 또는 제2 임무에 포함된 과업들이 진척되는 시간에 동시에 진행될 수 있으며, 과업을 수행하고 있지 않은 다른 로봇을 추종 로봇으로 선택하여 과업을 할당 및 할당된 과업을 진척시킬 수 있다.
즉, 상술한 바와 같이, 제1 임무와 제2 임무가 서로 연계된 임무인 경우, 상기 제1 임무가 수행되는 동안에는 추종 로봇(236)은 과업이 할당되지 않은 상태일 수 있다. 이러한 경우 상기 추종 로봇(236)은 제3 로봇(250)에 의해 제3 임무에 포함된 과업을 수행할 추종 로봇으로 선택될 수 있으며, 상기 제3 임무에 포함된 과업을 수행할 수 있다. 이러한 경우 상기 추종 로봇(236)에 할당된 과업이 완료된 이후 제2 로봇(230)은 상기 추종 로봇(236)에 제2 임무에 포함된 과업을 할당할 수 있다. 이러한 경우 상기 추종 로봇(236)은 상기 제3 임무에 포함된 과업 수행이 완료된 후에 상기 제2 임무에 포함된 과업을 수행할 수 있다.
한편 설명의 편의상, 상기 도 2에서는 제1 임무, 제2 임무, 제3 임무에 관련된 임무점(노드)들이 각각 서로 다른 것을 예로 들어 설명하였으나, 상기 제1 임무, 제2 임무 및 제3 임무는 적어도 하나가 서로 동일한 임무점에 관련된 것일 수도 있음은 물론이다. 이러한 경우 상기 임무들은 각각 서로 그 특성 및 목적이 서로 다른 임무들일 수 있으며, 그에 따라 각각 서로 다른 과업들을 포함하는 것일 수도 있다.
한편 상기 지휘 로봇은, 상술한 바와 같이 상기 복수의 로봇 중, 이벤트의 발생 여부(예를 들어 임무 할당)에 따라 임의로 설정되거나, 또는 지휘 로봇의 기능을 가진 로봇이 미리 설정되어 있을 수도 있다. 그리고 지휘 로봇의 기능을 가진 로봇이 미리 설정된 경우라면, 상기 임무는 상기 지휘 로봇이 될 수 있는 로봇에게만 할당될 수 있으며, 만약 지휘 로봇의 기능이 탑재되지 않은 로봇에 임무가 할당된다면, 상기 임무는 현재 할당된 로봇으로부터 상기 지휘 로봇의 기능이 탑재된 로봇으로 전달될 수도 있다.
한편 이러한 임무는, 이벤트 발생 여부에 따라 할당되거나 또는 통제 시스템에서 할당될 수 있다. 예를 들어 초기 임무의 할당은 상기 통제 시스템에서 할당될 수 있다. 여기서 상기 초기 임무는, 적어도 하나의 임무점 및, 해당 임무에 포함된 과업들로 구성될 수 있으며, 미리 지정된 로봇 또는 설정된 임무점까지의 거리 또는 로봇의 특성 및 성능 등 다양한 조건에 따라 해당 임무가 할당될 지휘 로봇이 결정될 수 있다.
한편 이러한 임무는 상술한 바와 같이, 동일한 시간에 복수의 장소에서 수행될 수도 있으며, 또는 복수개의 임무가 서로 연계되어 기 설정된 순서에 따라 수행될 수도 있다. 이러한 복수개의 임무는 기 설정된 임무 계획에 따라 로봇들에게 할당될 수 있으며, 임무 계획은 임무가 수행되는 지점 또는 장소, 즉 임무점(노드) 및, 임무선(로봇이 적어도 하나의 임무를 수행하기 위해 이동하는 경로, 즉 각 임무점 사이에 로봇이 이동하는 경로), 그리고 각각의 임무 수행에 소요되는 시간을 포함할 수 있다.
도 3a 내지 도 3c는 이처럼 임무점 및 임무선을 포함하는 임무 계획의 예를 보이고 있는 예들이다.
우선 도 3a를 참조하여 살펴보면, 도 3a는 통상적으로 사용되는 임무 계획의 예를 보이고 있는 것이다. 즉, 통상적인 임무 계획 방법은, 상기 도 3a에서 보이고 있는 것처럼, 시간축에 대하여 수행되는 임무들을 나열한 것으로, 각 임무가 시작되는 시점과 종료되는 시점에 대해서는 표시하고 있으나(예를 들어 제1 임무(m1 : 300)는 단위 시간 t0에서 t2까지 수행됨), 상기 제1 임무(m1 : 300)이 수행되는 장소나 다른 임무간의 선후 관계에 대해서는 전혀 표시되고 있지 않다.
한편 도 3b 및 도 3c는, 본 발명의 실시 예에 따른 제어 방법에 따라 작성된 임무 계획 방법을 도시한 예이다. 도 3b 및 도 3c에서 보이고 있는 것과 같이, 본 발명의 실시 예에 따른 임무 계획 방법은, 통상적으로 각 시간별로 수행되는 임무 뿐만 아니라, 각 임무와 관련된 장소 정보와 경로, 즉 각 임무에 관련된 임무점 및 임무선을 더 포함하여 각 임무들을 표시함으로써, 각 임무들에 관련된 시간적 정보 외에도 장소 및 임무들 간의 선후 관계 정보까지 가시화할 수 있다.
우선 도 3b를 참조하여 살펴보면, 'm1'에서 'm7'은 각각 서로 다른 임무를 의미하며, 원 안에 표시된 숫자들은 각 노드, 즉 임무점들의 고유 번호를 의미할 수 있다. 여기서 만약 시간이 경과하는 경우에도 장소(노드) 변동이 없는 경우라면, 즉, 일정 시간동안 한 자리에서 임무가 수행되는 경우라면, 상기 임무점을 표시하는 원은 다른 원들과 구분되게 표시(예를 들어 도 3b에서 보이고 있는 것처럼 점선으로 표시)될 수 있다. 이에 따라 상기 도 3b와 같이 임무 계획이 작성된 경우, 임무 계획에 포함된 임무들 및 상기 임무들과 장소들의 관계는 하기 표 1에서 보이고 있는 바와 같다. 여기서 상기 t0 ~ t6은, 각각의 기 설정된 단위 시간들을 표시하기 위한 것이다.
Figure 112015039601919-pat00001
한편 도 3c는, 본 발명의 실시 예에 따른 임무 계획을 다르게 작성한 예를 보이고 있는 것이다. 상기 도 3b는 각 과업 별로 목적지가 같은 경우 동일한 임무점에 임무선이 연결되도록 임무 계획이 작성된 것이라면, 도 3c는 각 단위 시간의 시간축 별로 각 임무의 임무점들을 배치하고, 각 임무점들 사이를, 각 임무들 간의 관계에 따라 임무선으로 연결한 예를 보이고 있는 것이다. 이러한 경우, 상기 도 3b에서 보이고 있는 것처럼, 각 임무가 수행되는 장소, 즉 임무점과 과업들 뿐만 아니라, 상기 임무들간의 관계를 가시적으로 표시할 수도 있다.
즉, 도 3c의 임무 m1, m3, m6과 같이 같은 평행선 상에, 서로 임무선이 연결된 임무의 경우, 상기 임무들은 서로 연계 관계나 종속 관계 또는 선후 관계를 가지고 있는 것일 수 있다. 즉, 순차적으로 임무 m1이 수행된 후에 임무 m3가 수행될 수 있으며, 임무 m3가 수행된 후에 임무 m6가 수행될 수 있음을 나타낼 수 있다. 이와 반면에, 상기 임무 m1, m3, m6와 평행한 임무선으로 도시된 임무들 m2와 m7, 그리고 임무 m4와 m5는, 상기 임무 m1, m3, m6과 병행하여 수행될 수 있는 임무들임을 나타낼 수 있다. 이 경우, 비록 임무선이 이어지지는 않았으나, 동일한 평행선 상에 위치한 임무 m7과 m4, m5의 경우, 이 임무들은 연속적으로 수행되는 것은 아니나(t2 ~ t3 동안 연계 중단), 동일한 평행선 상에 있으므로 서로 연관된 임무들이며, 임무 m7이 t2에서 종료된 이후 t3부터 상기 임무 m7에 연속되는 임무 m4(t3 ~ t4)와 m5(t4 ~ t6)가 연계되어 수행됨을 가시적으로 표시할 수 있다.
이처럼 설정된 임무 계획에 따라 상기 복수의 로봇에게는 임무가 할당될 수 있다. 통제 시스템(110)은 상기 임무 계획에 따라 상기 복수의 로봇 중 적어도 하나에게 상기 임무 계획에 따른 임무를 할당할 수 있으며, 상기 임무가 할당된 로봇은 지휘 로봇으로 설정될 수 있다. 그러면 상기 지휘 로봇은, 할당된 임무에 포함된 과업들과, 다른 로봇들의 특성 및 상태에 근거하여 상기 다른 로봇들 중 적어도 일부를 추종 로봇으로 선택하고 과업을 할당할 수 있다. 그리고 상기 과업이 할당된 로봇들은 할당된 과업에 따른 동작을 수행할 수 있다.
도 4a 및 도 4b는 본 발명의 실시 예에 따른 과업 진척 방법에 따라 과업을 진척하는 예를 도시한 예시도이다.
우선 도 4a에서 보이고 있는 것처럼, 추종 로봇(400)은 할당된 과업에 따른 동작을 수행할 수 있다. 예를 들어 상기 할당된 과업에 따른 동작은 도 4a에서 보이고 있는 것처럼 '임무선(420)에 따른 노드A(410)에서 노드B(430)로의 이동'일 수 있다. 이러한 경우 상기 추종 로봇(400)은 할당된 과업에 따라 노드A(410)에서 노드B(430)로 이동할 수 있으며, 노드B(430)에 도착하는 경우, 즉 과업을 완수하는 경우, 지휘 로봇(450)에 '과업의 완수'와 관련된 이벤트를 보고(feedback)할 수 있다. 그러면 상기 지휘 로봇(450)은 상기 피드백에 근거하여, 상기 추종 로봇(400)의 현재 상태를 판단할 수 있으며, 상기 추종 로봇(400)이 다른 과업이 할당 가능한 상태임을 인식할 수 있다.
한편 필요한 경우 상기 추종 로봇(400)은, 필요한 경우 임무점(노드(node)) 또는 임무선(아크(arc))을 자체적으로 생성할 수도 있다. 즉, 이는 상기 추종 로봇(400)에 할당된 과업에 따라 결정될 수 있다. 예를 들어 상기 추종 로봇(400)에게 할당된 과업이 특정 임무점으로의 이동이 아니라, 특정 방향으로의 이동인 경우라면, 상기 추종 로봇(400)은 도 4b에서 보이고 있는 것과 같이 특정 방향으로 계속 이동할 수 있다.
이러한 경우 상기 추종 로봇(400)은 기 설정된 시간에 따라 지휘 로봇 또는 통제 시스템(110)에 피드백을 전송할 수 있다. 즉, 추종 로봇(400)은 기 설정된 보고 시간이 만기되면, 이를 이벤트의 발생으로 감지할 수 있다. 그리고 발생된 이벤트에 따라 현재의 과업 진척 상태 및 로봇의 상태등을 지휘 로봇 또는 통제 시스템(110)에 피드백(464, 474, 484)을 전송할 수 있다. 이러한 경우 상기 추종 로봇(400)은 과업을 진척하기 전 또는 후에, 임무점 및 임무선을 생성할 수 있으며, 이에 따라 도 4b의 임무점들(460, 470, 480) 및 임무선들(462, 472, 482)이 생성될 수 있다.
한편 이처럼 임무 계획에 따라 설정된 시간 또는 장소 등에서 수행된 과업은, 그 결과로 사전에 정의된 값을 가질 수 있다. 그리고 상기 로봇들은 지휘 로봇 또는 통제 시스템(110)에 상기 과업의 수행 결과를 보고(feedback) 할 수 있다. 그리고 이러한 과업의 연속적인 수행에 의한 과업의 진척을 통하여 자율적인 임무 수행이 가능하다. 또한 과업의 진척에 있어서 로봇의 위치변화가 없는, 즉 공간적 변동이 없는 경우에도 과업 진척이 가능할 수 있음은 당연하다.
한편, 이처럼 로봇과 로봇 사이, 또는 로봇과 통제 시스템(110) 사이의 임무 하달, 과업의 할당, 보고(feedback) 등은 로봇, 과업(task) 및 이벤트(event)와 같은 객체를 대상으로 하며, 필요시 상기 객체의 추가, 수정, 또는 삭제가 가능하도록 프로그래밍된 임무 통제어를 통해 이루어질 수 있다. 이러한 임무 통제어는 상기 객체들 각각 별로 파라미터(parameter), 변수들로 정의되며, 상기 객체들에 대한 구체적인 정보를 포함할 수 있다. 이러한 임무통제어를 통해 생성된 정보(임무 하달, 과업의 할당, 보고 등)들은 임무점과 임무선으로 구성되는 네트워크(130)를 통해(각 로봇들 간), 또는 통신망(로봇-통제 시스템 간) 송수신될 수 있다.
이처럼 객체를 대상으로 하는 로봇의 자율적 임무 협업을 위한 상기 임무 통제어의 작성 예는 다음과 같다. 여기서 '()'는 파라미터 또는 변수를 포함함을 의미할 수 있다. 그리고 로봇의 성능 및 운용 환경을 고려하여 객체의 추가 및 삭제가 이루어질 수 있다. 그리고 객체의 주요 대상이라 할 수 있는 과업에 있어서, 그 종류는 로봇 시스템의 특성 및 성능을 고려하여 사전에 정의하여 변수화될 수 있다.
-명령하달 : command(task())
-복명 : echo_cmd(task())
-과업 진척 : task()
-노드 생성 및 삭제 : create/delete(node())
-아크 create/delete(arc())
-과업 상태 보고 : report(task_state())
-과업 결과 보고 : report(task_result())
-이벤트 보고 : report(event())
한편 상기 로봇들이, 자신에게 할당된 과업을 진척하는 데 있어서, 그 방법(operation)의 종류는 예를 들어 진척(forward), 순서(order) 및 그 조합(forward+order)의 세 가지로 구분될 수 있다. 그리고 과업 진적 방법의 선택은 로봇 스스로 또는 통제 시스템(110) 또는 지휘 로봇의 결정에 의해서도 이루어질 수 있다.
도 5는 이러한 본 발명의 실시 예에 따른 과업 진척 방법의 예를 도시하고 있는 예시도이다.
우선 도 5의 첫 번째 도면은, 상기 도 4b에서 보인 바와 같이 로봇이 특정 방향으로 이동하는 동작, 진척(forward)(500)의 예를 보이고 있는 것이다. '진척(500)'의 경우, 도 5의 첫 번째 도면에서 보이고 있는 것과 같이, 기 설정된 지점들 까지 이동하거나, 특정 방향으로 전진하는 등의 동작을 포함하는 과업일 수 있으며, 이러한 로봇의 이동에 따라 기 설정된 피드백 주기에 따른 복수의 피드백(520, 522) 및, 그에 따른 임무선들(510, 512, 514)이 생성될 수 있다.
한편 도 5의 두 번째 도면은, 로봇이 특정 장소에서 정지한 상태에서 수행하는 동작, 순서(order)(530)의 예를 보이고 있는 것이다. '순서(530)'의 경우, 도 5의 두 번째 도면에서 보이고 있는 것과 같이, 특정 지점에서, 기 설정된 순서에 따라 수행되는 복수의 동작들(532, 534, 536)(예를 들어 기 설정된 3방향의 감시 동작)을 포함하는 과업일 수 있다. 이러한 경우 상기 동작들(532, 534, 536)의 수행 여부에 따라 복수의 피드백(542, 544, 546)이 이루어질 수 있다.
한편 도 5의 세 번째 도면은, 상기 진척(forward) 및 순서(order)가 조합된 '조합(forward + order)(580)'의 예를 보이고 있는 것이다. 상기 '조합(580)'은, 진척, 즉 특정 방향 또는 특정 지점으로의 이동과, 순서, 즉 로봇이 정지한 상태에서 이루어지는 적어도 하나의 동작들이 서로 기 설정된 순서에 따라 조합된 과업을 의미할 수 있다. 이러한 경우 도 5의 세 번째 도면에서 보이고 있는 것처럼, 로봇은 기 설정된 3방향의 감시 동작(552, 554, 556)을 수행하면서(순서(order) : 550), 특정 방향 또는 특정 지점으로 이동(570)(진척(forward) : 560)하는 동작을 수행할 수 있다. 이러한 경우 상기 도 5의 세 번째 도면에서 보이고 있는 것처럼, 각각의 동작들의 수행 여부 또는 기 설정된 피드백 주기에 근거하여 복수의 피드백이 이루어질 수 있다.
한편 상술한 바와 같이, 본 발명에서는 단편적(1대의 로봇) 또는 복합적(2개 이상의 로봇) 임무계획에 따른 임무들이 적어도 하나의 로봇에 하달될 수 있으며, 상기 임무가 하달된 로봇은 지휘 로봇이 될 수 있다. 그리고 상기 지휘 로봇은, 각 과업의 종류 및 특성에 따라 최적의 추종 로봇을 선택하고, 상기 임무 통제어를 통해 자신 및 추종로봇에게 과업 진척을 위한 명령을 전달할 수 있다.
그리고 지휘 로봇은 하기 예)와 같은 명령을 각 로봇에게 하달할 수 있다. 이 때 추종로봇은 과업을 진척함에 따라, 필요한 경우 임무점(노드(node)) 또는 임무선(아크(arc))을 자체적으로 생성할 수 있으며, 이를 지휘 로봇에게 보고할 수 있다. 이에 따라 상기 과업 진척에 따른 임무 네트워크가 점진적으로 구성될 수 있다.
예)
#1 :
Figure 112015039601919-pat00002
, n : node, a : arc
#2 :
Figure 112015039601919-pat00003
#3 :
Figure 112015039601919-pat00004
한편 상술한 바와 같이 2개 이상의 임무가 병렬적으로 수행될 수도 있는데 이를 위해 2개 이상의 임무가 동시다발적으로 서로 다른 로봇에게 하달될 수도 있다. 이러한 경우 상기 도 2에서 보이고 있는 것과 같이 다수의 지휘 로봇이 생성될 수 있으며, 과업의 할당에 있어서, 상호 경합이 발생될 수도 있다. 이는 로봇이 두 개 이상의 과업을 동시에 수행할 수 없기 때문이다. 그러나 만약 상기 로봇이 두 개 이상의 과업을 처리할 수 있거나, 또는 상기 과업들이 동시에 두 개 이상 처리될 수 있는 것이라면 이에 따라 상기 상호 경합이 발생하지 않을 수도 있음은 물론이다.
한편 상기 상호 경합이 발생한 경우, 상기 각 지휘 로봇은, 다양한 방법으로 상기 상호 경합을 해결할 수 있다. 예를 들어 지휘 로봇은, 각 임무에 부여된 우선순위에 따라 우선순위가 높은 임무의 과업이 먼저 로봇에 할당되도록 할 수 있다(임무 우선순위 우선). 또는 과업을 수행하는데 소요되는 시간이 짧은 순서에 따라 과업이 차례대로 로봇에 할당되도록 할 수도 있다(과업 수행 시간 우선). 또는 로봇이 위치한 장소에 따라 특정 임무에 관련된 과업이 우선적으로 처리되도록 상기 과업이 할당될 수도 있다. 이를 위해 각 지휘 로봇들은 협업하여 임무를 수행하기 위해 서로 연결될 수 있으며, 상기 추종 로봇들과 함께 연결되는 임무 기반의 네트워크(mission network)를 관리할 수 있다. 이에 따라 본 발명에서는 운용자가 특정 로봇에 특정 이무나 과업을 할당하는 등, 인위적인 개입을 할 필요 없이, 상기 도 3a 내지 3c에서 보인 바와 같은 임무 계획에 따라 설정된 임무를 복수의 로봇 중 적어도 하나에게 할당하기만 하면, 상기 로봇들이 자율적으로 협업하여 상기 임무 계획에 포함된 임무들을 수행할 수 있다.
한편, 도 6은 이러한 본 발명의 실시 예에 따른 자율 로봇 협업 시스템에서, 자율적으로 과업을 진척하는 동작 과정을 도시한 흐름도이다.
도 6을 참조하여 살펴보면, 임무의 할당 등으로 인해 지휘 로봇(600)이 설정되면, 지휘 로봇(600)은 할당된 임무를 분석 및 해당 임무에 포함된 과업들에 따라 적어도 하나의 추종 로봇을 선택할 수 있다(S610). 이러한 경우, 상술한 바와 같이 상기 로봇들은 그 특성 및 기능, 그리고 상태 등이 각각 다르므로, 각 과업에 대한 각 로봇들의 적합도는 각각 서로 다를 수 있다. 여기서 상기 '적합도'는, 상기 로봇이 각 과업을 수행하였을 때에 소요되는 비용에 따라 결정될 수 있으며, 전체 시스템 관점에서 하기 수학식 1에 따라 정의될 수 있다.
Figure 112015039601919-pat00005
상기 수학식 1에서 eij는 과업 i에 로봇 j를 할당함에 따라 기대되는 효과이며, Pj는 로봇 j를 할당함에 따라서 다중로봇 시스템 차원에서 발생되는 기회손실(또는 비용)이다. 이 기회손실은 로봇 투입에 따른 시스템 차원의 비용, 로봇 운용에 의한 자원소모에 따른 비용, 로봇의 피격 또는 발생 가능한 위험에 대한 예상비용 등을 포함할 수 있다.
한편 통제 시스템(110)으로부터 임무를 하달 받은 로봇은 지휘 로봇이 될 수 있으며, 그 외는 추종 로봇이 될 수 있다. 추종 로봇 중에서 이미 명령(과업)을 하달 받은 로봇은 실시간 과업-로봇 할당에 있어서 가용하지 않을 수 있으며, 명령(과업) 완료 이후에 가용할 수 있다. 과업-로봇 할당에 있어서 추가적인 명령 하달은, 그 로봇에 대하여 직전에 명령을 하달한 로봇(지휘 로봇)에게 우선권을 부여할 수 있다.
과업의 수행에 최적의 로봇이 할당될 경우, '만족스러운 상태(satisfied state)'라고 할 수 있다. 하지만, 자원의 제약으로 인해 항상 상기 수학식 1을 충족하는 로봇이 과업에 할당될 수는 없다. 따라서 하기 수학식 2와 같이, 과업 수행을 위하여 비록 최적은 아니나, 최적인 로봇과의 차이가 감내 가능한 수준(
Figure 112015039601919-pat00006
) 이내의 로봇 할당이 불가피하다. 이러한 경우 '거의 만족스러운 상태(semi-satisfied state)'라고 할 수 있다.
Figure 112015039601919-pat00007
감내 가능한 수준(
Figure 112015039601919-pat00008
) 이내의 로봇을 해당 과업에 할당하는데 있어서, 각 과업에 할당할 로봇을 최적화하기 위해, 본 발명에서는 과업-로봇 적합도에 따라 로봇을 과업에 할당할 수 있다.
도 7a는 이처럼 과업 및 로봇의 특성에 따라 사전에 정의된 과업-로봇 적합도를 도시한 개념도이다.
도 7a를 참조하여 살펴보면, 도 7a는 복수의 로봇과, 각각의 과업들의 부하가 도시된 예를 보이고 있다. 이러한 경우 각각의 과업을 로봇 R1 ~ Rj가 수행하는 경우의 적합도가 e11 ~ eij로 표시될 수 있다. 이러한 경우 각 과업-로봇별 적합도는, 해당 과업을 해당 로봇이 수행하는 경우에 소요되는 비용에 근거하여 산출될 수 있다. 이러한 경우, 상기 각각의 로봇은 그 특성 및 기능 등이 각각 상이하므로, 각각의 로봇마다 특정 과업의 동작을 수행에 따른 비용이 상이할 수 있다. 이에 따라 과업-로봇 적합도는 각각 차이가 발생할 수 있다. 또한 해당 로봇이 해당 과업의 동작을 수행할 수 없는 경우, 상기 비용은 기 설정된 수준 이상 큰 값으로 설정되어 해당 로봇이 해당 과업에 할당되지 않도록 할 수도 있다.
상기 S610 단계에서는 과업-로봇 적합도의 합이 최대가 되는 로봇을 과업에 할당할 수 있다. 이처럼 로봇 협업 통제를 수리적으로 모델링하기 위해서는 시간축(axis)을 연속이 아닌 이산적(discrete time domain)인 것으로 설정한다. N개의 태스크들로 구성되는 임무를 J대의 로봇을 투입하여 동시 또는 통합적 운용하에서 달성하고자 할 때, 하기 표 2에서와 같이 관련 기호 및 부호를 사용하여 협업통제 모델을 정의할 수 있다.
Figure 112015039601919-pat00009
과업(task)에 로봇을 할당함에 있어서 고려해야 할 다양한 제약 조건들이 있다. 예를 들어 로봇은 어떤 시간에 2개 이상의 과업을 동시에 수행할 수는 없다. 또한, 과업들 사이에 선후 관계가 존재하고 수행되는 장소가 상이할 경우에는 이동에 소요되는 시간 역시 제약 조건으로 작용한다. 그 외 다양한 제약 조건들이 더 있을 수 있다.
한편 상기 과업을 로봇에 할당하기 위한 최적화 목적함수 역시 다양하게 적용될 수 있다. 일예로, 임무 부하 협업 관점에서의 과업-로봇 할당이 가능하다. 이러한 경우 로봇 j에게 할당된 임무부하는 하기 수학식 3으로 정의되며, 임무 부하는 통상 수행 시간으로 계측될 수 있다. 따라서 임무 부하를 균등하게 할 경우, 하기 수학식 3을 목적 함수로 적용 가능하다. 식에서
Figure 112015039601919-pat00010
는 전체 로봇에 대한 임무부하 평균값이다.
Figure 112015039601919-pat00011
Figure 112015039601919-pat00012
어떤 과업
Figure 112015039601919-pat00013
을 C개의 하위(sub) 과업, 즉,
Figure 112015039601919-pat00014
(k=1, 2, ... C)로 분할하여 동시에 수행함으로써 그 수행시간을 단축하고자 할 때, C대의 로봇이 투입되어야 하며, 이 때 분할된 하위 과업의 수행시간(임무부하)은 투입되는 로봇의 수 C의 크기에 반비례적으로 단축된다고 전제할 때, 임무단축 협업을 실현할 수 있다.
일반적으로는 어떤 과업에 가장 적합한 로봇을 할당함이 합리적이므로 사전에 정의한 과업-로봇 적합도(RTEM : Robot Task Effectiveness Matrix)를 고려한 목적함수에 로봇협업 효과를 유발할 수 있는 부분을 추가함으로써 하기 수학식 5와 같은 협업 통제 모델을 생성할 수 있다.
Figure 112015039601919-pat00015
Figure 112015039601919-pat00016
Figure 112015039601919-pat00017
Figure 112015039601919-pat00018
Figure 112015039601919-pat00019
Figure 112015039601919-pat00020
Figure 112015039601919-pat00021
상기 수학식 5의 목적함수는 과업-로봇 적합도의 합을 최대화함을 의미한다. 상기 수학식 6은 로봇에게 최소 1개 이상의 과업이 할당되어야 함을, 상기 수학식 7은 과도한 임무예비 협업을 방지하기 위함이다. 한편 로봇이 감내할 수 있는 임무부하 이내로 과업이 할당되어야 함은 상기 수학식 8에서 고려될 수 있다. 그리고 임무단축 협업은 상기 수학식 9 및, 상기 수학식 5의 {} 부분에 의하여 고려될 수 있다. 한편 상기 수학식 10에서
Figure 112015039601919-pat00022
는 로봇 j에 할당된
Figure 112015039601919-pat00023
의 직전 과업이다. 임무 단축 협업을 위하여 어떤 과업을 C개로 분할한 하위 과업(
Figure 112015039601919-pat00024
) 각각에 대하여 로봇을 할당하고 그 부하는 분할된 수에 반비례적으로 감소됨은 상기 수학식 9에서 확인할 수 있다. 만일, 어떤 로봇에 대하여 이동이 수반되는 직전 과업이 추가적으로 존재할 경우에는 상기 수학식 10을 회귀적(recursively)으로 적용하여야 한다. 한편 상기 수학식 11은 하나의 로봇이 동일 시간에 2개 이상의 과업을 동시에 수행할 수 없는 제약 사항을 의미한다.
예를 들어, 3대의 로봇과 7개의 과업 간의 로봇-과업 적합도(RTEM : Robot Task Effectiveness Matrix)는 하기 표 3과 같을 수 있다. 그리고 상기 수학식 11에서 보이고 있는 제약 조건, 즉 동일한 시간대에는 하나의 로봇이 하나의 과업만을 수행할 수 있도록 하는 제약 조건의 경우, 과업 간의 시간 중복성 매트릭스(TCOM : Time-Overlap Check Matrix)를 표 4와 같이 작성함으로써 보다 용이하게 적용할 수 있다. 하기 표 4에서 '1'은 과업이 중복됨을, '0'은 과업이 중복되지 않음을 의미하는 것이다.
Figure 112015039601919-pat00025
Figure 112015039601919-pat00026
한편 이러한 협업통제 모델의 해는 다양한 알고리즘을 적용하여 어렵지 않게 구할 수 있다. 예를 들어 이러한 알고리즘으로는 기존의 휴리스틱 또는 풀-서치(branch & bound) 기법, 그리디-서치(Greedy-search) 알고리즘 등이 있을 수 있다. 하기의 서치 알고리즘은, 이러한 그리디-서치 알고리즘의 예를 보이고 있는 것이다. 하기 서치 알고리즘에서 'satisfied'는
Figure 112015039601919-pat00027
가 최적의 로봇을 할당받았을 경우를 의미한다.
서치 알고리즘
Step 1 : For each
Figure 112015039601919-pat00028
, allocate robot of higher
Figure 112015039601919-pat00029
satisfying TOCM. (initial solution)
Step 2 : If there is
Figure 112015039601919-pat00030
of not satisfied(not given with the best
Figure 112015039601919-pat00031
), make it satisfied by allocating the best robot to it while assigning other semi-bset robot to the conflicted
Figure 112015039601919-pat00032
to satisfy TOCM.
Step 3 : Repeat Step 2 until all robots of not satisfied are considered.
Step 4 : Select the best one giving the highest objective function value among the resulted.
Figure 112015039601919-pat00033
상기 표 5는 상기 표 3 및 표 4의 예에 대해, 상기 서치 알고리즘에 따른 해의 탐색 과정 및 그 결과를 보이고 있는 것이다. 상기 표 5에서 굵은 글씨로 구분되게 표시된 과업은 현재 최적의 로봇을 할당받지 못한 상태(not satisfied)임을 나타낸다.
먼저, 과업의 일련번호 순으로 로봇을 할당한 결과, 초기해는 상기 표 5의 (a)와 같다. 이 때 그 목적함수 값(f)은 5.2이다. 만일, 로봇 자원이 충분하여 모든 과업에 가장 적합한 로봇을 할당 가능한 이상적인 상황일 경우에 f=6.3(
Figure 112015039601919-pat00034
: 0.7,
Figure 112015039601919-pat00035
: 0.9,
Figure 112015039601919-pat00036
: 1.0, m4-R3 : 1.0,
Figure 112015039601919-pat00037
: 0.8,
Figure 112015039601919-pat00038
: 0.9,
Figure 112015039601919-pat00039
: 1.0)이다. 하지만, 상기 수학식 11의 제약에 의해 동일한 시간에는 로봇 유형별로 1대씩만 과업에 할당할 수 있으므로 이러한 할당은 불가능하다.
초기해(1단계 깊이(depth))에 있어서 최적의 로봇을 할당받지 못한(즉, not satisfied) 과업은 m6과 m7이다. 최적 로봇 탐색은 'not satisfied'인 과업 각각에 대하여 반복적으로 수행될 수 있다. 먼저, 표 5의 (b)와 같이 m6를 'satisfied'로 만들고, 상기 표 4의 TOCM에 근거하여 중복되는 과업에 로봇 할당을 조정한 결과로 f=5.1의 해를 얻을 수 있다(과업 m6에 대한 2단계 깊이) 그 결과, 표 5의 (b)에서 보이고 있는 것과 같이 m4, m5 및 m7이 'not satisfied' 상태이다. 이후 각각에 대하여 'sastified' 상태로 만들고 할당 조정을 실시하면, m4, m5 및 m7 각각에 대하여 고려한 결과(과업 m4, m5 및 m7에 대한 2단계 깊이)로 표 5의 (c), (d) 및 (e)와 같은 해를 얻을 수 있다.
이러한 탐색은 기 설정된 특정 횟수만큼, 또는 기 설정된 깊이(depth)까지 반복될 수 있다. 위의 예에서는 2단계 깊이까지만 고려하여 표 5의 (e)에서 중단하였다. 이에 따라 상기 초기 해에서 'not satisfied' 상태에 있는 m6에 대한 2단계 깊이까지의 해를 상기 표 5의 (a) 내지 (e)에서 보이고 있는 것과 같이 구할 수 있다.
한편 위와 유사하게, 상기 초기 해에서 'not satisfied' 상태에 있는 다른 과업 m7에 대한 2단계 깊이까지의 해를 구할 수 있다. 이에 따라 m7를 'satisfied' 상태로 만들면, 표 5의 (f)와 같은 해를 얻을 수 있다. 그리고 이 때 'not satisfied' 상태에 있는 과업은 m2 및 m6이 된다. 따라서 위에서 설명한 바와 같은 탐색을 지속하면 표 5의 (g) 및 (h)에서 보이고 있는 결과가 산출될 수 있다.
이러한 탐색의 결과, 최대의 목적함수 값(f)을 제공하는 것은 표 5의 (f)일 수 있다. 이러한 경우 상기 표 5의 (f)에 따라 로봇이 할당된 예는 도 7b에서 보이고 있는 것과 같이, 로봇 R1은 과업 m2를 수행하도록, R2는 과업 m1, m3 및 m6을 수행하도록, R3는 과업 m7, m4 및 m5를 수행하도록 협업 통제할 경우, 상기 과업들을 가장 효과적으로 달성할 수 있다.
이처럼 상기 S610 단계에서는 임무에 포함된 과업을 분석 및, 분석된 과업을 수행하기 위한 최적의 로봇들을 선택할 수 있다. 그리고 지휘 로봇(600)은 상기 과업별로 선택된 로봇들에게 과업을 할당할 수 있다(S612). 이러한 경우 상기 과업이 할당된 로봇은 추종 로봇(650)이 될 수 있으며, 상기 할당된 과업을 수행할 수 있다(S614).
한편 할당된 과업을 수행하는 동안 추종 로봇(650)은, 기 설정된 이벤트의 발생 여부를 감지할 수 있다(S616). 여기서 상기 기 설정된 이벤트는 할당된 과업의 완료 또는 기 설정된 보고 주기, 즉 피드백 주기가 만기 등(정규 이벤트)이 있을 수 있다. 또는 기 설정된 특정 상황이 발생하거나, 고장 또는 기능 이상 등(비정규 이벤트)이 있을 수 있다.
상기 추종 로봇(650)은 상기 할당된 과업을 수행하는 도중에 이러한 이벤트가 발생하는 경우, 발생된 이벤트에 따른 피드백을 할 수 있다. 즉, 추종 로봇(650)은 지휘 로봇(600) 또는 통제 시스템(110)에 이러한 이벤트의 발생을 알릴 수 있다. 편의상 이하의 설명에서는 지휘 로봇(600)이 이러한 이벤트의 발생과 관련된 피드백을 수신하는 것을 예로 들어 설명하기로 한다.
한편, 추종 로봇(650)으로부터 이벤트에 관련된 피드백이 수신되면, 지휘 로봇(600)은, 상기 발생된 이벤트를 확인할 수 있다(S620). 그리고 확인 결과에 따른 동작을 수행할 수 있다. 예를 들어 지휘 로봇(600)은 상기 추종 로봇(650)에서 감지된 이벤트가, 기 설정된 피드백 주기에 따른 피드백인 경우, 상기 피드백에 포함된 상기 추종 로봇(650)으로부터 수신된 정보(피드백)에 근거하여, 상기 추종 로봇(650)에 할당된 과업의 진척 상황을 판단할 수 있다.
한편 상기 추종 로봇(650)으로부터 수신된 피드백에, 상기 추종 로봇(650)이 할당된 과업의 완수를 포함하는 정보가 포함된 경우, 지휘 로봇(600)은 상기 추종 로봇(650)이 현재 유휴 상태에 있다고 판단할 수 있다. 이러한 경우 상기 지휘 로봇(600)은 상기 추종 로봇(650)에, 다른 과업을 할당할 수 있으며, 이를 위해 현재 할당된 임무 중, 할당 가능한 과업이 있는지 여부를 판단할 수 있다(S622).
상기 S622 단계의 판단 결과, 현재 할당된 임무 중 할당할 과업이 없는 경우라면, 지휘 로봇(600)은 과업의 할당과 관련된 과정을 종료할 수 있다. 그러나 상기 S612 단계에서 더 할당할 과업이 있는 경우라면, 지휘 로봇(600)은 남아있는 과업들 중, 상기 추종 로봇(650)의 특성 및 기능에 적합한 과업을 선택할 수 있다(S624). 여기서 상기 S624 단계는 남아있는 과업들 별로 상기 추종 로봇(650)에 대한 과업-로봇 적합도에 따라 과업이 선택되는 과정일 수 있으며, 상기 S610 단계의 과정과 유사한 과정으로 진행될 수 있다.
한편 상기 S624 단계에서 새로운 과업이 선택되는 경우, 지휘 로봇(600)은 다시 S612 단계로 진행하여, 새로 할당된 과업을 추종 로봇(650)에 할당할 수 있다. 이러한 경우 추종 로봇(650)은 상기 S612 단계에서 할당된 과업에 대해, S614 단계에서 S616 단계에 이르는 과정을 반복할 수 있다.
한편, 추종 로봇(650)은 기 설정된 이벤트가 발생하는 경우, S618 단계에서 그에 대한 피드백을 수행하고, 상기 이벤트가 과업의 완료에 대한 것인지 여부를 판단할 수 있다(S626). 그리고 상기 S626 단계의 판단 결과, 상기 발생된 이벤트가 과업의 완료에 대한 것이 아니라면, 추종 로봇(650)은 현재 수행되고 있는 과업을 계속 수행할 수 있다. 그리고 과업을 수행하는 도중 기 설정된 이벤트가 발생하였는지 여부를 감지할 수 있다.
한편 상기 S626 단계의 판단 결과, 상기 발생된 이벤트가 과업의 완료에 대한 것일 경우, 추종 로봇(650)은 대기 상태에 진입할 수 있다(S628). 그리고 다시 지휘 로봇(600)으로부터 새로운 과업이 할당되면, 새로 할당된 과업에 대해 상기 S614 단계에서 S626 단계에 이르는 과정을 수행할 수 있다.
한편, 상기 S616 단계에서 감지되는 이벤트는, 과업의 완료 또는 기 설정된 피드백 주기의 만기와 같이, 그 발생이 미리 예정되어 있는 정규 이벤트 뿐만 아니라, 그 발생이 미리 예정되지 않은 비정규 이벤트일 수도 있다. 예를 들어 이러한 비정규 이벤트는 추종 로봇(650)의 예상치 못한 기능 이상이나 고장, 또는 이상 물체 또는 특정 대상의 발견 등 기 설정된 특정 상황이 발생하는 경우 등이 있을 수 있다.
이러한 비정규 이벤트가 발생하는 경우, 추종 로봇(650)은 상기 S616 단계에서 발생된 비정규 이벤트에 대한 정보를 지휘 로봇(600)에 전송할 수 있다. 이러한 경우 상기 지휘 로봇(600)은 상기 발생된 비정규 이벤트에 대해, 상기 임시 임무를 할당할 수 있으며, 상기 임시 임무는 상기 비정규 이벤트의 발생을 감지한 추종 로봇(650) 또는 상기 발생된 비정규 이벤트에 대응되는 특정 로봇에게 할당될 수 있다.
도 8은 이처럼 본 발명의 실시 예에 따른 자율적 로봇 협업 시스템에서 임시 임무와 관련된 이벤트가 발생되는 경우에, 추종 로봇에 상기 임시 임무가 할당되는 동작 과정을 도시한 것이다. 그리고 도 9는 이처럼 임시 임무가 할당되는 경우, 할당된 임시 임무를 수행하기 위한 지휘 로봇이 설정되는 예를 도시한 예를 도시한 것이다.
우선 도 8을 참조하여 살펴보면, 상기 비정규 이벤트가 발생하는 경우, 지휘 로봇은 발생된 비정규 이벤트를 확인하고 그에 따른 동작을 수행할 수 있다. 예를 들어 상기 비정규 이벤트에 따른 동작은, 추종 로봇에 임시 임무를 할당하는 것이 될 수 있다. 즉, 상기 발생된 이벤트가, '미확인 대상의 발견'인 경우, 할당되는 임시 임무는 상기 미확인 대상이 발견된 지역에 대한 정밀 조사 또는 상기 발견된 대상의 추적 등이 있을 수 있다. 즉, 지휘 로봇은, 추종 로봇에서 감지된 비정규 이벤트가 기 설정된 임시 임무 설정 조건에 대응되는 이벤트인지 여부를 판단할 수 있으며(S800), 상기 S800 단계의 판단 결과에 따라 상기 발생된 이벤트에 대응되는 임무를 추종 로봇에 할당할 수 있다(S810). 상기 S810 단계에서, 지휘 로봇은 상기 임시 임무를 할당할 로봇을 선택할 수 있다. 예를 들어 상기 지휘 로봇은, 상기 비정규 이벤트의 발생을 감지한 추종 로봇을 상기 임시 임무를 할당할 로봇으로 선택하거나, 또는 기 설정된 조건에 근거하여 다른 로봇에 상기 임시 임무를 할당할 수도 있다. 예를 들어 지휘 로봇은, 로봇의 특성이나 기능, 또는 현재 위치와 같은 로봇의 상태에 따라 상기 임시 임무를 할당할 로봇을 선택할 수 있다.
상기 S810 단계에서 임시 임무를 할당할 로봇이 선택되면, 지휘 로봇은 선택된 로봇에 상기 임시 임무를 할당할 수 있다(S812). 예를 들어 이러한 임시 임무는 상술한 임무 통제어 작성 방식에 따라 작성될 수 있으며, 상기 선택된 로봇에게 상기 작성된 임시 임무가 전송될 수 있다. 이하의 설명에서 상기 임시 임무는 제1 추종 로봇(850)에게 할당되는 것으로 가정하기로 한다.
그러면 상기 제1 추종 로봇(850)에는 상기 임시 임무가 할당될 수 있다. 이처럼 임시 임무가 할당된 경우 상기 제1 추종 로봇(850)은 유휴 상태가 아닐 수도 있다. 즉, 상기 지휘 로봇, 또는 다른 지휘 로봇으로부터 할당된 과업을 수행하고 있는 상태일 수도 있다. 따라서 상기 제1 추종 로봇(850)은 상기 임시 임무가 할당된 경우, 상기 임시 임무에 관련된 동작을 우선하여 수행할 것인지 또는 현재 수행중인 과업을 우선하여 수행할 것인지를 선택할 수 있다.
예를 들어 상기 제1 추종 로봇(850)은 미리 설정된 우선순위에 따라 임시 임무 또는 기존 과업 중 어느 하나를 수행할 수 있다. 이러한 우선순위는 임시 임무 또는 기존 과업이 우선되도록 미리 설정되어 있을 수 있거나, 또는 임무 별로 설정된 것일 수 있다. 이러한 경우 제1 추종 로봇(850)은 상기 임시 임무에 설정된 우선순위와, 현재 수행중인 과업을 포함하는 임무에 설정된 우선순위를 서로 비교하여, 우선순위가 더 높은 것을 먼저 수행할 수도 있다. 한편 이러한 임시 임무 또는 특정 임무에 설정된 우선순위는 기 설정된 조건에 따라 상기 지휘로봇에 의해 설정될 수 있으며, 또는 다른 지휘로봇과의 상호 연계에 따라 결정될 수도 있다. 이하의 설명에서는 설명의 편의상, 상기 임시 임무의 우선순위가 더 높은 경우를 예로 들어 설명하기로 한다.
상기 판단 결과에 따라, 제1 추종 로봇(850)은 상기 임시 임무에 관련된 동작을 수행할 수 있다. 이러한 경우 상기 제1 추종 로봇(850)은 현재 할당된 임무, 즉 임시 임무에 포함된 과업들을 분석할 수 있다. 그리고 분석된 과업별로, 해당 과업을 수행할 수 있는 최적의 로봇을 선택할 수 있다(S814). 예를 들어 상기 S814 단계는 상기 S610 단계의 동작과 유사한 과정으로 이루어질 수 있다. 여기서 선택되는 추종 로봇은, 그 성능 및 특성, 그리고 상태 등에 따라 상기 지휘 로봇도 과업을 수행할 추종 로봇으로 선택될 수 있음은 물론이다.
상기 S814 단계에서, 상기 할당된 임시 임무에 포함된 과업들 및 그에 적합한 로봇들이 선택되면, 제1 추종 로봇(850)은 상기 선택된 로봇들에게 상기 임시 임무에 포함된 과업들을 할당할 수 있다(S816). 즉, 도 9에서 보이고 있는 것처럼, 제1 추종 로봇(850)은 추종 로봇(Follow robot : F)에서 임시 지휘 로봇(Command robot : C)가 될 수 있으며, 상기 도 6에서 도시한 바와 유사한 방법으로 임시 임무에 포함된 과업들이 할당된 로봇(제2 추종 로봇 : 860 또는 870)이 상기 임시 임무에 포함된 과업을 수행하도록 할 수 있다.
이에 따라 상기 제2 추종 로봇(860)은 상기 S816 단계에서 할당된 임시 과업을 수행할 수 있으며(S818), 기 설정된 이벤트가 발생되었는지 여부를 판단할 수 있다(S820). 여기서 상기 기 설정된 이벤트는, 상기 임시 임무에 따라 설정된 이벤트일 수도 있으며, 또는 기 설정된 피드백 주기의 만기나 상기 할당된 과업의 완료등과 같은 정규 이벤트 및, 비정규 이벤트일 수도 있다.
상기 제2 추종 로봇(860)은 상기 S820 단계의 판단 결과, 이벤트가 발생하면, 발생된 이벤트에 관련된 정보를 상기 제1 추종 로봇(850)에 전송할 수 있다(S822). 그리고 상기 제1 추종 로봇(850)은, 상기 발생된 이벤트에 따른 동작을 수행할 수 있다. 예를 들어 상기 발생된 이벤트에 따른 동작은, 상기 수신된 이벤트 관련 정보를 지휘 로봇에 전송하는 동작(S824)이 될 수 있고, 또는 상기 발생된 이벤트에 대응되는 특정 동작을 수행하도록 상기 제2 추종 로봇(860)을 제어하기 위한 제어 신호를 전송하는 동작일 수도 있다.
한편, 상기 이벤트가 상기 할당된 임시 임무의 완료에 대한 것이었다면, 제1 추종 로봇(850)은 임시 임무에 포함된 모든 과업이 완료되었는지 여부를 확인할 수 있다(S830). 그리고 상기 S830 단계의 판단 결과, 상기 임시 임무에 포함된 과업들이 모두 완료되지 않았다면, 제1 추종 로봇(850)은 할당되지 않은 과업이 있는지 여부에 따라 상기 S816 단계로 진행하여 새로운 과업을 상기 제2 추종 로봇(860)에 할당할 수도 있다. 그러나 상기 S830 단계의 판단 결과 현재 할당된 임시 임무가 완료된 경우라면, 제1 추종 로봇(850)은 상기 임시 임무의 완료를 지휘 로봇에 전송할 수 있다(S832). 그리고 임시 임무가 완료되는 경우, 제1 추종 로봇(850)은 기존에 수행하던 기존 과업을 계속하여 수행할 수 있다(S834).
한편 제2 추종 로봇(860)은 상기 S820 단계에서 감지된 이벤트가, 임시 과업의 완료에 대한 것인지 여부를 판단할 수 있다(S826). 그리고 상기 S826 단계의 판단 결과, 임시 과업이 완료되지 않았다면, 현재 수행중인 과업을 계속 진행하고, 상기 S820 단계에서 이벤트의 발생 여부를 감지한다. 그러나 상기 S826 단계의 판단 결과, 임시 과업이 완료된 경우라면, 제2 추종 로봇(860)은 기존에 수행하던 기존 과업을 계속하여 수행할 수 있다(S828).
한편 상기 도 8의 S820 단계에서, 제2 추종 로봇으로부터 감지되는 이벤트 역시, 상기 기 설정된 임시 임무 설정 조건에 해당되는 이벤트 일 수 있으며, 이러한 경우 상기 제2 추종 로봇이 다시 새로운 임시 지휘 로봇으로 설정될 수 있다. 이에 따라 상기 도 9에서 보이고 있는 것처럼, 제2 추종 로봇(870)이, 추종 로봇(Follow robot : F)에서 지휘 로봇(Command robot : C)로 설정될 수 있다. 이러한 경우 상기 제2 추종 로봇(870)은 상기 도 8에서 상술한 바와 유사한 방식으로 감지된 이벤트에 대응되는 임시 임무를 할당받을 수 있으며, 상기 임시 임무에 포함된 과업을 수행할 적어도 하나의 다른 로봇을 추종 로봇으로 선택할 수 있다. 그리고 이처럼 선택되는 추종 로봇은, 그 성능 및 특성, 그리고 상태 등에 따라 지휘 로봇 또는 현재 설정된 임시 지휘 로봇으로 설정된 로봇들도 과업을 수행할 로봇으로 선택될 수 있음은 물론이다.
한편 상술한 본 발명의 설명에서는 구체적인 실시 예에 관해 설명하였으나, 여러 가지 변형이 본 발명의 범위에서 벗어나지 않고 실시할 수 있다. 따라서 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 본 발명에 개시된 실시 예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시 예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석 되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100 : 로봇 협업 시스템 110 : 통제 시스템
120 : 통신망 130 : 복수 로봇 간 네트워크

Claims (13)

  1. 서로 다른 특성 및 기능을 가지는 복수의 로봇;
    상기 복수의 로봇 간에 통신이 이루어지도록 형성되는 네트워크; 및,
    상기 복수의 로봇 중 적어도 하나에 각각 적어도 하나의 과업을 포함하는 적어도 하나의 임무를 하달하는 통제 시스템을 포함하여 구성되며,
    상기 복수의 로봇 중 적어도 하나는,
    임무의 하달, 또는 특정 상황의 발생에 따라, 하달받은 임무에 포함된 적어도 하나의 과업을 분석 및 상기 분석된 과업별로 각 로봇의 서로 다른 특성 및 기능에 근거하여 상기 과업들을 상기 복수의 로봇 중 자신을 포함하는 적어도 하나의 로봇에 할당하는 지휘 로봇으로 설정되며,
    상기 지휘 로봇은,
    상기 할당된 과업을 수행하는 적어도 하나의 추종 로봇으로부터, 기 설정된 주기에 따라 상기 할당된 과업의 완료 여부에 관련된 피드백(feedback)을 수신 및, 수신된 피드백에 근거하여 상기 할당된 과업을 완수한 적어도 하나의 추종 로봇에 새로운 과업을 할당하는 것을 특징으로 하는 로봇 협업 시스템.
  2. 제1항에 있어서, 상기 지휘 로봇은,
    상기 임무에 포함된 과업들을, 상기 복수의 로봇이 수행할 경우에 예상되는 소요 비용에 근거하여 결정되는 과업-로봇 적합도에 근거하여 상기 과업들 각각에 대응되는 최적의 로봇을 할당하는 것을 특징으로 하는 로봇 협업 시스템.
  3. 제2항에 있어서, 상기 지휘 로봇은,
    상기 과업 로봇 적합도 및, 기 설정된 적어도 하나의 제약 사항에 근거하여 상기 과업들 각각에 대응되는 최적의 로봇을 할당하며,
    상기 적어도 하나의 제약 사항은,
    로봇에게 할당되는 최소 과업 및 로봇에게 가해지는 임무 부하, 로봇이 과업을 수행하는 시간, 및 상기 로봇에게 동시에 복수의 과업이 부여될 수 있는지 여부에 관련된 사항 중 적어도 하나를 포함하는 것을 특징으로 하는 로봇 협업 시스템.
  4. 삭제
  5. 제1항에 있어서, 상기 피드백은,
    상기 임무가 할당된 로봇의 기능 이상 및 특정 상황의 발생을 포함하는 것을 특징으로 하는 로봇 협업 시스템.
  6. 제5항에 있어서,
    상기 지휘 로봇은,
    상기 추종 로봇으로부터 특정 상황의 발생을 포함하는 피드백이 수신되는 경우, 상기 특정 상황의 발생이 기 설정된 임시 임무 조건에 대응되는 것인지 여부를 판단하고, 판단 결과에 근거하여 적어도 하나의 임시 과업을 포함하는 임시 임무를, 기 설정된 로봇 또는 기 설정된 조건에 따라 결정되는 적어도 하나의 추종 로봇에 할당하는 것을 특징으로 하는 로봇 협업 시스템.
  7. 제6항에 있어서, 상기 임시 임무가 할당된 추종 로봇은,
    로봇의 특성이나 기능 또는 위치 중 적어도 하나에 따라 상기 임시 임무에 포함된 적어도 하나의 임시 과업 별로 선택되는 것을 특징으로 하는 로봇 협업 시스템.
  8. 제6항에 있어서, 상기 임시 과업이 할당된 로봇은,
    현재 수행중인 과업이 있는 경우, 상기 임시 임무에 설정된 우선순위 및, 상기 현재 수행중인 과업에 대응되는 임무의 우선순위에 근거하여 상기 임시 과업 또는 현재 수행중인 과업을 우선적으로 수행하는 것을 특징으로 하는 로봇 협업 시스템.
  9. 서로 다른 특성 및 기능을 가지는 복수의 로봇에 임무를 하달하는 단계;
    상기 복수의 로봇 중 상기 임무의 하달 또는 특정 상황의 발생에 따라 적어도 하나의 로봇이 지휘 로봇으로 설정되는 단계;
    상기 지휘 로봇이 상기 하달받은 임무에 포함된 적어도 하나의 과업을 분석 및, 분석된 과업별로 각 과업을 수행할 적어도 하나의 추종 로봇을 상기 복수의 로봇으로부터 선택하는 단계;
    상기 지휘 로봇이 상기 적어도 하나의 추종 로봇에 상기 과업을 할당하는 단계;
    상기 지휘 로봇이, 상기 할당된 과업을 수행하는 적어도 하나의 추종 로봇으로부터 기 설정된 주기에 따라 상기 할당된 과업의 완료 여부에 관련된 피드백(feedback)을 수신 하는 단계; 및,
    상기 지휘 로봇이 상기 피드백에 근거하여, 할당된 과업을 완수한 적어도 하나의 추종 로봇에 새로운 과업을 할당하는 단계를 포함하는 것을 특징으로 하는 로봇 협업 시스템의 제어 방법.
  10. 제9항에 있어서, 상기 과업을 분석 및 추종 로봇을 선택하는 단계는,
    상기 임무에 포함된 과업들을, 상기 복수의 로봇이 수행할 경우에 예상되는 소요 비용에 근거하여 결정되는 과업-로봇 적합도에 근거하여 상기 과업들 각각을 수행할 로봇들을 선택하는 단계임을 특징으로 하는 로봇 협업 시스템의 제어 방법.
  11. 제10항에 있어서, 상기 과업을 분석 및 추종 로봇을 선택하는 단계는,
    상기 과업 로봇 적합도 및, 기 설정된 적어도 하나의 제약 사항에 근거하여 상기 과업들 각각을 수행할 로봇들을 선택하는 단계이며,
    상기 적어도 하나의 제약 사항은,
    로봇에게 할당되는 최소 과업 및 로봇에게 가해지는 임무 부하, 로봇이 과업을 수행하는 시간, 및 상기 로봇에게 동시에 복수의 과업이 부여될 수 있는지 여부에 관련된 사항 중 적어도 하나를 포함하는 것을 특징으로 하는 로봇 협업 시스템의 제어 방법.
  12. 제9항에 있어서, 상기 피드백은,
    상기 임무가 할당된 로봇의 기능 이상 및 특정 상황의 발생을 포함하는 것을 특징으로 하는 로봇 협업 시스템의 제어 방법.
  13. 제12항에 있어서, 상기 새로운 과업을 할당하는 단계는,
    상기 지휘 로봇이, 상기 추종 로봇으로부터 특정 상황의 발생을 포함하는 피드백이 수신되는 경우, 상기 특정 상황의 발생이 기 설정된 임시 임무 조건에 대응되는 것인지 여부를 판단하는 단계; 및,
    상기 지휘 로봇이, 상기 판단 결과에 따라 적어도 하나의 임시 과업을 포함하는 임시 임무를, 기 설정된 로봇 또는 기 설정된 조건에 따라 결정되는 적어도 하나의 추종 로봇에 할당하는 단계를 포함하며,
    상기 추종 로봇은,
    현재 수행중인 과업이 있는 경우, 상기 임시 임무에 설정된 우선순위 및, 상기 현재 수행중인 과업에 대응되는 임무의 우선순위에 근거하여 상기 임시 과업 또는 현재 수행중인 과업을 우선적으로 수행하는 것을 특징으로 하는 로봇 협업 시스템의 제어 방법.
KR1020150057138A 2015-04-23 2015-04-23 자율적 로봇 협업 시스템과 그 방법 KR101668078B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150057138A KR101668078B1 (ko) 2015-04-23 2015-04-23 자율적 로봇 협업 시스템과 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150057138A KR101668078B1 (ko) 2015-04-23 2015-04-23 자율적 로봇 협업 시스템과 그 방법

Publications (1)

Publication Number Publication Date
KR101668078B1 true KR101668078B1 (ko) 2016-10-19

Family

ID=57250632

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150057138A KR101668078B1 (ko) 2015-04-23 2015-04-23 자율적 로봇 협업 시스템과 그 방법

Country Status (1)

Country Link
KR (1) KR101668078B1 (ko)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180094162A (ko) 2017-02-13 2018-08-23 (주) 티오피에스 다양한 산업용 로봇 및 액츄에이터 협업을 위한 로봇 협업 엔진
CN108453746A (zh) * 2018-03-09 2018-08-28 齐齐哈尔大学 自主与协商相结合的多机器人协同探索技术
WO2019045288A1 (ko) * 2017-08-30 2019-03-07 엘지전자 주식회사 다중 로봇이 공간을 분할-작업하는 방법 및 이를 구현하는 로봇
CN110009209A (zh) * 2019-03-26 2019-07-12 深兰科技(上海)有限公司 一种机器人间信息交互的方法及装置
KR102038052B1 (ko) 2019-04-22 2019-10-29 국방과학연구소 군집 의사결정 방법 및 이를 수행하는 로봇
WO2020141635A1 (ko) * 2019-01-03 2020-07-09 엘지전자 주식회사 로봇 시스템의 제어 방법
CN112247987A (zh) * 2020-09-29 2021-01-22 深圳优地科技有限公司 一种机器人调度方法、装置、机器人和存储介质
US20210085146A1 (en) * 2017-12-18 2021-03-25 Lg Electronics Inc. Robot cleaners and controlling method thereof
KR102245824B1 (ko) 2020-03-02 2021-04-28 주식회사 큐리보 복수로봇 제어시스템 및 방법
KR102282360B1 (ko) * 2020-10-15 2021-07-27 주식회사 아이온커뮤니케이션즈 복수 로봇 제어 시스템 및 방법
WO2023027310A1 (ko) * 2021-08-26 2023-03-02 삼성전자주식회사 로봇 및 그 제어 방법
KR102507497B1 (ko) * 2022-07-27 2023-03-08 주식회사 파이엇 고객보호겸용 자율주행 운반용 서비스 로봇
KR102508952B1 (ko) * 2022-08-08 2023-03-14 국방과학연구소 복수의 로봇에게 임무를 할당하기 위한 전자 장치 및 그의 동작 방법
WO2023096151A1 (ko) * 2021-11-24 2023-06-01 삼성전자주식회사 로봇 및 그 제어 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100086093A (ko) * 2009-01-22 2010-07-30 주식회사 이제이봇 자율주행 군집로봇 위치 제어 시스템
KR20130068603A (ko) * 2011-12-15 2013-06-26 한국전자통신연구원 군집로봇의 역할 할당 방법
KR101408075B1 (ko) * 2013-07-09 2014-06-18 국방과학연구소 다중 로봇 시스템 및 다중 로봇 시스템 제어 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100086093A (ko) * 2009-01-22 2010-07-30 주식회사 이제이봇 자율주행 군집로봇 위치 제어 시스템
KR20130068603A (ko) * 2011-12-15 2013-06-26 한국전자통신연구원 군집로봇의 역할 할당 방법
KR101408075B1 (ko) * 2013-07-09 2014-06-18 국방과학연구소 다중 로봇 시스템 및 다중 로봇 시스템 제어 방법

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180094162A (ko) 2017-02-13 2018-08-23 (주) 티오피에스 다양한 산업용 로봇 및 액츄에이터 협업을 위한 로봇 협업 엔진
WO2019045288A1 (ko) * 2017-08-30 2019-03-07 엘지전자 주식회사 다중 로봇이 공간을 분할-작업하는 방법 및 이를 구현하는 로봇
US20210085146A1 (en) * 2017-12-18 2021-03-25 Lg Electronics Inc. Robot cleaners and controlling method thereof
CN108453746B (zh) * 2018-03-09 2021-07-13 齐齐哈尔大学 自主与协商相结合的多机器人协同探索方法
CN108453746A (zh) * 2018-03-09 2018-08-28 齐齐哈尔大学 自主与协商相结合的多机器人协同探索技术
WO2020141635A1 (ko) * 2019-01-03 2020-07-09 엘지전자 주식회사 로봇 시스템의 제어 방법
US11500393B2 (en) 2019-01-03 2022-11-15 Lg Electronics Inc. Control method of robot system
CN110009209A (zh) * 2019-03-26 2019-07-12 深兰科技(上海)有限公司 一种机器人间信息交互的方法及装置
KR102038052B1 (ko) 2019-04-22 2019-10-29 국방과학연구소 군집 의사결정 방법 및 이를 수행하는 로봇
KR102245824B1 (ko) 2020-03-02 2021-04-28 주식회사 큐리보 복수로봇 제어시스템 및 방법
CN112247987A (zh) * 2020-09-29 2021-01-22 深圳优地科技有限公司 一种机器人调度方法、装置、机器人和存储介质
KR102282360B1 (ko) * 2020-10-15 2021-07-27 주식회사 아이온커뮤니케이션즈 복수 로봇 제어 시스템 및 방법
WO2022080605A1 (ko) * 2020-10-15 2022-04-21 주식회사 아이온커뮤니케이션즈 복수 로봇 제어 시스템 및 방법
WO2023027310A1 (ko) * 2021-08-26 2023-03-02 삼성전자주식회사 로봇 및 그 제어 방법
WO2023096151A1 (ko) * 2021-11-24 2023-06-01 삼성전자주식회사 로봇 및 그 제어 방법
KR102507497B1 (ko) * 2022-07-27 2023-03-08 주식회사 파이엇 고객보호겸용 자율주행 운반용 서비스 로봇
KR102508952B1 (ko) * 2022-08-08 2023-03-14 국방과학연구소 복수의 로봇에게 임무를 할당하기 위한 전자 장치 및 그의 동작 방법

Similar Documents

Publication Publication Date Title
KR101668078B1 (ko) 자율적 로봇 협업 시스템과 그 방법
Wei et al. An operation-time simulation framework for UAV swarm configuration and mission planning
Sivasankaran et al. Literature review of assembly line balancing problems
Michalos et al. Multi criteria assembly line design and configuration–An automotive case study
Fikar et al. A discrete-event driven metaheuristic for dynamic home service routing with synchronised trip sharing
Valckenaers et al. Holonic manufacturing systems
EP2703922B1 (en) System and method for dynamic control of task assignments in a fabrication process
Zaeh et al. A holistic approach for the cognitive control of production systems
JP2008530705A (ja) 適応型機械プログラミングのためのシステム及び方法
Mohagheghi et al. Dynamic demand response: A solution for improved energy efficiency for industrial customers
Lermen et al. Optimization of times and costs of project of horizontal laminator production using PERT/CPM technical
US20220100184A1 (en) Learning-based techniques for autonomous agent task allocation
Novas et al. A collaborative framework between a scheduling system and a holonic manufacturing execution system
Wilcox et al. Optimization of multi-agent workflow for human-robot collaboration in assembly manufacturing
Khaluf et al. Task Allocation Strategy for Time-Constrained Tasks in Robot Swarms.
Dusadeerungsikul et al. Collaboration requirement planning protocol for HUB-CI in factories of the future
Ma et al. Anarchic manufacturing: Distributed control for product transition
Snyman et al. Real-time scheduling in a sensorised factory using cloud-based simulation with mobile device access
Hussain et al. A multi-agent based dynamic scheduling of flexible manufacturing systems
JP5920674B2 (ja) エレベータの群管理システム
Jiang et al. An adaptive agile manufacturing control infrastructure based on TOPNs-CS modelling
Dhanaraj et al. Human-guided goal assignment to effectively manage workload for a smart robotic assistant
Hasgül et al. Project-oriented task scheduling for mobile robot team
Feo-Flushing et al. Spatially-distributed missions with heterogeneous multi-robot teams
Sugimura et al. A study on integrated process planning and scheduling system for holonic manufacturing

Legal Events

Date Code Title Description
J301 Trial decision

Free format text: TRIAL NUMBER: 2016101000609; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20160129

Effective date: 20160907

S901 Examination by remand of revocation
GRNO Decision to grant (after opposition)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20191002

Year of fee payment: 4