본문 바로가기

블로그

LG CNS 기술블로그 DX Lounge에서 최신 IT 소식을 만나보세요!

IT Trend

‘나’와 다른 ‘너’와의 상호 작용을 위한 IT의 역할 (1편)- 시스템이라는 환경 속, 여러 개체들 관계와 인터페이스(Interface) 역할에 대해 –

2015.01.09

‘Knowledge is a process of piling up facts. Wisdom lies in its simplification.'(지식이란 사실들을 축적하는 과정이고, 지혜는 그 축적한 지식들의 단순화에 있다.)
– Martin H. Fischer(마틴 피셔)

의사였던 피셔의 이 말은 현대 IT 트렌드 및 역할과 관련지어 재해석해 볼 수 있을 것 같습니다. 수없이 많이 연결된 개체들에서 쏟아져 나오는 디지털화된 빅데이터의 홍수 속에서, 이들을 어떻게 받아들여 해석하고, 어떤 가치 있는 정보로 정제 혹은 변환할 것이냐에 대한 답이 되겠죠. 그리고 다시 이것을 사람과 사람, 기계와 기계/사람/환경/비즈니스 운영 시스템 등에 연결하고, 메시지나 시그널을 통해 내가 아닌 객체에게 더 편리한 서비스로 교환, 상호 작용 또는 전달하는 것이 아닌가 싶습니다.

결국 이러한 과정은 사물인테넷(IoT)과 IT라는 광범위하면서도 모호한 개념의 역할 및 정의와도 일맥상통한다고 생각되는데요. 지금부터 시스템이라는 환경 속의 여러 개체들 사이의 관계와 그 속에서의 IT, 특히 인터페이스(Interface)의 역할에 대해 함께 생각해 보도록 하겠습니다.

구조화된 질서를 바탕으로 한 ‘가상’으로

수많은 이질적인 개체들이 시시각각으로 쏟아 내는 자연적인 특질, 행위, 어떤 의도된 행동, 그리고 연결된 관계 속에서 발생하는 상호 작용들을 관찰하면, 우리는 많은 데이터를 얻을 수 있습니다. 또한 이들 개체를 ‘분류-체계화’하는 과정을 통해, 개체의 드러난 질서뿐만 아니라 숨겨질 질서 및 속성에 대한 정보를 추론할 수 있는데요. 이것이 바로 실체를 가상으로 동형화(homomorphism)하는 ‘맵핑-모델링’ 작업의 본질입니다. 가상 세계에서 모델링된 동종의 개체들은 패턴과 매개 변수를 바탕으로 개별적인 차이를 갖게 되는 것이죠.

그러나 컴퓨팅 환경에서의 경우는 조금 다릅니다. 이때의 이질적인 개체들은 서로 상이한 운영 체제 및 대화법을 사용하기 때문이죠. 따라서 이들 전부와 상호 작용할 수 있도록 질서와 정보 처리를 담당하는 응용 프로그램을 구축하고 개발하는 것은 매우 힘든 일입니다. 뿐만 아니라, 현재 연결된 기기는 기계 간 통신이 독점 인프라에 걸쳐 이루어지는 특정 산업 또는 기업별로 집중하여 개발되고 있는 상황입니다.

그렇다면 최근 주목받고 있는 커넥티드 카(Connected Car) 운전 시스템을 예로 한번 들어 볼까요? 이들은 자동차에서 발생할 수 있는 기계적 진단 데이터, 주행 상황 등의 차량 데이터, 운전자의 상태, 운전 습관, 날씨, 도로 상황, 신호등의 환경적 측면 등 자동차 운전과 관련된 모든 개체들의 다양한 정보를 추출합니다. 그리고 이들이 발생 가능한 상황과 상호 작용을 모델화하고, 중간자 스마트 기기를 통해 다양한 서비스(충돌 예고, 점검 알림 등)들을 제공하는데요. 그러나 현재는 자체 브랜드 자동차와 관계된 그룹 등과의 연결에만 국한되어 있는 것이 한계점이라고 볼 수 있습니다.

서로 다른 것들 사이에서 ‘유사성’과 ‘패턴’ 찾기!

앞서 잠시 살펴보았지만, 어떤 개체의 추상화를 통해 부분 혹은 전체를 도식화하려는 움직임은 인류의 역사와 함께 시작되었습니다. 그리고 컴퓨터가 생긴 이후에는 ‘모델링-시뮬레이션(M&S) 공학’으로 발전했는데요. 현재는 인간 자체를 모델링하는 단계까지 이르렀습니다. 시작은 개체군의 집단화된 모델링이었지만, 점점 더 세분화된 그룹으로의 모델링, 그리고 각각의 개체들의 관계 모델링으로 발전하고 있는 상황인 것이죠.

<생태계, 조직 혹은 각각의 개체가 가진 프랙털 자기 유사성(Self-similarity)과
Sierpiński Pyramid(출처: Senexrex, BoostZone)>

다시 말해, 위의 자료에서처럼 우리가 살아가고 있는 인류 중심의 이 세상은 인간 개개인, 동식물 생태계, 사회, 조직, 기업, 산업, 기계 등의 다양한 개체들이 모두 다르게 보이지만 결국은 아니라는 것입니다. 시스템 또는 현상적으로 혼돈 속의 질서라 표현되는 ‘프랙털(Fractal)’한 구조를 갖고, 서로 관계를 맺고 있다고 볼 수 있습니다. 나무와 나뭇가지 등의 관계라고 볼 수 있는 것이죠.

그렇다면, 개체들의 관계를 파악하기 위해서는 어떻게 분류해 볼 수 있을까요?

1) 군집화와 위상 구조를 통한 개체 간의 관계 파악

시스템이라는 것은 공통의 목적 혹은 해상도의 수준에 따라 그 경계와 추상화의 정도가 정해집니다. 그리고 개체 혹은 개체들의 특질끼리 서로 관계를 맺고 있는데요. 이 관계들은 어떤 필요성이나 확률을 바탕으로 활성화 또는 발생할 수도 있고, 그렇지 않을 수도 있습니다.

예를 들어, 어떤 시스템 속의 각각의 n개의 개체들을 네트워크 상의 점(Node)이라고 가정해 봅시다. 이럴 경우, 가장 복잡할 것이라고 상상되는 개체들의 네트워크는 모든 점들이 완전히 n(n-1)/2개의 연결선으로 연결된 ‘망형 구조(Mesh Topology)’라고 할 수 있는데요. 물론 현실적으로 완전히 연결된 망형 구조는 존재하기 힘듭니다. 그러나 현실 세계에서 소우주라고도 불리는 우리 인간의 뇌는 천억 개의 신경 세포(Neuron, 점에 해당)와 각각의 신경 세포에서 대략 작게는 1,000개의 연결을 가능케 하는 시냅스(Synapse, 접점), 그리고 그로 인해 총 100조 개의 연결선에 의한 관계들로 이루어져 있다고 합니다.

<트리형의 위상 구조(좌)와 그와 흡사한 공장 제조 시스템의 구조(우)(출처: http://www.renesas.eu/)>

그러나 초연결 사회에서의 ‘연결’은 그 정도까지의 복잡성을 가지지는 않겠죠. 하지만 가상 세계에서 모델링, 개발, 관리를 위해서는 어떠한 위상 구조로의 정렬이 필요합니다. 구조화가 이루어지면, 비로소 관계 도식화가 가능해지고, 관리나 확장 면에서도 더욱 용이하기 때문이죠. 특히 위에 자료로 제시한 ‘시에르핀스키 피라미드’ 혹은 ‘트리형 위상 구조’는 분류, 부모-자식 관계에 의한 계층적 종속/상속성 등을 쉽게 표현할 수 있는데요. 생산 시스템, 공장 혹은 기업의 조직 구조 또한 이러한 비선형 위상 구조로 표현되는 경우가 많습니다. 뿐만 아니라, 컴퓨터 네트워크 위상 구조, 대부분의 운영 체제 파일 시스템, 검색 엔진, XML 같은 DOM(Document Object Model), 데이터베이스, 객체 지향(Object-oriented) 언어 등에도 응용되며, 복잡한 자료 구조의 설계 및 탐색에도 무척 용이합니다.

특히 생산 시스템에서의 공장 자동화는 여러 기계 장비들이 연결된 네트워크 구조에 근간하여 실현됩니다.

<전통적인 제조 산업 네트워크 인터페이스에서 통합된 버스 인터페이스로의 전환(출처: http://www.renesas.eu/)

제시한 자료는 전형적인 피라미드형의 네트워크 구조를 나타내고 있는데요. 즉, 비즈니스 시스템, 공장 전체 생산 실행 관리자, 개별 기계(CNC, Robots, 등) 제어기(SCADA (Supervisory Control and Data Acquisition) 시스템으로도 알려져 있는), 기계, 툴 등에 부착된 센서(Sensor), 가동 장치(Actuator) 등의 세부 기기 등이 계층적으로 그룹을 지어서 서로 통신하고 하고 있는 형태입니다. 그러나, 이의 가장 큰 문제점은 계층별로 각기 다른 프로토콜을 사용해 왔다는 것입니다. 이는 복잡성, 비효율성을 야기하고 계층별 혹은 기기별로 별개의 통신 인터페이스들을 요구하겠죠. 그래서 점차 이를 단순화하려는 움직임이 나타나기 시작했습니다. 비선형의 트리 구조를 선형화된 버스 구조 즉, 표준화된 ESB(Enterprise Service Bus)라는 미들웨어(Middleware)를 통해 이질적인 메시지 통신 인터페이스들을 하나의 SOA(Service Oriented Architecture) 안에 통합하려는 것입니다.

즉, 이러한 미들웨어가 하나의 큰 서버 인터페이스가 되어 메시지 변환 등의 기능들을 통합하고, 클라이언트 쪽 개발자들은 아키텍쳐에서 제공되는 라이브러리 등을 통해 규격화된 규칙과 형식으로 개별 기기의 간소화된 인터페이스를 구현할 수 있게 되는 것이죠. ‘JBossFuse’, ‘IBM WebSphere ESB’, ‘Oracle service BUS’, ‘WSO2’ 등의 상업적 서비스 플랫폼 등이 그것이고, 국내에서는 LG CNS Smart Green Platform을 통해 ‘Smart ESB’가 제공되고 있습니다. 이러한 통합된 미들웨어는 최근 산업인터넷(Industrial Internet)하의 가상 자원들의 집합체가 될, 클라우드 웹서비스 플랫폼이나 공장 또는 조직의 물리적인 현장 IT 시스템 사이에서 중요한 인터페이스 작용을 할 것으로 생각됩니다.

<사물 인터넷에 적합한 네트워크 위상 구조 기술들(출처: http://radar.oreilly.com/)>

또한 개별적인 시스템의 확장 버전인 사물인터넷의 중추가 될 네트워크의 위상 구조는 그 규모에 따라 여러 가지로 나타날 것이라고 예상하고 있는데요. ‘1-1 버스 연결 구조(Bus Topology)’, ‘별형 구조(Star Topology, 나무형의 2계층 버전)’, ‘망형 구조’를 기조로, 변형과 조합을 통해 형성될 것으로 추측됩니다. 1-1 버스 연결 구조는 개별 개체나 조직의 현장에서 전용 클라우드로의 직접적인 통신 구조를 나타냅니다. 그리고 망형 구조는 보다 복잡한 개체나 조직들의 집합에 적합한데요. 가장 자연스러운 형태이며, 장거리를 커버하는 것으로 보여집니다.

그러나 노드 확장에 따른 복잡성이 지수적으로 증가할 수 있으므로, 군집화 또는 분류 등을 통해 라우팅 노드를 추가하여 버스 또는 트리 구조화하는 수정이 필요한 실정입니다. 또한 게이트웨이 노드에서는 하둡 분산 파일 시스템(Hadoop distributed File System) 혹은 클라우드 서버 루트 같은 것들이 저장과 통신 컴퓨팅을 지원할 것으로 보입니다.

2) 동적인 개체 상황 인식을 바탕으로 한 주변과의 관계 파악

과학 기술, 컴퓨터, IT의 발전으로 개별적인 많은 것들에 대한 도식화, 정형화가 이루어졌음에도 불구하고, 이질적인 개체들 사이의 연동과 관계 정립에 대한 연구는 아직도 한창 진행 중입니다. 고려할 것이 많고, 무척 복잡하고, 어려운 작업이기에 더욱 많은 발전이 필요한 분야이기 때문이죠. 그리고 여러 가지 물리적인 개체들 가운데 특히 위치, 상태 등이 자주 변화하는 독립적인 ‘동적인 개체’는, 시스템 안에서 다른 개체들과의 관계 규명에 있어서 가장 핵심이 되는 부분입니다. 제조 시스템의 경우 동적인 개체는 제품이나 로봇이고, 서비스 시스템의 경우는 사람이 될 텐데요. 그 중 가장 높은 수준의 복잡성과 다양성 때문에 일반적인 기계보다는 사람에 대한 추상화가 가장 어려운 작업이 될 것으로 예상하고 있습니다.

하지만, 축적된 노력들은 자연이나 생명체의 특성과 현상에서 발견한 논리 컴퓨팅, 인공 지능(오토마타, 특징 추출, 패턴 인식, 머신 러닝, 메타 휴리스틱 등), 통계적 기법 등을 적용해, 창조자와 환경의 특성을 닮은 대리자로서의 컴퓨터 또는 기계들의 인터페이스를 만들어 내고 있습니다. 대리자(Agent)는 개체군의 축적된 기본 정보를 바탕으로 현재 응대하고 있는 객체 인간의 특이적인 물리적, 정신적 상태를 읽습니다. 또한 시뮬레이션을 통해, 어떤 사건 발생 시의 적절한 반응, 심지어는 예측까지 가능하게 한다고 하는데요.

인지 과학계의 Arthur B. Markman 교수의 ‘인간은 어떤 사안에 대해 세 가지밖에 기억을 못하는 존재’라는 말처럼, 기억력에 한계가 있는 인간을 대신해 기억해 주고, 일 처리를 도와주는 대리자의 등장은 반갑기만 합니다. 그리고 여기에서 이야기하는 대리자는 결국 광의의 코디네이터, 인터페이스 등의 중간 매개자 혹은 미들웨어라고 볼 수 있습니다.

<예측 컴퓨팅(Anticipatory Computing) 엔진과 현재-미래 상태의 관계>

이러한 기술의 발전을 통해 어느 정도 의사 결정, 의사 교환이 가능해진 기기들을 기반으로 한 사물인터넷, 클라우딩 컴퓨터 등으로 대변되는 초연결 사회에 대한 미래는 밝습니다. 예를 들어 Keyless 자동차 출입 시스템, 에어컨 온도 자동 조절 시스템, 공항 자동 체크인 시스템 등도 사물인터넷 초기 단계의 좋은 예로써 한몫해주고 있는데요. 즉 ‘기계-환경-사람’이 있다고 했을 때, ‘기계-환경’ 혹은 ‘기계-기계’가 직접 연결되고, 통신하면서 사용자의 편의성을 도모하는 것입니다. 또한 인간의 개입이 없는 혹은 개입이 최소화된 자동화 및 얻어진 데이터를 바탕으로 한 분석과 예측 컴퓨팅, 그리고 인터페이스의 간결성으로 인해 사람들은 더 편리한 삶을 누릴 수 있게 되리라 생각합니다.

이것은 제조 산업에서 나온 개념인 린 경영(Lean Management), 생산 계획 수립 시 사용되었던 수요 예측 그리고 인간의 인지 과정 등을 IT에 확대 적용하는 것과 다름 없는데요. 즉 제품을 만드는데 있어서 소요되는 모든 불필요한 요소들은 제거해 나가고, 제품이 얼마나 필요한지를 미리 예측하여 현재의 생산량을 결정하는 것입니다. 다시 말해, ‘서비스’란 무형의 가치를 제공하기 위해 사물인터넷 하에서 불필요한 과정을 줄이는 것입니다. 그리고 사용자의 현태 상태를 바탕으로 미래의 사용자 행동을 예측하고, 현재의 행동을 대신 처리해 주어 사용자의 편의성을 도모하는 것이죠.

그렇다면, 공항 체크인의 경우를 예로 들어 볼까요?

1. 현재 프로세스

1) 공항에 들어간다 → 2) 항공사 체크인 부스를 찾아 두리번거린다 → 3) 부스 앞에서 줄을 선다 → 4) 초조해 하며 기다린다 → 5) 데스크에 도착해서 본인임을 확인하고 수속한다 → 5) 수화물을 맡긴다 → 6) 게이트로 뛴다

2. 추구하는 서비스

1) 공항에 들어간다 → 2) 스마트 기기가 주변 상황을 인지, 기계가 체크인을 대신하여 곧바로 스마트폰 등에 체크인되었다는 메시지 및 수화물, 게이트, 탑승 시간에 대한 친절한 설명을 보낸다 → 3) 설명에 따라 유유히 가서 수화물을 맡긴다 → 4) 여유 있게 게이트로 걸어간다

현재 공항 체크인 과정과 우리가 추구하는 서비스 과정은 위에 제시한 것과 같은데요. 그러나 사실은 뭉뚱그려 압축되어 있는 2-2) 과정 안에 IT의 모든 역량이 숨겨져 있습니다.

<인터페이스/대리자 안에서 절차화된 인간의 지각 과정들(출처: Perception and BDI reasoning-based Agent Model for Simulation of Human-Environment Complex System)>

위의 그림에서 보여지듯이 하나의 프로세스 안에는 인간의 뇌에서 일어나는 인지 과정을 그대로 답습한 인터페이스의 컴퓨팅이 거치는 과정이 있습니다. 바로 ‘지각 → 추론 (추론 과정 안에서 이루어지는 인지 → 확신 → 필터링을 통한 심의 → 의사 생성) → 의사 결정 → 계획 및 실행안 도출’의 단계인데요. 이를 통해, 체크인이라는 행동을 대신 수행하게 되고, 그 결과를 메시지나 알림 등의 유저 인터페이스를 통해 사람에게 전달하게 되는 것입니다. 그리고 위의 예처럼 실행을 대신해 버리는 정도는 아니지만, 흡사하게 현재 상황이나 개체의 특질, 속성 등을 바탕으로 콘텐츠를 추천해 주는 서비스들은 이미 상용화되어 있습니다. 예를 들어 위치 기반 맛집 추천, 사용자의 검색 취향에 따른 음악이나 영화 추천 서비스들이 바로 그것이죠.

즉, 초연결 사회를 지탱해 줄 다양한 응용 프로그램 모델링 및 개발이라는 관점에서의 IT의 역할은 결국 개체, 조직, 산업 등의 여러 다른 시스템 구성원들의 유사성에 초점을 맞추는 데 있습니다. 또한 시스템 혹은 개체 그리고 개체의 관계와 상호 작용 사이에서 빚어지는 자연적이고 우연적인 복합성에 질서를 부과해 주는 것인데요. 뿐만 아니라 차이점을 줄이고 분석하여 제한식 혹은 다른 변수를 가진 모듈로 두고, 표준화/단순화/모듈화 등을 거치는 것이죠. 결과적으로는 이를 프랙털 환경에서 여러 다른 개체들과의 관계 정립 모델의 일종의 ‘형판(Template)’처럼 재사용이 가능하게끔 하는데 있다고 보여집니다. 이 형판들은 다른 것들과 재결합 및 응용을 통해 또 다른 형판들을 생성해 낼 수 있으므로, 이제 다양한 도메인을 포괄할 IT 융합의 핵심 또한 그곳에 존재한다고 볼 수 있습니다.

지금까지 서로 다른 개체들을 분류, 인식하고 주변과의 관계를 파악하는 과정에서의 IT의 역할에 대해 함께 살펴보았습니다. 다음 시간에는 단순한 인터페이스 속에 숨겨진 복잡성, 그리고 최근 인터페이스의 모습과 역할 등에 대해 정리해 보도록 하겠습니다.

l 글 이승엽 연구원

현재 Pennsylvania State University 박사과정 후 연구원으로 활동하고 있다. 연세대학교 산업시스템공학과에서 학사를 마쳤으며, 미국 Pennsylvania State University에서 산업공학 석사/박사를 취득하였다. Manufacturing system control, supply chain system modeling, 등의 분야에서 다양한 프로젝트 경험을 가지고 있다. 주요 연구 관심 분야는 Formal model based hybrid SoS engineering, 다양한 Simulation based methodology (agent, discrete event, system dynamics), manufacturing and supply chain systems, IT-based industry convergence, 그리고 Cyber-Physical System 등이 있다.

챗봇과 대화를 할 수 있어요