반응형
블로그 이미지
개발자로서 현장에서 일하면서 새로 접하는 기술들이나 알게된 정보 등을 정리하기 위한 블로그입니다. 운 좋게 미국에서 큰 회사들의 프로젝트에서 컬설턴트로 일하고 있어서 새로운 기술들을 접할 기회가 많이 있습니다. 미국의 IT 프로젝트에서 사용되는 툴들에 대해 많은 분들과 정보를 공유하고 싶습니다.
솔웅

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함

카테고리

Elements of AI - Solving problems with AI

2018. 6. 7. 05:57 | Posted by 솔웅


반응형



Elements of AI

II.Solving problems with AI


Interlude on the history of AI: Starting from Search



AI is arguably as old as computer science. Long before we had computers, people thought of the possibility of automatic reasoning and intelligence. As we already mentioned in Chapter 1, one of the great thinkers who considered this question was Alan Turing. In addition to the Turing test, his contributions to AI, and more generally to computer science, include the insight that anything that can be computed (= calculated using either numbers or other symbols) can be automated.

인공 지능은 컴퓨터 과학만큼 오래되었다. 컴퓨터를 사용하기 훨씬 전에 사람들은 자동 추론 (automatic reasoning)과 자동 지능 (automatic intelligence)의 가능성을 생각했습니다. 1 장에서 이미 언급했듯이,이 질문을 고려한 위대한 사상가 중 한 사람은 Alan Turing입니다. 튜링 테스트 외에도 AI에 대한 그리고 컴퓨터 사이언스 전반에 대한 그의 기여도는 많이 있습니다. 모든 것은 계산 가능하다 (can be computed)는 인식이 그에게는 있었습니다. (여기서 계산은 숫자를 이용한 계산 이외에 다른 심볼들을 이용한 계산도 포함됩니다.)




Note


Helping win WWII


Turing designed a very simple device that can compute anything that is computable. His device is known as the Turing machine. While it is a theoretical model that isn’t practically useful, it lead Turing to the invention of programmable computers: computers that can be used to carry out different tasks depending on what they were programmed to do.


Turing은 계산이 가능한 그 어떤 것도 계산할 수있는 매우 간단한 장치를 설계했습니다. 그의 장치는 튜링 기계 (Turing machine) 로 알려져 있습니다. 실제적으로 유용하지 않은 이론적인 모델이지만 그것이 Turing이 프로그램 가능한 컴퓨터를 발명하도록 이끌었습니다. 컴퓨터는 어떻게 프로그래밍 되었느냐에 따라 여러 다른 작업들을 수행하는데 사용될 수 있는 장치 입니다.




So instead of having to build a different device for each task, we use the same computer for many tasks. This is the idea of programming. Today this invention sounds trivial but in Turing’s days it was far from it. Some of the early programmable computers were used during World War II to crack German secret codes, a project where Turing was also personally involved.


따라서 각 작업에 대해 다른 장치를 만드는 대신 하나의 컴퓨터로 여러 개의 작업을 할 수 있도록 만듭니다. 이것은 프로그래밍이라는 아이디어입니다. 지금에 와서는 이 발명품이 아주 당연한 사소한 것처럼 들릴지도 모르지만, 튜링의 시대에는 이런 발상이 나오기 힘들었던 시대 였습니다. 초기에 있었던 프로그래밍이 가능한 컴퓨터 중 일부는 제 2 차 세계 대전 중 Turing이 개인적으로 참여한 프로젝트에서 독일군 의 암호코드를 해독하는데 사용 됐었습니다.





The term Artificial Intelligence is often attributed to John McCarthy (1927-2011) – who is often also referred to as the Father of AI – but in fact he denies coming up with the term. He was nevertheless influential in its adoption as the name for the emerging field. The term became established when it was chosen as the topic of a summer seminar, known as the Dartmouth conference, which was organized by McCarthy and held in 1956 at Dartmouth College in New Hampshire. In the proposal to organize the seminar, McCarthy continued with Turing's argument about automated computation. The proposal contains the following crucial statement:



Artificial Intelligence라는 용어는 흔히 인공 지능의 아버지라고도 불리는 John McCarthy (1927-2011)에 의해 유래됐습니다. 그러나 사실 그는 이 용어를 사용하는 것을 거부했습니다. 그럼에도 불구하고 그는 이 새로운 분야에 대한 이름으로서 인공지능이라는 용어가 받아들여지는데 영향을 주었습니다. 이 용어는 Dartmouth conference라고 알려진 여름 세미나의 주제로서 선정되면서 알려지기 시작했습니다. 그 컴퍼런스는  McCarthy가 조직하고 (organized) 1956년에 뉴햄프셔의 다트머스 대학 (Dartmouth College)에서 개최 되었습니다. 세미나를 조직 하기 위한 제안서에서 McCarthy는 Turing의 자동화 된 계산 (automated computation) 에 대한 논쟁을 계속했습니다. 제안서에는 다음과 같은 중요한 진술이 포함되어 있습니다.






Note

John McCarthy’s key statement about AI

“The study is to proceed on the basis of the conjecture that every aspect of learning or any other feature of intelligence can in principle be so precisely described that a machine can be made to simulate it.”


"이 연구는 배움(학습)의 모든 측면이나 지능의 여러 다른 기능들에 대해 그 원리가 명확하므로 기계가 그것을 시뮬레이트 할 수 있다는 어림짐작 (추측)에 기반해서 진행되고 있습니다."




In other words, any element of intelligence can be broken down into small steps so that each of the steps is as such so simple and “mechanical” that it can be written down as a computer program. This statement was, and is still today, a conjecture, which means that we can’t really prove it to be true. Nevertheless, the idea is absolutely fundamental when it comes to the way we think about AI. We’ll return to this point of view in a little while when we talk about the philosophy of AI.



즉, 지능의 어떤 요소도 작은 단계로 나뉘어 질 수 있어서 컴퓨터 프로그램으로 작성될 수 있는 "기계적 mechanical"이라고 할 만큼 아주 간단한 작은 단계들로 나눌 수 있다는 겁니다. 이 논리는 오늘날에도 여전히 추측 (conjecture)일 뿐입니다. 다른 말로 이는 우리가 진실임을 실제로 증명할 수 없다는 것을 의미합니다. 그럼에도 불구하고 이 아이디어는 AI에 대해 생각하는 데 있어서 아주 기초가 되는 것입니다.  우리는 잠시 후 AI의 철학에 대해 이야기 할 때 이 관점을 가지고 살펴 볼 겁니다. 




Why search and games became central in AI research


As computers developed to the level where it was feasible to experiment with practical AI algorithms in the 1950s, the most distinctive AI problems (besides cracking Nazi codes) were games. Games provided a convenient restricted domain that could be formalized easily. Board games such as checkers, chess, and recently quite prominently Go (an extremely complex strategy board game originating from China at least 2500 years ago), have inspired countless researchers, and continue to do so.



1950 년대 실용적인 인공 지능 알고리즘을 실질적으로 실험해 볼 수있는 수준까지 컴퓨터가 개발되고 난 후 가장 두드러지게 부각된 AI 과제는  (나치 코드를 해독하는 것 이외에) 게임 입니다. 게임은 쉽게 공식화 될 수있는 편리하고 제한적인 도메인(영역)들을 제공했습니다. 체커, 체스와 같은 보드 게임, 그리고 최근에 상당히 눈에 띄게 바둑 분야 (적어도 2500 년 전에 중국에서 시작된 매우 복잡한 전략 보드 게임)는 수많은 연구자에게 영감을 불어 넣었으며 지금도 계속 그러고 있습니다.



Closely related to games, search and planning techniques were an area where AI lead to great advances in the 1960s: algorithms with names such as the Minimax algorithm or Alpha-Beta Pruning, which were developed then are still the basis for game playing AI, although of course more advanced variants have been proposed over the years. In this Chapter, we will study games and planning problems on a conceptual level.



게임과 밀접한 관련이있는 검색 및 계획 기술은 AI가 1960 년대에 큰 진보를 이룬 영역이었습니다. 이 때 개발 된 Minimax 알고리즘이나 Alpha-Beta Pruning과 같은 이름의 알고리즘은 여전히 AI 게임의 기본이 되고 있습니다. 물론 훨씬 더 진보된 여러 연구 결과들은 최근 몇년간 주목할 만한 성과를 보였습니다. 이 장에서는 개념적 차원에서 게임 및 계획 문제를 학습합니다.



반응형