블랙박스

컴퓨팅, 과학 및 엔지니어링 분야에서 **블랙박스**(black box)는 내부 작동 방식에 대한 지식 없이 입력 및 출력(또는 전달 특성)으로 볼 수 있는 시스템이다. 구현은 "불투명"(검은색)하다. 이 용어는 트랜지스터, 엔진, 알고리즘, 인간의 뇌, 기관 또는 정부와 같은 여러 내부 작동 방식을 지칭하는 데 사용할 수 있다.

일반적인 "블랙박스 접근 방식"으로 열린 시스템을 분석하려면 (알 수 없는) 박스를 추론하기 위해 자극/반응의 동작만 고려된다. 이 "블랙박스 시스템"의 일반적인 표현은 박스에 중심을 둔 데이터 흐름도이다.

블랙박스의 반대는 내부 구성 요소 또는 논리를 검사할 수 있는 시스템으로, 가장 일반적으로 화이트박스("클리어박스" 또는 "글래스박스"라고도 함)라고 한다.

## 역사
섬네일|오른쪽|500px|블랙박스 모델은 시스템의 출력을 설명하는 데 사용할 수 있다.
"블랙박스"라는 용어의 현대적 의미는 1945년경 영어에 들어온 것으로 보인다. 전자 회로 이론에서 전달 함수로부터 회로 합성 과정은 전자 회로가 포트에 가해지는 신호에 대한 응답으로 특징지어지는 "블랙박스"로 간주되게 되었는데, 이는 1941년에 가장 발전된 형태로 자신의 아이디어를 발표한 빌헬름 카우어에게 거슬러 올라갈 수 있다. 카우어 자신은 이 용어를 사용하지 않았지만, 그를 따른 다른 사람들은 확실히 이 방법을 블랙박스 분석이라고 설명했다. 비톨드 벨레비치는 블랙박스 개념을 더 일찍 제시하며, 1921년에 프란츠 브라이지히가 사단자 회로망을 블랙박스로 명시적으로 사용한 것을 언급하고 그 이전에 2단자 구성 요소가 암묵적으로 블랙박스로 취급되었다고 주장한다.

사이버네틱스에서는 1956년 로스 애시비가 완전한 설명를 제공했다. 블랙박스는 1961년 노버트 위너에 의해 시스템 식별 기술을 사용하여 식별해야 할 알려지지 않은 시스템으로 설명되었다. 그는 자기 조직화의 첫 번째 단계는 블랙박스의 출력 동작을 복사할 수 있는 것이라고 보았다. 마리오 분게와 같은 다른 많은 엔지니어, 과학자 및 인식론자들은 1960년대에 블랙박스 이론을 사용하고 완성했다.

## 체계 이론
[섬네일|252px|[열린 시스템 (시스템 이론)|열린 시스템 이론은 블랙박스 이론의 기초이다. 둘 다 입력 및 출력 흐름, 즉 주변과의 교환을 나타내는 데 초점을 맞춘다.]]
체계 이론에서 블랙박스는 자극 입력과 출력 반응의 관점에서만 볼 수 있는 구체적인 열린 시스템 클래스를 나타내는 추상화이다.
개발된 블랙박스 모델은 블랙박스 검사 방법이 관측 가능한 요소에만 기반하여 유효함을 보장할 때 유효성 검사된 모델이다.

백 테스팅을 통해 블랙박스 모델을 테스트할 때 항상 시간 외 데이터가 사용된다. 데이터는 블랙박스 입력에 사용되기 전에 기록되어야 한다.

## 다른 이론
[섬네일|위|1.2|관측된 [수문곡선은 유역 (블랙박스)의 지표면 유출 (빨간색)이 강우 (파란색) 입력에 대한 반응을 나타내는 그래프이다.]]
블랙박스 이론은 기능만으로 정의되는 이론이다. 이 용어는 시스템의 외관(블랙박스의 외부)의 측면들 사이의 관계에 대해 탐구하지만, 이러한 관계가 왜 존재해야 하는지(블랙박스의 내부)를 설명하려는 시도는 하지 않는 모든 분야에 적용될 수 있다. 이러한 맥락에서 뉴턴의 중력 이론은 블랙박스 이론으로 설명될 수 있다.

구체적으로, 탐구는 즉각적으로 명백한 특징이 없는 시스템에 초점을 맞추고 있으므로, 즉각적인 관측에서 숨겨진 자체 내부에 고려할 요소만 포함하고 있다. 관찰자는 대부분의 사용 가능한 자료가 풀기 쉬운 조사를 벗어난 내부 상황에 있기 때문에 처음에는 무지하다고 가정한다. 정의의 블랙박스 요소는 관측 가능한 요소가 다른 관측 가능한 출력 세트가 나오는 아마도 상상적인 박스에 들어가는 시스템으로 특징지어진다고 나타나 있다.

### 인문학에서의 채택
인문학 분야, 예를 들어 심리철학과 행동주의에서는 블랙박스 이론을 소비자 행동 분석에 적용할 때 마케팅과 같은 분야의 심리적 요인을 설명하고 이해하는 데 사용하는 방법 중 하나이다. 블랙박스 이론은 전문 연구보다 훨씬 더 광범위하게 적용된다.

## 응용
[섬네일|252px|관찰자 ([다중 에이전트 시스템|에이전트)가 일부 자극(입력)도 할 수 있을 때, 블랙박스와의 관계는 단순한 관측이 아니라 실험이다.]]

### 컴퓨팅 및 수학

* 컴퓨터 프로그래밍 및 소프트웨어 공학에서 블랙박스 검사는 특정 입력이 주어졌을 때 프로그램의 출력이 예상대로인지 확인하는 데 사용된다. 실행 중인 실제 프로그램은 검사되지 않기 때문에 "블랙박스"라는 용어가 사용된다.
*일반적인 컴퓨팅에서 블랙박스 프로그램은 사용자가 내부 작동 방식을 볼 수 없거나(아마도 클로즈드 소스 프로그램이기 때문에) 부작용이 없고 기능이 검사될 필요가 없는 재사용에 적합한 루틴이다.
*또한 컴퓨팅에서 블랙박스는 해당 공급업체의 제품을 사용하기 위해 공급업체에서 제공하는 장비를 의미한다. 공급업체가 이 장비를 유지 보수하고 지원하는 경우가 많으며, 블랙박스를 받는 회사는 일반적으로 손을 대지 않는다.
* 수학적 모델링에서 극한의 경우.

### 과학 및 기술

* 신경망 또는 휴리스틱 알고리즘(일반적으로 "학습" 컴퓨터 또는 "AI 시뮬레이션"을 설명하는 컴퓨터 용어)에서 블랙박스는 프로그래머가 쉽게 테스트할 수 없는 프로그램 환경의 끊임없이 변화하는 섹션을 설명하는 데 사용된다. 이는 프로그램 코드를 볼 수 있지만 코드가 너무 복잡하여 기능적으로 블랙박스와 동일하다는 맥락에서 화이트박스라고도 한다.
* 물리학에서 블랙박스는 내부 구조가 알려지지 않았거나 특정 목적을 위해 고려할 필요가 없는 시스템이다.
* 암호학에서 영지식 증명 프로토콜과 같은 암호 프로토콜의 실행을 통해 알고리즘이 얻은 지식의 개념을 포착하기 위해 사용된다. 프로토콜과 상호 작용할 때 알고리즘의 출력이 일부 입력이 주어진 시뮬레이터와 일치하면 입력만 알면 된다.

### 기타 응용

* 철학 및 심리학에서 행동주의 학파는 인간의 마음을 블랙박스로 본다.

## 같이 보기

* 블랙박스 그룹
* 블랙박싱
* 중국어 방
* 블랙박스 (항공기)
* 그레이박스 모델
* 이력 현상
* 열린 시스템:
** (일반적인) 체계 이론에서
* 다중 에이전트 시스템
* 예측/후지
* 관련 이론
** 신탁 기계
** 패턴 인식
** 체계 이론
** 신호 처리
* 시스템 식별
* 자극-반응 모델

## 각주

분류:체계 이론
분류:소프트웨어 디자인 패턴
분류:사이버네틱스
분류:프로그래밍 원칙
분류:과학의 초이론