DOI QR코드

DOI QR Code

Indirect Configuration Control of Embedded Swarm System Based on Human-Swarm Interaction

임베디드 군집 시스템의 상호작용 기반 간접적 군집 구성 제어

  • Received : 2018.09.10
  • Accepted : 2018.10.02
  • Published : 2019.02.28

Abstract

Embedded swarm systems consist of a large number of robots that use local control laws based on spatial information nearby environment and adjacent robots. In this paper, we propose a new scheme for indirect swarm configuration in swarm interaction system to adapt the swarm operation according to the desired goal. Also, we provide a method for the operator to observe the state of the swarm, which results in providing appropriate input to the swarm. We analyze the stability properties of the proposed swarm system and show the simulation results.

Keywords

Ⅰ. 서론

군집 임베디드 시스템은 간단한 제어 법칙을 바탕으로 자율적으로 조정하는 많은 임베디드 로봇들로 구성된다. 로봇 군집 행동은 집합적이고, 확장·축소가 가능하며, 개별 로봇의 실패에도 강인함을 고려할 때 로봇 군집 시스템은 환경 개발, 대규모 탐사 및 구조, 보호 등을 포함한 다양한 과제들에 유용하다 [1, 2].

기존의 연구들은 관리자 없이 작동할 것으로 예상되는 임베디드 군집의 완전한 자율성을 목표로 수행되어 왔다 [3-5]. 하지만, 현재의 임베디드 군집 시스템은 주어진 업무들을 자율적으로 수행하지 못하고 있고 대부분의 많은 업무들은 관리자와 군집 시스템 간 조정을 필요로 한다. 최근 연구들에서 관리자 존재가 유용하고 필요하다 사실이 입증되었다 [6-9]. 관리자는 군집 상태를 인지하고 의도한 목표가 바뀔 경우 변수 조정 혹은 군집 구성을 로봇 군집 시스템에 전달할 필요가 있다. 따라서 인간과 군집 시스템의 상호작용에 기반 하여 로봇 군집에 대한 관리자 감독 제어가 필요하게 되었다 [10-12].

일반적으로 군집 행동은 일련의 군집 알고리즘 변수나 관리를 위한 시스템 변수의 선정에 의해 달라지게 된다. [4]에서 군집 시스템에 영향을 미칠 수 있는 4가지 제어 유형을 제시하였다. 즉, 바람직한 군집 행동을 실행하는 알고리즘 사이의 변경, 군집 제어 알고리즘 변수의 변경, 간접 군집 제어, 선정된 군집 리더를 통한 제어 등이다. 브로드캐스팅 (broadcasting)은 일반적으로 관리자가 명령이나 변경된 변수를 전체 임베디드 군집 시스템에 보내는 데 사용된다. 그러나 많은 수의 로봇을 가진 군집 시스템은 관리자와 직접 커뮤니케이션을 할 수 없다. 이러한 대규모 임베디드 군집을 제어하기 위해 리더 기반 군집 제어가 제안되었고 이는 관리자가 리더를 선정하여 직접 제어하고 나머지 로봇들은 리더와 나머지 군집 로봇의 상호작용을 통해 또한 로컬한 제어법칙에 근거하여 군집 행동을 제어하게 된다 [12-16]. Walker [12, 13]등은 두 가지의 리더 기반 정보 전달 방식을 제안하고 비교하였다. Goodrich 등 [14] 은 Couzin의 제어법을 바탕으로 원격조정 리더를 이용한 리더 기반 군집 제어를 연구하였다. Pendleton 등 [15] 은 가상 매개체와 인간 관리자를 군집의 리더로 이용하는 이와 유사한 리더 기반 모델을 제안하였다.

이러한 리더 기반 모델에도 불구하고 기존 연구들은 로봇 군집 행동이나 모든 군집 인원들에 대한 직접적인 인간 제어에 집중되었고 군집 시스템 내 상호작용으로부터 새롭게 나타나는 간접적 영향으로 군집 행동을 제어하는 방법은 고려하지 않았다. 게다가 새롭게 나타나는 군집 행동의 국지성과 예측불가능성이 군집 전체에 영향을 주는 것을 어렵게 만들기 때문에 로봇 배치 후 군집의 실시간 제어는 아직까지 해결되지 않은 문제들 중에 하나로 남아 있다. 본 논문은 관리자로부터 직접 변수를 전달받는 것보다 자율 알고리즘에 의한 간접적인 군집 구성 방법을 제안한다. 또한 군집 관리자로부터 구성 입력치를 전달하는 하나의 제어 루프와는 별개로 또 다른 중요한 문제는 로봇 군집의 상태를 관리자에게 피드백하고 예측하는 것이다. 이를 위해 본 논문은 인간 관리자가 사용자 명령과 제어 입력치에 대한 반응으로 군집 상태를 관찰할 수 있는 기능을 제안한다. 본 논문에서 제안한 리더 기반 간접적 로봇 군집 구성을 통해 분산된 방식으로 군집 시스템 변수를 간접적으로 설정하게 된다. 또한 관리자는 군집 상태를 예측하고 이해함으로써 군집 상태를 효율적으로 제어할 수 있게 한다.

Ⅱ. 간접적 로봇 군집 구성 방법

1. 군집 모델

N개의 임베디드 로봇들과 한 명의 관리자로 구성된 인간-로봇 군집 (HRS) 시스템을 고려한다. N={1,2,...,N}이 로봇 군집 시스템에서 로봇 집합을 표현한다고 하자. 로봇 i (1 ≤ i ≤ N ) 의 이웃 로봇들 집합은 Ni (⊆ N) 이며 그 집합의 로봇 수는 Ni (≤ N) 이다. HRS 의 전방 제어 루프 (forward control loop)에서는 인간 관리자가 임베디드 로봇 군집 중 특정 로봇을 선정하여 그를 직접 제어함으로써 로봇-군집 시스템을 제어하게 된다. 나머지 로봇들은 각자 로컬한 제어 규칙에 따라 행동하고 이는 전체 로봇 군집의 행동을 결정하게 된다. HRS의 후방 제어 루프 (backward control loop)를 위해선 군집 상태에 관한 피드백을 제공하는 단일 로봇을 통해 인간 관리자가 로봇 군집 상태를 관찰한다. 군집을 하나의 전체로 보고 제어가 이루어질 뿐 개별 군집 로봇들에 대해선 제어가 이루어질 수 없다.

시간 t에서의 HRS 시스템 상태를 x(t)로 표시하며 u(t)를 사용자가 시간 t 에서 로봇 군집에 대한 제어 입력 혹은 기대 구성 집합으로 표현한다. 특히, x(t)는 시간 t 에서 모든 군집 로봇 상태의 벡터를 의미하고 벡터 x(t) = [x1(t)x2(t)· · · xN(t)]T 로 나타날 수 있다. 여기서 xi(t)=[x1(t) x2(t) · · · xn(t)]T∈Rn 는 시간 t 에서 로봇 i 의 상태 벡터이고 개별 로봇은 n-차원 상태 공간을 가진다. 이러한 HRS 시스템 역학은 다음과 같이 정의될 수 있다:

\(\dot{x}(t)=f(x(t),u(t))\)       (1)

사용자는 특정 임베디드 로봇 (게이트웨이 로봇)에 제어 입력치를 적용함으로써 로봇 군집과 상호작용을 하는 반면, 단일 로봇을 제외한 나머지 로봇들은 다음의 로컬 제어 규칙을 통해 자신의 상태 벡터를 조절한다:

\(\dot{x}_{i}(t)=\sum_{j \in N_{i}}\left(x_{j}(t)-x_{i}(t)\right), \forall i, i \neq N\)       (2)

인간 관리자는 u(t) ∈ Rn 을 통해 군집 개체들이 사용하는 기본 제어규칙에 따라 어떤 정보가 전달되기 앞서 게이트웨이 로봇에 변수 변경을 알린다. 군집에서 N번째 로봇이 게이트웨이 로봇이고 사용자 입력치는 게이트웨이 로봇에 xN(t)=u(t)로 직접 적용된다. 따라서 게이트웨이 로봇 역학은 다음과 같다.

\(\dot{x}_N(t)=0\)       (3)

식 (2), (3)에 따라, 인간 관리자는 단일 게이트웨이 로봇 상태를 직접 제어하고 군집 로봇 사이의 상호작용은 자율적으로 처리된다. 즉, 사용자의 의도된 명령은 게이트웨이 로봇에 직접 전달되고 각각의 군집 개체 로봇은 각자 인지할 수 있는 이웃 로봇들과 상태 벡터를 교환 한 후 자신의 상태 벡터를 재설정한다. 이런 방식으로 인간 관리자는 로봇 개체 규모과 무관하게 조치를 취하고 로봇 군집 시스템을 단일체로 감독하여 O(1)의 제어 복잡성을 갖게 된다.

2. 시스템 분석

제안된 HRS 시스템의 안정성을 분석한다. HRS 상태 벡터의 안정된 상태를 xs로 표시하는데, 제안한 HRS 시스템이 점근적으로 수렴할 수 있는 상태를 의미한다.

xs = [x1s x2s ··· xNs]T 는 벡터 x(t)의 안정된 상태 벡터로 정의하고 xis ∈ Rn 는 로봇 i의 안정 상태이다. 기대하는 군집 구성 집합 u(t)는 u(t) ≃ u 같은 불연속 상수로 가정한다. (2)로부터 xi의 안정된 상태는 xis로 표시한다. 그렇다면 xis는 다음과 같이 유도된다:

\(x_{i s}=\frac{1}{N}\left(1_{(i, 1)} x_{1 s}+1_{(i, 2)} x_{2 s}+\cdots+1_{(i, N)} x_{N s}\right.\)       (4)

여기서 1(i,j)은 표시 함수로 1(i,j) = 1 일 때 j ∈ Ni 이며 그렇지 않으면 1(i,j) = 0 이므로 ∀j∈Ni, 1(i,j) = Ni 이다. xs = [x1s x2s ··· x(N−1)s]T로 재정의하면 (4)는 다음과 같이 다시 쓸 수 있다:

\(Ax_s=b\)       (5)

여기서

\(A=\left[\begin{array}{cccc} 1 & -\frac{1}{N_{1}} 1_{(1,2)} & \cdots & -\frac{1}{N_{1}} 1_{(1, N-1)} \\ -\frac{1}{N_{2}} 1_{(2,1)} & 1 & \cdots & -\frac{1}{N_{2}} 1_{(2, N-1)} \\ \vdots & \ddots & \ddots & \vdots \\ -\frac{1}{N_{N-1}} 1_{(N-1,1)} &-\frac{1}{N_{N-1}} 1_{(N-1,2)} & \ddots & -\frac{1}{N_{N-1}} 1_{(N-1, N)} \end{array}\right]\)

\(b=\left[\frac{1_{(1, N)}}{N_{1}} \frac{1_{(2, N)}}{N_{2}} \cdots \frac{1_{(N-1, N)}}{N_{N-1}}\right]^{T}\)

(5)에서 xis 를 얻기 위해 우리는 1(i,N) = 1 와 1(i,N) = 0 의 두 가지 경우로 구분한다. 1(i,N) = 1 일 경우 xNs = u 임을 의미한다. 따라서 (4)에서 다음의 식을 얻게 된다.

\(\sum_{j \in N_{i}} \overline{x}_{j s}=\left(N_{i}-1\right) \overline{x}_{i s}+u\)       (6)

이는

\(x_{s}=[u u \cdots u]^{T}\)       (7)

1(i,N) = 0 일 경우

\(\sum_{i \in N_{i}, i \neq N} \overline{x}_{j s}=\left(N_{i}\right) \overline{x}_{i s}\)       (8)

이 때 N ∈ Nj 인 어떤 j (∈ Ni) 가 존재한다면, 우리는 xis = xjs 를 얻는다.

\(x_{s}=\left[x_{s 1} x_{2 s} \cdots x_{N s}\right]^{T}=[u u \cdots u]^{T}\)       (9)

이는 제안한 HRS 시스템을 통해 관리자가 u(t)에 의해 설정된 값으로 간접적으로 임베디드 군집 시스템에 적용하고 구성할 수 있음을 보인다.

Ⅲ. 시뮬레이션 결과

제안한 HRS 시스템 성능을 평가하기 위해 우리는 MATLAB 을 이용한 시뮬레이션 환경을 개발한다. 시뮬레이션 면적은 100 m × 100 m 이고, 여기서 전체 네트워크는 동일한 모양의 그리드로 나뉜다. N = 100 으로 설정하고 군집 로봇은 임의로 연결된다. 게이트웨이 로봇은 R100 로 표시되는데 이는 관리자에 의해 랜덤으로 선정된다. 채널 용량은 200 kbps 로 설정되고 전송 범위와 통신 센서 범위는 각각 20 m와 40 m로 설정된다.

그림 1은 임베디드 로봇 상태의 시간 궤적을 보여준다. 2차원 공간은 결과를 시각적으로 쉽게 보여주기 위해 선택하였다. 제어 입력치는 •로 표시하였고 u = [4, 4]T∈ R2 로 설정하였다. 50개 로봇에서 랜덤으로 3개를 정해서 R1, R2, R3 으로 표기했으며 이들의 상태 시간 궤적은 xi = [x1, x2]T∈R2 , (i = 1, 2, 3) 이다. R1, R2, R3의 초기 상태를 각기 [1, 2]T, [3,1.5]T, [4,8]와 같이 각각 다르게 설정한다. 그림 1 (a)는 각각의 로봇 초기 상태의 차이에도 불구하고 모든 로봇의 상태가 기대 상태 u 로 수렴된다는 것을 보여준다. 그림 1 (b)는 100 개 로봇 중 10개 (R1, R2, ···, R10) 의 상태 궤적을 보여준다. 각각의 로봇의 초기 상태는 각기 다르게 설정되며 ×로 표시하였다. 20초 이후로는 각각의 로봇 상태가 자율적으로 적응되고 관리자에 의해 주어진 제어 입력치로 수렴된다는 것을 보여준다.

OBDDBE_2019_v14n1_19_f0001.png 이미지

그림 1. u=[4, 4]T 적용하였을 때 임베디드 로봇 상태 시간 궤적: (a) R1 , R2, R3의 상태. 시뮬레이션 초기 상태는 x1=[1,2]T, x2=[3,1.5]T, x3=[4,8]T, (b) 10개 임베디드 로봇의 상태 벡터. 각각 로봇의 초기 상태는 ×로 나타남.

Fig. 1 (a) Time trajectories of state of R1,R2,R3 with u=[4,4]T. The initial states of simulation start from x1=[1,2]T, x2=[3,1.5]T, x3=[4,8]T and (b) Time trajectories of 10 embedded robots with u=[4,4]T indicated by .. The initial state of each robot is indicated by a mark ×.

다음으로 제어 입력치 변화와 상응하는 상태 궤적을 측정한다. 사용자 입력은 초기에 u = 2로 설정되고 40초에 u = 4로 변경된다. 그림 2는 제어 입력치 변경에 따른 상태 적응 행동을 보여준다. 실선 궤적은 인간 관리자에 의해 제어되는 R100 의 상태를 의미한다. 그림 2 (a)는 다른 초기 값을 갖고 출발하는 각각의 로봇을 보여주지만 10초 후 모든 로봇은 u = 2 라는 같은 값으로 수렴함을 보인다. 40초 후 제어 입력치는 4로 변하고 그로부터 10초 후 로봇의 상태 값 역시 4로 수렴한다. 인간 관리자는 오직 R100 의 설정만 변경함으로 나머지 군집 로봇들의 구성 변수를 조정할 수 있음을 보여준다. 또한 관리자는 게이트웨이 로봇 값을 통해 군집 전체 상태를 알 수 있는데 이는 다음 제어 입력치 전송 타이밍을 정확히 정하는데 도움을 준다. 그림 2 (b)는 2차원 사용자 입력 변경에 따른 R1 ,R2, R3의 상태 적응을 보여준다. 앞선 결과와 유사하게 각각의 로봇 상태 값은 관리자 입력 변경에 따라 성공적으로 적응하고 기대 상태에 군집 전체가 수렴하는 것을 보여준다.

OBDDBE_2019_v14n1_19_f0002.png 이미지

그림 2. 사용자 입력 변경에 따른 상태 적응: (a) u∈ R, (b) u ∈ R2

Fig. 2 (a) State adaptation according to user input change: (a) u ∈ R and (b) u ∈ R2

그림 3은 제어 입력 변수 u(t) = [u1(t), u2(t)]T 에서 R1, R2, R3의 안정 상태를 보여준다. 간단하게, u1(t) 는 [0.1, 2.0] 범위 내에서 변하며 u2(t) 는 u2(t) = 2exp(−u1(t)) 로 정해진다. R1, R2, R3 의 안정 상태는 다양한 제어 입력 치에도 불구하고 성공적으로 잘 따라감을 확인할 수 있다.

OBDDBE_2019_v14n1_19_f0003.png 이미지

그림 3. 사용자 입력에 따라 변하는 로봇의 안정상태

Fig. 3 Steady states of robots varying user input

Ⅳ. 결론

본 논문은 인간과의 상호작용 기반 간접적 로봇 군집 구성 제어 방법을 제안하였다. 사용자는 단일 로봇에 제어 입력치를 전송하고 나머지 임베디드 로봇들은 각자의 로컬한 제어법칙에 따라 이웃끼리의 상호작용을 기반으로 구성 환경을 전달한다. 관리자는 군집 역학을 이해함으로써 군집 상태를 효과적으로 관찰할 수 있고 게이트웨이 로봇 피드백에만 근거하여 다음 제어 입력치 타이밍을 계산할 수 있다. 제안한 방법의 이론적 분석을 통해 시스템의 안정된 상태를 도출하였고 시뮬레이션 결과로 검증하였다. 추후 연구로 게이트웨이 로봇 선정, 성능 영향 평가, 적합한 다음 명령을 위한 의사 결정 등의 문제를 해결하고 실제 구현을 통해 제안한 알고리즘을 보완하고자 한다.

References

  1. A. Kolling, P. Walker, N. Chakraborty, K. Sycara, and M. Lewis, “Human Interaction with Robot Swarms: a Survey,” Jounal of IEEE Transaction on Human-Machine Systems, Vol. 46, No. 1, pp. 9-26, 2016. https://doi.org/10.1109/THMS.2015.2480801
  2. J. Jana, K. Thomas, M. Benedikt, "Multi-agent Systems for Decentralized Control and Adaptive Interaction Between Humans and Machines for Industrial Environments," Proceedings of IEEE International Conference System Engineering and Technology, pp. 95-100, 2017.
  3. J. C. Barca, Y. A. Sekercioglu, “Swarm Robotics Reviewed,” Journal of Robotica, Vol. 31, No. 3, pp. 345-359, 2013. https://doi.org/10.1017/S026357471200032X
  4. M. Brambilla, E. Ferrante, M. Birattari, M. Dorigo, "Swarm Robotics: a Review from the Swarm Engineering Perspective," Journal of Swarm Intelligence Vol. 7, No. 1, pp. 1-41, 2013. https://doi.org/10.1007/s11721-012-0075-2
  5. Y. Tan, Z. Y. Zheng, “Research Advance in Swarm Robotics,” Journal of Defence Technology, Vol. 9, No. 1, pp. 18-39, 2013. https://doi.org/10.1016/j.dt.2013.03.001
  6. A. Kolling, P. Walker, N. Chakraborty, K. Sycara, M. Lewis, “Human Interaction with Robot Swarms: a Survey,” Jounal of IEEE Transaction on Human-Machine Systems, Vol. 46, No. 1, pp. 9-26, 2016. https://doi.org/10.1109/THMS.2015.2480801
  7. M. Lewis, “Human Interaction with Multiple Remote Robots,” Journal of Reviews of Human Factors and Ergonomics, Vol. 9, No. 1, pp. 131-174, 2013. https://doi.org/10.1177/1557234X13506688
  8. S. Kerman, D. Brown, M. Goodrich, "Supporting Human Interaction with Robust Robot Swarms," Proceedings of International Conference of Resilient Control Systems, pp. 197-202. 2011.
  9. J.-P. de la Croix, M. Egerstedt, "A Control Lyapunov Function Approach to Human-swarm Interactions," Proceedings of IEEE American Control Conference pp. 4368-4373, 2015.
  10. B. Tabibian, M. Lewis, C. Lebiere, N. Chakraborty, K. Sycara, S. Bennati, M. Oishi, "Towards a Cognitively-based Analytic Model of Human Control of Swarms," Proceedings of AAAI Spring Symposium Series, pp. 68-73, 2014.
  11. K. Sycara, C. Lebiere, Y. Pei, D. Morrison, Y. Tang, M. Lewis, "Abstraction for Analytical Models from Cognitive Models of Human Control of Robotic Swarms," Proceedings of International Conference Cognitive Model, pp. 13-18, 2015.
  12. P. Walker, S. A. Amraii, M. Lewis, N. Chakraborty, K. Sycara "Human Control of Leader-based Swarms," Proceedings of IEEE International Conference Systems Man, Cybemetics, pp. 2712-2717, 2013.
  13. M. Goodrich, B. Pendleton, P. Sujit, J. Pinto, "Toward Human Interaction with Bio-inspired Robot Teams," Proceedings of International Conference Systems Man, Cybemetics, pp. 2859-2864, 2011.
  14. B. Pendleton, M. Goodrich, "Scalable Human Interaction with Robotic Swarms," Proceedings of American Institute of Aeronautics and Astronautics, pp. 4731, 2013.
  15. P. Walker, S. A. Amraii, N. Chakraborty, M. Lewis, K. Sycara, "Human Control of Robot Swarms with Dynamic Leaders," Proceedings of IEEE/RSJ International Conference Intell. Robot. Syst., pp. 1108-1113, 2014.
  16. Y. Park, J. Moon, "Smart Dairy Management System Development Using Biometric / Environmental Sensors and Farm Control Gateway," IEMEK J. Embed. Sys. Appl., Vol. 11, No. 1, pp. 15-20, 2016 (in Korean). https://doi.org/10.14372/IEMEK.2016.11.1.15