슈퍼마켓이나 할인매장의 긴 줄에서 몇십 분을 소비해본 적이 있는 사람들은 이러한 의문을 한번쯤 가져보았을 것이다. ‘왜 이 가게는 종업원 수를 늘리지 않고 고객을 오랜 시간 기다리게 한담?’ ‘이렇게 줄이 긴데도 왜 계산대의 일부를 닫아놓았지?’
이와 비슷한 상황은 우리의 생활에서 매일매일 벌어지고 있다. 사실 매장측에서도 이 문제는 해결하기 쉽지 않은 일이다. 항상 모든 계산대를 열어두자니 인건비가 너무 많이 들고, 일부만 열어두면 어느새 늘어선 고객의 줄이 끝도 없다. 그렇다고 예상보다 고객이 많이 왔다고 불평할 수도 없고…. 아무튼 괜시리 바쁜 연말연시에 ‘줄 잘못 서서 생기는 시간낭비’는 상당히 짜증나는 일임에 틀림없다.
그런데 약간의 과학적인 접근을 통해서 이 문제를 상당 부분 해결할 수 있다면 어떨까. 과학을 실생활에 응용한다는 것은 생각보다 어렵지 않다. 알고리즘(algorithm)은 바로 이러한 기능을 수행할 수 있는 대표적인 분야다.
알고리즘이란 단어는 언뜻 고등학교 시절 배웠던 수학문제나 복잡한 컴퓨터 용어를 연상시킨다. 하지만 그렇게 어렵게만 생각할 필요는 없다. 쉽게 말해서 알고리즘은 주어진 문제를 풀기 위해 몇 단계를 거치는 과정을 의미한다.
여기에 응용할 수 있는 재미있는 비유가 있다. 코끼리 한 마리를 세 단계를 거쳐서 냉장고에 집어넣으려면? 이 유머의 답은 아마 모두들 알고 있을 것이다. 첫째, 냉장고 문을 연다. 둘째, 코끼리를 냉장고에 집어넣는다. 마지막 셋째, 문을 닫는다. 이 썰렁한 유머가 실은 간단한 알고리즘의 예가 될 수 있다. 흔히 1, 2, 3, 4… 의 식으로 번호가 붙어 설명되어 있는 요리책의 조리법 역시 알고리즘의 한 예다. 물론 좀더 복잡한 실제 상황에서는 컴퓨터 프로그램을 통해 각각의 스텝을 계산하게 된다.
주어진 문제를 몇 단계로 나누어 최소의 계산을 통해 최대의 효과를 얻고자 하는 알고리즘의 기본 정신은 최소 비용으로 최대 이익을 창출하고자 하는 비즈니스와 유사한 측면이 있다. 즉, 알고리즘을 통해 과학은 비즈니스와 결합한다. 미시간대학교의 쿠엔틴 스타우트 교수는 이렇게 말한다. “좀더 나은 알고리즘을 강구하면 우리는 지금처럼 많은 일을 하지 않고도 경쟁세계의 승리자가 될 수 있습니다.”
사실상 국경이 사라진 글로벌 시장에서 알고리즘은 비즈니스를 좀더 빠르고 저렴하고 효율적으로 운영하기 위한 결정적인 도구가 되고 있다. 알고리즘이 비즈니스에 적용된 예는 얼마든지 찾을 수 있다. ‘USA 투데이’가 보도한 몇 가지의 사례들은 알고리즘과 비즈니스 사이의 연관 관계를 잘 말해준다.
보통 구미에서 연중 가장 장사가 잘되는 기간은 추수감사절부터 크리스마스까지다. 때문에 이 기간 대부분의 백화점과 상점들은 몇 명의 종업원을 추가로 고용해야 하는지, 또 어떤 시간대에 가장 많은 종업원을 배치해야 하는지 등의 문제로 고심하게 마련이다. 지금까지는 노련한 관리자들의 직감과 경험이 이 문제를 해결해 왔다. 하지만 최근 들어서는 관리자 대신 수학적 알고리즘이 이 문제를 해결하고 있다. 알고리즘을 통해 모든 가능성을 컴퓨터로 계산한 뒤, 최적의 경우의 수를 산출하는 것이다.
텍사스의 한 레코드 상점은 알고리즘을 적용한 결과 인건비를 줄이고서도 고객이 계산대 앞에서 기다려야 하는 시간을 40% 이상 줄일 수 있었다. 실제로 외국의 많은 기업들이 종업원들을 효율적으로 관리하기 위해 알고리즘의 도움을 받고 있다.
또 다른 예로 이익의 극대화라는 측면에서 알고리즘을 적용한 경우를 살펴보자.
국내선 항공권의 가격이 고정되어 있는 우리나라와는 달리 미국의 항공사들은 국내선에서조차 아주 복잡한 요금 체제를 갖추고 있다. 보통 주말의 항공권이 주중보다 배 이상 비싸며 2주일 전에 예약한 표와 공항에서 산 표의 가격 차이는 서너 배 이상이다.
그렇다면 항공사들은 이렇게 차이나는 가격을 어떠한 기준에서 책정한 것일까. 그 답은 간단하다. 비용에 크게 구애되지 않는 비즈니스맨들에게는 최대한 표를 비싸게 팔면서 남는 좌석은 저렴한 표를 찾는 여행자들에게 최대한 싸게 팔아치우는 것이다. 정가는 어느 정도에서, 또 할인가격은 어느 선까지 할인해 주는 것이 이익의 극대화를 가져올 수 있는지 하는 복잡한 문제는 알고리즘의 계산에 맡겨 버리면 된다.
80년대에 아메리칸 에어라인사는 알고리즘을 적용한 ‘생산성 관리 컴퓨터 시스템’을 업계 최초로 도입했다. ‘수퍼 세이버 요금’이라는 이름이 붙은 이 혁신적인 요금 시스템은 그 후 항공업계의 판도를 완전히 바꾸어 버렸다. 현재는 모든 항공사들이 가격 책정을 위해 알고리즘 시스템을 사용하고 있다.
성수기에 비싸게 방을 빌려주고 비수기에는 할인된 가격에라도 방을 채워야하는 호텔, 황금 시간대에 비싼 단가로 광고를 팔고 나머지 시간대에는 싼 가격에 광고를 파는 텔레비전 방송국도 항공사와 비슷한 알고리즘 시스템을 사용할 수 있다. 마찬가지로 버스나 지하철의 운행 간격 조정, 전기나 전화국의 설치, 심지어 핸드폰 기지국의 배치 간격을 계산할 때도 알고리즘의 존재는 필수적이다.
알고리즘이 비즈니스에 적용된 예는 쉽게 발견할 수 있다. 최소한의 임상 테스트만으로 최대한의 효과를 얻고자 하는 의학실험에 적용한다든지 공장 컨베이어의 효율적인 설계 등은 물론이고 레스토랑의 운영 등에도 알고리즘은 커다란 도움이 된다. 최근 알고리즘은 2000년 과학계 최대의 수확이라고 일컬어지는 인간 게놈 프로젝트에까지 쓰이고 있다. 게놈 프로젝트에서 쏟아져 나온 엄청난 데이터들을 빠른 시간 내에 효과적으로 분석하는 데 패턴 인식이라는 알고리즘이 응용되고 있는 것이다.
이 밖에도 우리의 생활에 알고리즘이 응용되고 있는 부분은 무수히 많다. 영업시간, 요일, 교통량, 날씨, 근무시간과 초과근무수당, 세일의 여부, 상점의 영업 전략, 광고, 주차장 등등... 효율적인 알고리즘 없이 이런 모든 요인을 다 고려한다는 것은 엄청난 낭비이고 비현실적이다. 흔히들 ‘컴퓨터가 계산해 주면 될 것 아니냐’고 생각하지만 컴퓨터 하드웨어의 발전만으로 이 모든 문제를 해결할 수는 없다. 주어진 비즈니스 문제에 실제적인 도움을 얻기 위해서는 수학자들에 의해 설계된 좋은 알고리즘이 꼭 필요하다.
알고리즘을 구현한 비즈니스용 프로그램들은 매우 비싼 가격에 팔리고 있다. 유나이티드 에어라인은 좋은 알고리즘 프로그램을 구매하는 데에만 1000만달러(약 120억원) 이상의 예산을 썼다. 낭비라고? 그렇지 않다. 유나이티드 에어라인은 이 프로그램을 통해서 매년 5000만~6000만달러의 예산 절감 효과를 보고 있기 때문이다. 알고리즘에 기반한 항공사 경영 시스템을 판매하고 있는 DFI 에어로노믹스사의 로버트 크로스 회장은 ‘USA 투데이’와의 인터뷰에서 “알고리즘은 기초 정보를 취해서 그로부터 돈을 짜내는 일과도 같다”는 말로 알고리즘 산업의 의미를 함축적으로 설명했다.
가끔 “기초과학 연구에 큰 돈 들여서 무엇하나?” 하는 식의 질문을 받을 때가 있다. 순수수학에 속하는 알고리즘의 광범위한 응용이야말로 거기에 가장 적절한 답이 될 수 있을 것이다. 우리가 생각하지 못했던 구석구석에까지 알고리즘은 침투해 있으며 거기서 절약되는 비용은 도저히 계산할 수 없을 정도다. 우리의 미래는 사실상 알고리즘으로 가득 찬 세상이 될 것이다.
이와 비슷한 상황은 우리의 생활에서 매일매일 벌어지고 있다. 사실 매장측에서도 이 문제는 해결하기 쉽지 않은 일이다. 항상 모든 계산대를 열어두자니 인건비가 너무 많이 들고, 일부만 열어두면 어느새 늘어선 고객의 줄이 끝도 없다. 그렇다고 예상보다 고객이 많이 왔다고 불평할 수도 없고…. 아무튼 괜시리 바쁜 연말연시에 ‘줄 잘못 서서 생기는 시간낭비’는 상당히 짜증나는 일임에 틀림없다.
그런데 약간의 과학적인 접근을 통해서 이 문제를 상당 부분 해결할 수 있다면 어떨까. 과학을 실생활에 응용한다는 것은 생각보다 어렵지 않다. 알고리즘(algorithm)은 바로 이러한 기능을 수행할 수 있는 대표적인 분야다.
알고리즘이란 단어는 언뜻 고등학교 시절 배웠던 수학문제나 복잡한 컴퓨터 용어를 연상시킨다. 하지만 그렇게 어렵게만 생각할 필요는 없다. 쉽게 말해서 알고리즘은 주어진 문제를 풀기 위해 몇 단계를 거치는 과정을 의미한다.
여기에 응용할 수 있는 재미있는 비유가 있다. 코끼리 한 마리를 세 단계를 거쳐서 냉장고에 집어넣으려면? 이 유머의 답은 아마 모두들 알고 있을 것이다. 첫째, 냉장고 문을 연다. 둘째, 코끼리를 냉장고에 집어넣는다. 마지막 셋째, 문을 닫는다. 이 썰렁한 유머가 실은 간단한 알고리즘의 예가 될 수 있다. 흔히 1, 2, 3, 4… 의 식으로 번호가 붙어 설명되어 있는 요리책의 조리법 역시 알고리즘의 한 예다. 물론 좀더 복잡한 실제 상황에서는 컴퓨터 프로그램을 통해 각각의 스텝을 계산하게 된다.
주어진 문제를 몇 단계로 나누어 최소의 계산을 통해 최대의 효과를 얻고자 하는 알고리즘의 기본 정신은 최소 비용으로 최대 이익을 창출하고자 하는 비즈니스와 유사한 측면이 있다. 즉, 알고리즘을 통해 과학은 비즈니스와 결합한다. 미시간대학교의 쿠엔틴 스타우트 교수는 이렇게 말한다. “좀더 나은 알고리즘을 강구하면 우리는 지금처럼 많은 일을 하지 않고도 경쟁세계의 승리자가 될 수 있습니다.”
사실상 국경이 사라진 글로벌 시장에서 알고리즘은 비즈니스를 좀더 빠르고 저렴하고 효율적으로 운영하기 위한 결정적인 도구가 되고 있다. 알고리즘이 비즈니스에 적용된 예는 얼마든지 찾을 수 있다. ‘USA 투데이’가 보도한 몇 가지의 사례들은 알고리즘과 비즈니스 사이의 연관 관계를 잘 말해준다.
보통 구미에서 연중 가장 장사가 잘되는 기간은 추수감사절부터 크리스마스까지다. 때문에 이 기간 대부분의 백화점과 상점들은 몇 명의 종업원을 추가로 고용해야 하는지, 또 어떤 시간대에 가장 많은 종업원을 배치해야 하는지 등의 문제로 고심하게 마련이다. 지금까지는 노련한 관리자들의 직감과 경험이 이 문제를 해결해 왔다. 하지만 최근 들어서는 관리자 대신 수학적 알고리즘이 이 문제를 해결하고 있다. 알고리즘을 통해 모든 가능성을 컴퓨터로 계산한 뒤, 최적의 경우의 수를 산출하는 것이다.
텍사스의 한 레코드 상점은 알고리즘을 적용한 결과 인건비를 줄이고서도 고객이 계산대 앞에서 기다려야 하는 시간을 40% 이상 줄일 수 있었다. 실제로 외국의 많은 기업들이 종업원들을 효율적으로 관리하기 위해 알고리즘의 도움을 받고 있다.
또 다른 예로 이익의 극대화라는 측면에서 알고리즘을 적용한 경우를 살펴보자.
국내선 항공권의 가격이 고정되어 있는 우리나라와는 달리 미국의 항공사들은 국내선에서조차 아주 복잡한 요금 체제를 갖추고 있다. 보통 주말의 항공권이 주중보다 배 이상 비싸며 2주일 전에 예약한 표와 공항에서 산 표의 가격 차이는 서너 배 이상이다.
그렇다면 항공사들은 이렇게 차이나는 가격을 어떠한 기준에서 책정한 것일까. 그 답은 간단하다. 비용에 크게 구애되지 않는 비즈니스맨들에게는 최대한 표를 비싸게 팔면서 남는 좌석은 저렴한 표를 찾는 여행자들에게 최대한 싸게 팔아치우는 것이다. 정가는 어느 정도에서, 또 할인가격은 어느 선까지 할인해 주는 것이 이익의 극대화를 가져올 수 있는지 하는 복잡한 문제는 알고리즘의 계산에 맡겨 버리면 된다.
80년대에 아메리칸 에어라인사는 알고리즘을 적용한 ‘생산성 관리 컴퓨터 시스템’을 업계 최초로 도입했다. ‘수퍼 세이버 요금’이라는 이름이 붙은 이 혁신적인 요금 시스템은 그 후 항공업계의 판도를 완전히 바꾸어 버렸다. 현재는 모든 항공사들이 가격 책정을 위해 알고리즘 시스템을 사용하고 있다.
성수기에 비싸게 방을 빌려주고 비수기에는 할인된 가격에라도 방을 채워야하는 호텔, 황금 시간대에 비싼 단가로 광고를 팔고 나머지 시간대에는 싼 가격에 광고를 파는 텔레비전 방송국도 항공사와 비슷한 알고리즘 시스템을 사용할 수 있다. 마찬가지로 버스나 지하철의 운행 간격 조정, 전기나 전화국의 설치, 심지어 핸드폰 기지국의 배치 간격을 계산할 때도 알고리즘의 존재는 필수적이다.
알고리즘이 비즈니스에 적용된 예는 쉽게 발견할 수 있다. 최소한의 임상 테스트만으로 최대한의 효과를 얻고자 하는 의학실험에 적용한다든지 공장 컨베이어의 효율적인 설계 등은 물론이고 레스토랑의 운영 등에도 알고리즘은 커다란 도움이 된다. 최근 알고리즘은 2000년 과학계 최대의 수확이라고 일컬어지는 인간 게놈 프로젝트에까지 쓰이고 있다. 게놈 프로젝트에서 쏟아져 나온 엄청난 데이터들을 빠른 시간 내에 효과적으로 분석하는 데 패턴 인식이라는 알고리즘이 응용되고 있는 것이다.
이 밖에도 우리의 생활에 알고리즘이 응용되고 있는 부분은 무수히 많다. 영업시간, 요일, 교통량, 날씨, 근무시간과 초과근무수당, 세일의 여부, 상점의 영업 전략, 광고, 주차장 등등... 효율적인 알고리즘 없이 이런 모든 요인을 다 고려한다는 것은 엄청난 낭비이고 비현실적이다. 흔히들 ‘컴퓨터가 계산해 주면 될 것 아니냐’고 생각하지만 컴퓨터 하드웨어의 발전만으로 이 모든 문제를 해결할 수는 없다. 주어진 비즈니스 문제에 실제적인 도움을 얻기 위해서는 수학자들에 의해 설계된 좋은 알고리즘이 꼭 필요하다.
알고리즘을 구현한 비즈니스용 프로그램들은 매우 비싼 가격에 팔리고 있다. 유나이티드 에어라인은 좋은 알고리즘 프로그램을 구매하는 데에만 1000만달러(약 120억원) 이상의 예산을 썼다. 낭비라고? 그렇지 않다. 유나이티드 에어라인은 이 프로그램을 통해서 매년 5000만~6000만달러의 예산 절감 효과를 보고 있기 때문이다. 알고리즘에 기반한 항공사 경영 시스템을 판매하고 있는 DFI 에어로노믹스사의 로버트 크로스 회장은 ‘USA 투데이’와의 인터뷰에서 “알고리즘은 기초 정보를 취해서 그로부터 돈을 짜내는 일과도 같다”는 말로 알고리즘 산업의 의미를 함축적으로 설명했다.
가끔 “기초과학 연구에 큰 돈 들여서 무엇하나?” 하는 식의 질문을 받을 때가 있다. 순수수학에 속하는 알고리즘의 광범위한 응용이야말로 거기에 가장 적절한 답이 될 수 있을 것이다. 우리가 생각하지 못했던 구석구석에까지 알고리즘은 침투해 있으며 거기서 절약되는 비용은 도저히 계산할 수 없을 정도다. 우리의 미래는 사실상 알고리즘으로 가득 찬 세상이 될 것이다.