본문 바로가기
黃家칼럼

옷장 정리와 컴퓨터 알고리즘(algorithm)

by 앵그리피그 2022. 1. 26.
반응형

옷장 정리를 어떻게 할까? 

- 버릴 옷과 보관할 옷을 고르는 고민해결- 

‘알고리즘’이라는 단어를 요즘 부쩍 듣는다.  유튜브 때문이다.
유튜브를 켜면 계정 주인의 여러 정보를 분석하여 시청자가 관심 있을 만한 콘텐츠를 추천하고 보여준다.

‘알고리즘’
알고리즘(영어: algorithm), 셈법은 수학과 컴퓨터과학, 언어학 또는 엮인 분야에서 어떠한 문제를 풀어내기 위해 정해진 일련의 절차나 방법을 공식화한 형태로 표현한 것, 계산을 실행하기 위한 단계적 절차를 의미한다. 즉, 문제풀이에 필요한 계산절차 또는 처리과정의 순서를 뜻한다. 프로그램명령어의 집합을 의미하기도 한다.
출처 : 위키리스크

 우리네 일반적인 PC 컴퓨터  탐색기를 살펴보면 ‘최근문서(파일)’을 보여준다. 그리고 화면에 여러 창을 띄워놓고 업무를 볼 경우 ALT + TAP 키를 누르면 여러 창들이 나열창들이 있다.  이 창들의 나열순서 역시 취근에 열어본 윈도우창을 기준으로 나열한다.  이런 기준과 처리방식을 알고리즘이라고 하고 특히 특정정보를 빨리 찾을 수 있도록 파일을 정리하거나 저장하는 알고리즘을 캐싱알고리즘 이라고 한다.

최근 tv프로 중에 집안정리 프로그램을 본적 있다.  정신없이 쌓여있는 집안에 수많은 물건을 정리전문가라는 사람은 단 몇시간 혹은 며칠만에 깔끔히 정리한다.   이 정리 전문가는 그럼 어떤 알고리즘(처리공식)을 사용하는 것일까?

 이와 관련된 다양한 책들이 나와 있다. 그중에 어떤 저자는 종류별로 어떤 저자는 색깔별로 또는 세트별로 이중에서 가장 추천되는 방식은 바로 컴퓨터 캐싱 알고리즘에서 애용되는 “LRU :최저사용빈도 (Least Recently Used) 이다.  즉 가장  최근 사용된 횟수나 시간을 기준으로 오래된 것을 정리하거나 다른 곳에 보관 하는것이다.

유사한 컴퓨터 알리리즘 중에는 FI-FO : 선입선출(First in First Out) 개념과 RANDOM (무작위) 개념이 있다고 한다.

그럼 LRU 기준으로 옷장에서 자신의 옷을 정리해보자. 아무리 최근에 구매한 옷이라도 최근에 자주 입지 않는 옷이 있다 그리고 오래전 구매한 옷이라도 자주 손이 가는 옷이 있다.  이 옷은 분명 앞으로도 다시 찾아 입을 확률이 높다. 때문에  자주 입지않는 옷을 정리대상 정리대상으로 삼으면 된다. (구매시기나 가격등은 사앞으로 사용할 확률과 연관성은 높지않다) 정리한 옷들의 보관장소는  그럼 어떤 기준으로 정할 것인가? 이것 역시 컴퓨터 시스템 설계에서 도움을 받을 수 있다.

우리가 보는 유튜브의 전세계 콘텐츠가 어떻게 끊김없이 원활히 시청할 수 있을까? 이것이 바로 CDN (content distribution network) ‘콘텐츠분배망’ 이다.  즉 콘텐츠를 원하는 사람과 콘텐츠 보관 장소를 물리적 지리적으로 가까우 두어 그 속도를 원활히 유지해 주는 것이다.   옷장정리를 마친 옷들에도 이런 기준을 적용해보자.  가장 자주 그리고 최근 입었던 옷들은 가장 빨리 그리고 쉽게 찾을 수 있는 옷장 중앙에 배치하고 그보다 찾는 횟수가 적은 옷들은 가장자리 옷장이나 혹은 다른 보관장소를 찾아 보관 하는 것이다. 

이제 자신의 옷장이 깔끔하게 전문가들 처럼 정리가 됐나요? 

종종 주변에서 어수선하게 정리안된 책상을 정리하지말라고 하는 사람이 있다.  가정에서도 그런 사람이 꼭 있다 (바로 이글을 쓰고 있는 저자가 그렇다)

   어지럽게 정리안된 책상위 서류뭉치 위로 다시새롭게 새로운 서류를 쌓았다고 치자.  이 서류들을 정리하지 않고 놔두는 것이 서류를 정리하는 것보다 효율적일 수 있다는 역설적인 사실을 우리는 위에서 확인했다.  왜냐면 방금 예로 들었던 LRU 알고리즘 때문이다.  방금 사용한 서류를 서류더미 위에 놓았다면 이 것은 이미 정리 알고리즘에 따라 정리가 이미 된 것으로 볼수도 있다.  그래서 어지러운 책상위에 물건 속에서 자신이 필요한 물건을 바로 바로 찾을수 있는 사람이 이런 원리를 이용하는 것은 아닐까 ?

 

반응형