최근부터 넷플릭스에서 방영 중인 드라마 재벌집 막내아들을 재밌게 보고 있었다.

소재 자체는 특별한 건 없었지만 이야기의 흐름이나 배우들의 연기가 계속해서 다음 편을 보고 싶게 만들었다.

 

그리고 대망의 엔딩을 오늘 보게 되었다. 

내가 드라마를 늦게 보기 시작해서 이미 엔딩은 주변 사람들의 대화를 통해서 알고 있는 상태였는데 기대가 크지 않았던 터라 그런지 나름 괜찮게 마무리 지었다고 본다. 현실적인 배경에 허무맹랑한 요소를 섞었던 터라 엔딩을 어떻게 하던 모든 사람들을 만족시키기는 어려울 거라고 느끼고 있었기 때문에 나름 복선이라고 볼 수 있는 부분들은 다 정리했지 않았나 싶다.

 

보다가 조금씩 흥미가 떨어지던 부분은 가장 매력적이었던 등장인물이 더 이상 등장하지 않게 되면서 이전보다는 집중력이 떨어졌다. 그래도 그 후 어떻게 이야기가 마무리될지 궁금해서 끝을 보긴 했지만 엄청 특별한 반전은 없었고 그럼 그렇지라는 느낌과 저게 왜 저렇게 되지라는 의문도 남은 채로 드라마가 끝났다. 

 

그래도 오래간만에 몰입해서 봤던 드라마였고 소재가 흥미롭고 간접적으로 시대적인 공감을 느낄 수 있어서 만족스러운 드라마 시청이었다. 

 

728x90
반응형

'Life' 카테고리의 다른 글

베트남 콘삭 커피  (0) 2023.04.09
티스토리 단축키  (0) 2023.03.30
장 줄리앙 전시회 - 그리고 거기  (1) 2023.03.27
러버덕과 러버덕  (0) 2023.01.07
2023-01-07 시작  (0) 2023.01.07

튜링머신(Turing Machine)

앨런 튜링

튜링 머신은 앨런 튜링이 1936년에 제안한 이론적인 기계이다.

수학자 앨런 튜링은 힐버트 프로젝트의 목표에 도전하기 위해 튜링 머신 개념을 도입했다. 힐버트 프로젝트는 모든 수학적 명제를 증명해주는 만능 기계를 만들려는 시도였으나, 튜링은 이러한 프로젝트의 목표가 불가능하다는 것을 증명하기 위해 튜링 머신을 사용했다.

 

이러한 배경으로 제안된 튜링 머신은 컴퓨터 과학의 기초가 되는 개념이 되면서 컴퓨터가 수행할 수 있는 모든 계산 작업을 수행할 수 있으며, 이를 통해 컴퓨터 과학에서 다양한 계산 문제를 이해할 수 있게된다.

 

튜링 완전성(Turing Completeness)

컴퓨터 과학에서 중요한 개념으로, 계산 이론의 관점에서 특정 시스템이 모든 튜링 머신의 계산 수행 능력을 말하며 튜링 완전성은 컴퓨터 시스템의 계산 능력을 평가하는 기준이 된다.

 

튜링 완전한 시스템은 두 가지 기본 요소가 있다.

1. 기계의 상태를 나타낼 수 있는 유한한 수의 상태

2. 무한한 길이의 메모리를 사용

 

튜링 완전한 시스템은 모든 계산 문제를 해결할 수 있는 이론적인 기계로 볼 수 있으며 이를 통해 현대의 대부분의 프로그래밍 언어와 컴퓨터 아키텍처는 튜링 완전하다고 간주되고 이를 통해서 다양한 시스템 간의 계산 능력을 비교할 수 있다.

 

튜링 완전성을 갖춘 시스템은 어떤 알고리즘도 구현이 가능하며 이론적으로는 다른 튜링 완전한 시스템과 동일한 계산 능력을 가진다. 하지만 언제까지나 튜링 완전성은 이론적인 기준일 뿐 실제 성능을 반영하지 않기 때문에 실제로는 하드웨어 성능, 메모리 제한 등의 제약 때문에 모든 시스템이 동일한 성능을 내지는 않는다.

 

작동 방식

튜링머신은 무한히 긴 테이프가 있고 이 테이프는 일정한 크기로 나누어져 있으며 이를 셀이라고 부른다. 이 셀에는 기호가 기록되어있고 테이프를 따라 움직이는 헤더에 의해서 기록이 바뀔 수 있다. 튜링 머신의 상태는 상태 레지스터에 저장되고 이 상태에 대 따른 동작은 액션 테이블에 의해서 결정된다.

 

액션 테이블에 작성되는 동작은 테이프에 기호를 읽거나 새로 기록하고, 헤더를 왼쪽 또는 오른쪽으로 이동 그리고 정지의 기능을한다. 만약 액션 테이블에서 특정기호를 읽을 때 까지 헤더를 이동시키고 해당 기호를 읽었을 때 새로 기록을 하거나 또는 다른 동작을 수행시키는 등의 방식으로 모든 계산을 처리할 수 있는 기계로 동작하게 된다. 

Turing Machine

 

한계

튜링 머신에는 계산할 수 없는 문제들이 존재한다.

튜링 머신은 이론적인 개념이기 때문에 현실에 존재할 수 없는 무한한 길이의 테이프와 무한한 시간을 가정으로한다. 따라서 유한한 메모리와 제한된 시간을 가지는 실제 컴퓨터에서는 동일한 계산 능력을 가질 수 없다,

 

그리고 또 다른 한계의 대표적인 예로는 튜링의 정지 문제(Halting Problem)가 있다. 이 문제는 어떤 튜링 머신이 특정 입력에 대해 정지할지 즉, 계산이 완료되어 결과를 출력하고 종료할것인지 또는 무한 루프에 빠져 계속 실행할지를 결정하는 문제이다. 튜링은 이 문제에 대한 알고리즘이 존재하지 않음을 증명했는데 이는 어떤 일반적인 알고리즘이나 프로그램이 입력과 조합에 대해 항상 올바른 정지 여부를 결정할 수 없음을 의미한다. 튜링은 이러한 튜링 머신이 정지문제에 대해서 해결할 수 없다는 점을 통해서 힐버트의 프로젝트를 반증 했다.

 

정지 문제의 불가능성은 튜링 머신과 같은 계산 모델의 한계를 보여주며, 컴퓨터 과학의 여러 분야에서 중요한 영향을 미친다. 예를 들어 프로그램의 정확성, 최적화 또는 자동 버그 찾기 등의 분야에서 이론적한계를 인식하고 이에 대한 해결책을 찾는데 도움이 된다.

 

정지 문제의 증명은 컴퓨터 과학과 수학에서 근본적인 한계를 보여주며, 계산 가능성 이론의 발전에 큰 영향을 미쳤다. 또한, 이 결과는 계산의 본질과 한계에 대한 연구를 촉진시키며 컴퓨터 과학의 핵심 개념으로 자리잡게 되었다.

 

 

 

 

728x90
반응형

'Computer > Engineering' 카테고리의 다른 글

데이터 경로와 제어 유닛  (0) 2023.03.17
메모리  (0) 2023.03.17
명령 사이클과 명령어 집합 구조  (0) 2023.03.17
레지스터  (0) 2023.03.17
CPU  (0) 2023.03.17

Rubber-Duck

프로그래밍에서 사용하는 용어 중에 고무오리(Rubber Duck)라는 게 있다.

고무오리, 영어로 하면 러버덕

러버덕은 문제를 해결하기 위한 방법 중 하나이다. 가상의 대상을 두고 문제에 대해서 설명을 하는 과정 중에 해결책을 찾게 되는 방법으로 이러한 것을 러버덕 디버깅이라고도 한다. 실제로 나도 프로그래밍을 하다가 문제가 생겼을 때 은연중에 설명하듯이 혼자 중얼거리면서 해결방벙을 떠올리곤 했다.

 

이 단어의 유래에 대해서 생각해 봤다.

서구권을 기준으로 물이 받아진 욕조를 떠올렸을 때 물 위에 떠있는 인형 하면 가장 먼저 고무오리가 연상된다.

욕조에 앉아 있으면 심리적으로 안정이 되면서 복잡하던 머릿속도 정리가 되는데 이때 일상생활에서나 현재 겪고 있는 문제에 대해서 상태로 앞에 떠있는 고무오리와 대화를 하면서 현재 겪고 있는 문제의 답을 떠올리거나 스트레스를 해소하는 경험이 일반적으로 나타난 게 아닐까 생각한다.

 

실제로 심리학적으로 목욕을 하면서 대화나 노래 등 소리를 내는 행위는 스트레스를 줄이고 감정을 조절하는데 도움을 준다고 하는데 그렇기 때문에 이러한 일반적인 경험이 바탕이 되어서 '문제가 생겼을 때 찾는 대화의 대상'이라는 대명사가 고무오리가 된 게 아닌가 생각한다.  왜 하필 고무오리일까라는 부분에서 시작해서 생각해 본 나만의 의견이다.

 

Lover-Duck

러버덕은 내가 블로그를 시작하는 취지와 가장 부합한다.

어떻게 보면 블로그 자체가 나에게 러버덕과 같은 의미를 가진다. 혼잣말을 하듯이 머릿속에 생각들을 일단 써 내려간다. 그렇게 지우고 쓰고를 반복하면서 글을 작성하다 보면 정리가 덜됐던 부분도 다시 한번 정리하고 이해가 안 가던 부분도 어느샌가 자연스럽게 이해하게 된다. 

 

그래서 블로그 이름도 러버덕으로 했는데 rubber를 lover로 바꾼 건 특별한 이유는 없이 그냥 발음이 똑같아서인 이유도 있고 더 귀여운 느낌이 들기도 해서이다. 하지만 별로 마음에 들지 않아서 조만간 바꾸지 않을까 싶다.

728x90
반응형

'Life' 카테고리의 다른 글

베트남 콘삭 커피  (0) 2023.04.09
티스토리 단축키  (0) 2023.03.30
장 줄리앙 전시회 - 그리고 거기  (1) 2023.03.27
재벌집 막내아들  (0) 2023.01.08
2023-01-07 시작  (0) 2023.01.07

+ Recent posts