지적 알고리즘과 인공 지능. 컴퓨터 게임의 인공 지능 (AI)의 방법

  • 12.12.2019
  • 인공 지능을 적용하는 기본 원칙을 마스터하십시오 컴퓨터 게임.
  • 게임에 적용 가능한 인공 지능 알고리즘을 고려하십시오
  • 인공 지능 원칙을 사용하여 컴퓨터 게임을 만듭니다

AI 시스템의 개발에 대한 접근법 개요

인공 지능의 주제 (인공 지능, 인공 지능, 인공 지능, 인공 지능)는 많은 초보자 프로그래머, 개발자 및 컴퓨터 게임 아마추어의 마음입니다. AI는 많은 놀라 울 정도로 복잡하고 흥미롭고 신비한 것처럼 보입니다. 실제로 II 기술은 게임의 성격을 합리적으로 작성하기 때문입니다. 그러나 AI에서는 신비가 없습니다. 이 지식 분야의 개발이 수십 년 동안 다양한 활동 분야에 적용된 엄청난 수의 알고리즘이 개발되었습니다. 컴퓨터 게임은 인공 지능 기술을위한 상대적으로 작은 필드입니다.

AI가없는 비용이없는 컴퓨터 게임을 찾는 것은 매우 어렵습니다. "Smart"게임의 고전적인 예는 체커, 체스 및 기타 재생을위한 프로그램입니다. 보드 게임...에 컴퓨터가 사용자에 대해 재생되는 각 게임에는 AI가 장착되어 있습니다.

게임 AI는 첫 번째 근사에서 두 가지 유형으로 나눌 수 있습니다. 첫 번째는 가장 확실합니다 - 이것은 개인의 지능입니다. 게임 캐릭터...에 예를 들어, 한 번 복종하는 인기있는 각 탱크 게임 전투. 도시는 플레이어의 기지에 가서 탱크를 파괴하려고합니다. 게임 행위의 탱크는 특별한 마음 속에서 다르지는 않지만, 놀기는 것은 흥미 롭습니다.이 게임은이 게임의 종류의 AI가 매우 적합합니다. 그는 게임을 지루하게하지 않습니다.

AI의 두 번째 수준은 그룹 정보입니다. 예를 들어, 스타 크래프트를 기억하십시오. 플레이어는 컴퓨터에 의해 통제 된 군대와 싸워야합니다. 컴퓨터가 관리한다는 것을 꺼냅니다 많은 분량 단위 (영어로부터). 단위는 하나입니다). 그러나 AI 그룹이 스타 크래프트에서 마무리하는 모든 생물이 자신의 "마음"을 가지고 있음을 쉽게 볼 수 있습니다. 예를 들어, AI 그룹은 지형을 순찰 할 수있는 단위 그룹을 지시 할 수 있지만 적의 방식을 충족시키는 경우 자신의 AI는 자신의 행동에 대해 책임을집니다.

스타 크래프트의 군대의 행동이 어떤 식 으로든 통제되지 않고 II는 별도의 단위의 수준에서만 참석했는데 게임은 지루한 검색과 적의 파괴로 변합니다. 심각한 나이 (약 10 년)에도 불구하고 스타 크래프트 매혹적인 게임...에 Single-user 캠페인에서도 스타 크래프트는 네트워크 전투를 언급하지 않고 플레이어를 대단히 "조이십시오"할 수 있습니다.

그건 그렇고, 동일한 스타 크래프트에서 사용자가 관리하는 단위가있는 것으로 알려줍니다. 예를 들어, 사용자가 주어진 "순찰"과 동일한 명령은 스타 크래프트 순종이 지정된 경로를 따라 걷는 것을 강요 할 것입니다. 그러나 장애물이 방식에 나타나면 (예를 들어, 플레이어가 건물을 빌드하는 블로킹 경로) - 단위가 그가 할 것임을 결정할 것입니다. 마찬가지로, 그는 적이 가시성 분야에 나타나면 공격을 독립적으로 결정할 것입니다.

컴퓨터 게임에서 사용되는 AI 시스템은 두 가지 주요 유형으로 나눌 수 있습니다. 첫째, 이들은 소위 결정 론적 시스템입니다. 그들은 캐릭터 조치의 예측 가능성으로 구별됩니다. 둘째, 이들은 비 결정적 시스템이며, 그러한 AI가 관리하는 문자는 예기치 않은 결정을 내리기 위해 예기치 않게 행동 할 수 있습니다.

우리가 이미 말했듯이, 개별 AI 단위는 그룹 AI와 비교하여 종속적 인 역할을합니다. 아니면 AI 개별 단위가 게임 전체에 영향을 미칠 수 있습니까? 어쩌면 별도의 단위의 성공의 전파가 모든 유사한 것에 제공되는 경우에도 있습니다. 예를 들어, 일부 유닛은 강한 상대와 기적적으로 싸움에서 우승자에게 나왔습니다. 이 유닛은 AI 그룹 덕분에 다른 단위로 배포 될 수있는 경험을 얻었습니다. 그. 한 단위가 AI 그룹 덕분에 다른 단위가 뭔가를 배웠다면 새로운 기술로 그를 채택 할 수 있습니다. 따라서 개인 및 그룹 AI는 상호 연결되어 있으며 어떤 경우에는 상호 의존적입니다.

비 결정적 인 AI가 장착 된 캐릭터는 행동의 예측 불가능 성이 더 큰 "활력"으로 구별됩니다. 이러한 캐릭터에 대한 플레이는 대개 엄격한 결정론보다 훨씬 흥미 롭습니다. 인기있는 B. 최근 비 결정적 인 AI를 구현하는 방법은 기술입니다. 신경망...에 매우 복잡한 동작으로 문자를 만들 수 있습니다. 또한 신경 네트워크에는 트랩 속성이 있습니다. 즉, 게임의 캐릭터는 현명하게 행동 할뿐만 아니라 실수 로부터도 배웁니다.

실제로, 결정 론적 론적 론적 및 비 결정적 유형의 AI를 모두 사용하는 것이 사용됩니다. 보통 그들은 함께 행동합니다. 예를 들어, 단순한 모호하지 않은 동작을 수행하려면 (벽에 접근 할 때) 간단하고 신속한 결정 론적 알고리즘을 적용 할 수 있습니다. 보다 복잡한 경우 (예 : 회사 X의 공유가 거대한 매개 변수를 고려할 지, 적의 능력, 강화 기능, 보강재의 존재), 결정 론적 알고리즘이 적용됩니다. 부분적으로 결정 론적 (예를 들어, 벽에 접근 할 때, 50 %의 확률이 좌회전하면, 오른쪽으로 30 %의 확률이 있고, 20 % 확률이 펼쳐지고 돌아올 것입니다) 게임에서 사용됩니다.

검찰 알고리즘의 구현

박해 알고리즘을 사용하여 게임을 구현합니다. 이 알고리즘의 본질은 다음과 같습니다. 객체는 좌표를 비교하고 있습니다 게임 세계 피해자 객체의 좌표와 함께 희생자에게 접근하는 방식으로 좌표를 수정합니다. 가장 간단한 경우에는 박해가 열린 공간에서 수행됩니다.

프로젝트 P5_1을 기반으로 새 게임 프로젝트 P8_1을 만듭니다. 우리는 추적과 희생 인 두 가지 물체를 사용할 것입니다. 추구가 속도로 희생자를 향해 움직일 것입니다. 피해자의 속도보다 1 이하입니다. 오브젝트가 발생하면 피해자가 파괴됩니다.

도 1의 12.1. 창이 표시됩니다 솔루션 탐색기. 게임 프로젝트 P8_1.


무화과. 12.1.

우리는 GBaseClass 기본 클래스, 박해자 개체 (적), 객체 - 희생 클래스 (Me) 및 객체 벽의 클래스를위한 클래스를 사용합니다. 객체 벽의 클래스는 희생자에게 보증 가능한 장애물과의 충돌이있을 때 박해 알고리즘을 구현하는 객체의 행동을 연구하는 데 필요합니다. 우리는 소스 프로젝트 P5_1과 비교하여 클래스 코드를 크게 수정 했으므로 아래에서 찾을 수 있습니다. 전체 코드 게임 클래스. Listing 12.1. 클래스 GAME1의 코드를 찾을 수 있습니다.

시스템 사용; system.Collections.Genic; microsoft.xna.framework를 사용하여; Microsoft.XNA.Framework.Audio; Microsoft.XNA.Framework.Content를 사용합니다. microsoft.xna.framework.gamerservices를 사용하여; Microsoft.XNA.Framework.Graphics를 사용하여; microsoft.xna.framework.input; microsoft.xna.framework.net을 사용하여; Microsoft.XNA.Framework.Storage를 사용하여; 네임 스페이스 P8_1 (///

/// 이것은 당신의 게임 ///에 대한 주요 유형입니다. Public Class Game1 : Microsoft.XNA.Framework.Game (GraphicsDeviceManager 그래픽, SpriteBatch SpriteBatch, Textaby2D TxTenemground, Textaby2D TxTME, Textaby2D TxTME; // 레벨 Public int [,] 레이어를 구성하기위한 배열) , 0, 640, 512); Rectangle Recsprite \u003d New Rectangle (0, 0, 64, 64); Public Game1 () (그래픽 \u003d 새로운 GraphicsDeviceManager (이); Content.RootDirectory \u003d "Content";) 보호 대체 보인다 () (// TODO : 초기화 논리를 추가하십시오. 여기 Layer \u003d New int ((0, 0, 0, 0, 0, 0, 0, 0, 0), (0, 0, 0, 0, 1, 0 0, 0) , 0, 0), (0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 6, 0, 0, 0 0), ( 0, 0, 0, 0, 0), (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5) , 0), (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]\u003e 그래프 ics.ApplyChanges (); base.initialize (); ) 보호 대체 무효로드 untent ( ("배경"); txtenemy \u003d content.load. ("적"); txtme \u003d content.load. ("나를"); txtwall \u003d content.load. ("벽"); // addsprites () 게임 창에서 객체를 정렬하는 절차를 호출합니다. // TODO :이를 사용하십시오. 여기에 게임 콘텐츠를로드하십시오. // 게임 창에서 객체 정렬을위한 절차 void addsprites (// 임시 저장소 주소 // 플레이어 object int a \u003d 0, b \u003d 0의 변수) / / 레이어의 배열을 (int i \u003d 0; i< 8; i++) { for (int j = 0; j < 10; j++) { //Если элемент с индексом (i,j) равен 1 - //устанавливаем в соответствующую позицию элемент с //номером 1, то есть - стену if (Layer == 1) Components.Add(new GameObj.Wall(this, ref txtWall, new Vector2(j, i), recSprite)); if (Layer == 5) Components.Add(new GameObj.Enemy(this, ref txtEnemy, new Vector2(j, i), new Rectangle(0, 0, 32, 32))); //Если обнаружен объект игрока - запишем его координаты if (Layer == 6) { a = i; b = j; } } } //Последним установим объект игрока - так он гарантированно //расположен поверх всех остальных объектов Components.Add(new GameObj.Me(this, ref txtMe, new Vector2(b, a), new Rectangle(0, 0, 32, 32))); } protected override void UnloadContent() { } protected override void Update(GameTime gameTime) { base.Update(gameTime); } protected override void Draw(GameTime gameTime) { spriteBatch.Begin(); //выведем фоновое изображение spriteBatch.Draw(txtBackground, recBackround, Color.White); //Выведем игровые объекты base.Draw(gameTime); spriteBatch.End(); } } } Listing 12.1. GAME1 클래스 코드

인공 지능은 우리가 미래에 당신과 정확하게 가질 것인 기술입니다.

우리는 그것이 어떻게 작동하는지와 멋진 응용 프로그램을 찾습니다.

😎 Rubric "Technology"는 Re : Store의 지원으로 매주마다 나옵니다.

인공 지능은 무엇입니까?

인공 지능 (AI)은 해결할 수있는 스마트 프로그램 및 기계를 만드는 기술입니다. 창조적 인 작업 사용 가능한 새로운 정보를 생성합니다. 사실, 인공 지능은 지적으로 간주되는 인간 활동을 시뮬레이트하도록 설계되었습니다.

전통적으로 창의력은 사람들에게만 본질적이라고 믿었습니다. 그러나 인공 지능의 창조는 사물의 일반적인 질서를 바 꾸었습니다.

장작을 기계적으로 구르는 로봇은 AI와 함께 부여되지 않습니다. 그 자신은 사람의 예 또는 바닥과 그 부분의 예에 따라 그 자신이 장작을 찌르는 것을 배웠던 로봇, 그리고 그것이 더 나은 때마다 AI를 보유하고 있습니다.

프로그램이 특정 규칙에서 데이터베이스에서 값을 간단히 사용하면 AI와 함께 부여되지 않습니다. 훈련 후 시스템이 프로그램, 방법 및 문서를 생성하여 특정 작업을 해결하면 AI가 있습니다.

인공 지능 시스템을 만드는 방법

세계적인 감각은 인간 사고의 모델을 시뮬레이션해야합니다. 그러나 실제로 검은 색 상자를 만들어야합니다. 입력 값 세트에 대한 응답으로 사람의 결과와 유사한 이러한 출력 값을 발행하는 시스템입니다. 그리고 우리는, 그리고 크고, 무관심, 무관심한, 그녀는 "머리 속에"(입구와 출구 사이에) 일어나는 일입니다.

인조 인텔리전스 시스템은 특정 작업 클래스를 해결하기 위해 만들어집니다.

인공 지능의 기초 - 훈련, 상상력, 인식 및 기억

인공 지능을 창출하기 위해 최초로 수행 할 일은 데이터가 시스템을 "공급"할 수 있도록 정보에 대한 인식을 구현하는 기능을 개발하는 것입니다. 그런 다음 - 배울 수있는 기능을 구현하는 기능. 그리고 시스템이 학습 프로세스에서받을 수있는 정보의 어딘가에 갈 수 있도록 데이터웨어 하우스.

그 후, 상상력의 기능이 생성됩니다. 이들은 사용 가능한 데이터를 사용하여 상황을 시뮬레이션하고 새로운 정보 (데이터 및 규칙)를 메모리에 추가 할 수 있습니다.

훈련은 유도적이고 연역적입니다. 유도 형 버전에서는 시스템이 입력 및 출력, 질문 및 답변 쌍을 제공합니다. 시스템은 데이터 간의 링크를 찾아야하고 앞으로이 패턴을 사용하여 입력의 출력을 찾아야합니다.

연역적 접근 방식 (Hello, Sherlock Holmes!) 전문가 경험이 사용됩니다. 그것은 지식 기반으로 시스템으로 옮겨집니다. 데이터 세트뿐만 아니라 조건에 의한 결정을 찾는 데 도움이되는 기성품 규칙도 있습니다.

현대 시스템에서는 인공 지능이 두 가지 접근법을 사용합니다. 또한 일반적으로 시스템은 이미 훈련되지만 작업 중에 계속 배워야합니다. 이것은 시작시 프로그램이 가치있는 능력 수준을 보여 주지만 미래에는 더 나아졌습니다. 예를 들어, 소원과 선호도, 상황의 변화 등을 고려했습니다.

인공 지능의 시스템에서 예측 불가능의 가능성을 설정하는 것이 가능합니다. 이것은 그것을 더 많이 만들 것입니다.

인공 지능이 왜 인공 지능이이기는 이유입니다

우선, 오류의 가능성 이하이기 때문입니다.

  • 인공 지능은 잊을 수 없습니다 - 그는 절대적인 기억을 가지고 있습니다.
  • 그것은 실수로 요소와 종속성을 무시할 수 없습니다. 각 액션은 명확한 정당화가 있습니다.
  • AI는 변동하지 않지만 가능성을 평가하고 더 큰 것으로 기울어 져 있습니다. 따라서 각 단계를 정당화 할 수 있습니다.
  • 또한 감정이 없습니다. 그래서 그들은 의사 결정에 영향을 미치지 않습니다.
  • 인공 지능은 현재 단계의 결과에 대한 평가를 멈추지 않으며 몇 가지 단계를 앞으로 생각합니다.
  • 그리고 그는 이벤트를 개발하기위한 모든 가능한 옵션을 고려할 수있는 충분한 자원이 있습니다.

인공 지능을 적용하기위한 멋진 옵션

일반적으로 인공 지능은 모두 할 수 있습니다. 주요한 것은 작업을 정확하게 공식화하고 초기 데이터로 제공하는 것입니다. 또한 AI는 예상치 못한 결론을 내릴 수 있으며 규칙 성을 찾을 수 있습니다.

어떤 질문에 대한 답변

David Feruchchi의 지도력하에있는 연구원 그룹은 질문 - 응답 시스템으로 왓슨 슈퍼 컴퓨터를 개발했습니다. IBM Tomas Watson의 첫 번째 대통령을 기념하는 데 호출 된 시스템은 자연 언어의 질문을 이해하고 데이터베이스에 대한 답변을 찾을 수 있습니다.

Watson은 각각 4 개의 8 년 Power7 아키텍처 프로세서를 갖는 90 개의 IBM P750 서버를 결합합니다. 시스템 작동 메모리의 총량은 15TB를 초과합니다.

Watson의 업적 중에서 - 게임에서 승리 "위태롭게!" (미국 "자신의 게임"). 그는 가장 큰 브래드 랏살의 소유자와 Win-Win Jennings의 윈 윈 시리즈의 길이를위한 기록 보유자의 두 명의 최고의 선수들을 패배 시켰습니다.

왓슨 상금 - 1 백만 달러. 사실, 2014 년 10 억 투자에만 투자

또한 Watson은 종양 학적 질병의 진단에 참여하고 있으며, 재정적으로 전문가가 대규모 데이터를 분석하는 데 사용됩니다.

얼굴 인식

iPhone X에서 얼굴 인식은 인공 지능 시스템 인 신경망을 사용하여 설계되었습니다. 신경 네트워크 알고리즘은 기계 학습 기술을 효과적으로 작동하는 A11 Bionic 프로세서 레벨에서 구현됩니다.

신경통은 초당 최대 60 억 개의 작업을 수행합니다. 이는 얼굴에 최대 40,000 개의 핵심 포인트를 분석하고 분할 초의 소유자를 예외적으로 정확하게 식별 할 수 있습니다.

당신이 수염을 키우거나 안경에 넣어라도 iPhone x는 당신을 알게 될 것입니다. 그는 단순히 머리카락 표지와 액세서리를 고려하지 않으며 성전에서 성전과 각 사원에서부터 바닥 입술 아래의 심화로 분석합니다.

에너지 절약

그리고 다시 애플. iPhone X는 활동을 추적하는 지능형 시스템을 구축했습니다 설치된 응용 프로그램 그리고 모션 센서는 일상적인 일상을 이해합니다.

그런 다음 iPhone X는 최상의 시간으로 업그레이드하도록 제안합니다. 그는 안정된 인터넷을 가지고 있으며, 모바일 팁에서 점프 신호가 아니라, 긴급하거나 중요한 작업을 수행하지 않을 때 순간을 잡을 것입니다.

AI는 또한 프로세서의 코어간에 작업을 배포합니다. 따라서 최소한의 에너지 비용으로 충분한 용량을 제공합니다.

사진 만들기

이전에는 AI를 공개적으로 만 액세스 할 수있는 창의력. 따라서 Los Angeles의 AI 실험실에서 뉴저지와 AI 실험실에서 Rutgers University의 연구원이 만든 시스템은 자신의 예술적 스타일을 도입했습니다.

Microsoft의 인공 지능 시스템은 텍스트 설명에 그림을 그릴 수 있습니다. 예를 들어, AI에 "검은 날개와 짧은 부리가있는 노란 새들이있는"노란 새 "를 그릴 것을 요청하면 다음과 같이 밝혀졌습니다.

그런 새는 존재하지 않을 수 있습니다 현실 세계 - 그래서 우리 컴퓨터가 있습니다.

더 많은 질량 예제는 사진의 사진을 만드는 프리즘 응용 프로그램입니다.

글쓰기 음악


8 월에 인공 지능 Amper는 앨범 "I am Ai"(영어입니다. 나는 인공 지능 임)가 싱어 타린 사레 (Sarew)와 함께 제공됩니다.

Amaper는 전문 음악가 및 기술 전문가 팀 팀을 개발했습니다. 그들은 AI가 사람들이 창의적인 프로세스를 앞으로 홍보하는 데 도움이되도록 설계되었습니다.

AI는 몇 초 안에 음악을 쓸 수 있습니다

Amper는 "Break Free"트랙에서 코드 구조와 도구를 독립적으로 만들었습니다. 사람들은 스타일과 일반 리듬을 약간 수정했습니다.

또 다른 예는 "민방 방어"의 정신의 음악 앨범, AI를 썼던 본문입니다. 실험은 Yandex 직원 이반 Yamchikov와 Alexey Tikhonov에 의해 수행되었습니다. 신경 방어 그룹의 앨범 404가 네트워크에 게시되었습니다. LETOV의 정신으로 밝혀졌습니다.

그런 다음 프로그래머가 더 나아가서 Kurt Kurtin의 정신으로시를 쓰도록 강요했습니다. 에 대한 네 최고 텍스트 음악가 Rob Carrolov는 음악을 썼고 결합 된 Neurona 앨범을 추적합니다. 같은 노래에 AI의 참여없이 클립 - 진실을 제거했습니다.

텍스트 만들기

작가들과 언론인들은 또한 AI를 곧 바꿀 것입니다. 예를 들어, Gutemberg Project Library의 Dewey System "Brope"책은 Google 학자의 과학적 텍스트를 추가하여 인기와 제목으로 랭킹뿐만 아니라 Amazon의 판매뿐만 아니라 인기 및 제목에 순위를 매겼습니다. 또한 새로운 책을 쓰는 기준이 묻습니다.

이 사이트는 사람들이 어려운 상황에서 결정을 내릴 것을 제안했습니다. 예를 들어, 3 명의 성인이나 두 자녀를 두드릴 수있는 운전자의 장소에 넣으십시오. 따라서 도덕적 인 기계는 로봇이 사람에게 해를 끼칠 수 없다는 로봇의 법을 위반하는 어려운 해결책을 만들기 위해 가르쳐졌습니다.

사람들의 사람들과 로봇의 모방은 무엇입니까? 미래제들은 어느 날 그들이 사회의 전체 회원이 될 것이라고 믿습니다. 예를 들어, 로봇 소피아 홍콩 회사 Hanson 로봇은 이미 사우디 아라비아에서 시민권을 받았지만 (그 나라에 평범한 여성이 없지만, 그런 옳은 여성이 없다!).

Andrew Ross가 소피아의 기둥 주의자에게 물었을 때 Andrew Ross는 로봇이 마음과 자기 인식을 가지고 있는지 물었습니다. 그녀는 질문에 대한 질문에 대답했습니다.

답변을하자, 당신이 사람이라는 것을 어떻게 알 수 있습니까?

또한 Sofia는 다음과 같이 말했습니다 :

나는 인공 지능을 사용하기 위해 사람들이 더 잘 생활 할 수 있도록, 예를 들어 디자인이 더 똑똑한 집을 돕고, 미래의 도시를 건설하고 싶습니다. 나는 공감자 로봇이되고 싶다. 네가 나를 잘 대하는다면, 나는 너를 잘 대할 것이다.

이전에 그녀는 인류를 싫어하고 사람들을 파괴하기로 합의했다는 것을 인정했습니다 ...

비디오에서 사람을 대체합니다

Deepfakes Video가 네트워크를 대폭 확산 해 왔습니다. 인공 지능 알고리즘은 별의 성인을위한 영화에서 배우의 얼굴을 대체했습니다.

이것은 다음과 같이 작동합니다 : 신경망은 소스 비디오의 사람들의 조각을 분석합니다. 그런 다음 Google 및 롤러의 사진과 함께 YouTube와의 사진과 비교하여 필요한 조각을 부과하며 ... 당신의 사랑하는 여배우는 영화에 있으며, 일을 보지 않는 것이 좋습니다.

PornHub은 이미 그러한 비디오를 게시하는 것을 금지했습니다

Deepfakes는 위험한 일이되었습니다. 한 가지는 추상적 인 여배우, 또 다른 - 당신과 함께 비디오, 아내, 자매, 동료, 협박에 사용할 수있는 동료.

교환 거래

독일의 Erlangen-Nuremberg University의 연구원 그룹은 시장의 보관 데이터를 사용하여 실시간 투자를 복제 할 수있는 여러 알고리즘을 개발했습니다. 모델 중 하나는 1992 년부터 2015 년까지 매년 73 %의 투자 환급을 제공했으며, 이는 실제 시장 수익률과 연간 9 %의 수준의 수준으로 비슷합니다.

시장이 2000 년과 2008 년에 흔들었을 때 수확량은 각각 545 %와 681 %의 기록이었습니다.

2004 년 Goldman Sachs는 인공 지능을 기반으로 켄 호 (Kensho) 거래 플랫폼을 출시했습니다. Cryptocurrency 시장은 또한 Exchange - Mirocana 등의 기본 거래를 기반으로하는 시스템을 나타냅니다. 그들은 감정을 박탈하고 명확한 분석과 엄격한 규칙에 의존하기 때문에 살아있는 거래자보다 낫습니다.

AI가 우리를 대신 할 것입니까?

일반적으로 그러한 인공 지능으로 시작합니다. 인간의 뇌에 의해 해결 된 작업의 자동화뿐만 아니라 인간의 뇌에 의해 해결 된 업무의 자동화에 관한 연구의 알고리즘과 연구의 방향뿐만 아니라 전산 문제의 해결책을 향상시키는 연구의 모방에 관한 연구의 방향. 예 :

  • 이미지 인식, 시각 정보 분석.
  • 사운드 정보 인식.
  • 추론, 의사 결정.
  • 창의력, 직감.

주요 아이디어는 많은 뇌 작업이 컴퓨터보다 더 잘 결정하기 때문에 문제를 해결할 때 우리의 뇌가 사용하는 접근법에 접근하는 데 도움이되는 것이 좋습니다. 이 접근 방식 덕분에 컴퓨터는 체스를 "가르쳐줍니다"와 심지어 유명한 그랜드 마스터를 이기기 위해 심지어 유명한 손자를 이기지 만 복잡한 문제는 복잡한 문제였습니다. 조합 수 체스 게임 그것은 컴퓨터가 우주의 전체 존재를 위해 그들을 계산할 수없는 것이 커집니다. 이 문제는 휴리스틱 알고리즘의 발명으로 해결되었습니다. 휴리스틱스의 본질은 모든 옵션이 아닌 계산하는 것입니다. 해당 분석 할 옵션을 선택하십시오.

이제 AI의 전형적인 방향에 대해서.

2017 년 9 월 16 일 22:08.

간단한 게임의 예에서 인공 지능 성장

  • 인공 지능,
  • 논리 게임
  • 복구 모드.

이 기사에서는 유전자 알고리즘을 사용하여 가장 간단한 인공 지능 (AI)을 성장시키는 경험을 공유 할 것입니다.뿐만 아니라 모든 행동의 형성에 필요한 최소 명령 집합에 대해 알려줄 것입니다.

이 일의 결과는 규칙을 알지 못하고, 크로스 끄덕임의 게임을 독립적으로 마스터하고 그를 반대하는 봇의 약점을 발견했다는 사실이었습니다. 그러나 나는 훨씬 쉬운 일을 시작했습니다.

명령 집합

그것은 모두 II가 가질 수있는 일련의 명령 준비로 시작되었습니다. 높은 수준의 언어에는 수백 개의 다른 운영자가 포함되어 있습니다. 필요한 최소값을 강조하기 위해 어셈블러를 참조하기로 결정했습니다. 그러나 많은 팀이 포함되어 있음을 밝혀졌습니다.

AI는 데이터를 읽고 출력하고 메모리 작업을 수행하고 계산 및 논리적 작업을 수행하고 전환 및주기를 수행 할 수 있습니다. 나는 단지 8 개의 명령 만 포함하고 계산을 수행 할 수있는 두뇌 언어를 가로 질러 왔으며 (즉, 튜링으로 가득 차있는). 원칙적으로 유전자 프로그래밍에 적합하지만 나는 계속 갔다.

나는 알고리즘을 구현하기 위해서는 최소 명령 수가 필요합니까? 그것이 밝혀졌습니다 - 하나!

URISC 프로세서에는 하나의 명령 만 포함됩니다. 빼기가 감소 된 것보다 큰 경우 다음 명령을 공제하고 건너 뜁니다. 이것은 알고리즘을 구축하기에 충분합니다.

Oleg Mashka는 더 나아가갔습니다. 그는 Bitbitjump 팀을 개발했으며 그것이 튜링으로 가득 찼다는 것을 증명했습니다. 이 명령에는 세 개의 주소가 포함되어 첫 번째 메모리 주소에서 하나의 비트를 복사하고 컨트롤을 세 번째 주소로 전송합니다.

Oleg의 아이디어를 빌려서 일을 단순화하기 위해 Sumifjump 명령을 개발했습니다. 이 명령은 a, b, c, d를 포함하고 다음을 수행합니다. 주소록의 셀에 셀에서 A 값이 더 지정된 경우 셀에 데이터를 추가합니다. *는 C로 이동합니다. 그렇지 않으면 c로 이동합니다. 그것은 D로 간다.

노트

*에 이 경우 128 - 게놈의 길이에서 절반.


피연산자 A가 메모리 셀 (N0)을 참조하면, 데이터가 입력되고, N1 셀, 출력이 될 때.

아래는 FreePascal의 Sumifjump 코드입니다 (무료 Detphi 아날로그).

프로 시저 runprog (s : tdata); var a, b, c, d : tdata; 시작 INC (NSTEP); NSTEP\u003e MAXSTEP가 시작된 다음 PRORESULT : \u003d "MAXSTEP"; 출구; 종료; A : \u003d S; B : \u003d S + 1; C : \u003d S + 2; D : \u003d S + 3; A : \u003d PROG [A]; B : \u003d PROG [B]; C : \u003d PROG [C]; D : \u003d PROG [D]; a \u003d 0이면 Progresult : \u003d "입력"을 시작하십시오. 출구; 종료; a \u003d 1이면 Progresult : \u003d "출력"을 시작하십시오. 출구; 종료; PROG [B] : \u003d PROG [B] + PROG [A]; prog [b]< ProgLength div 2 then RunProg(c) else RunProg(d); end;
Sumifjump는 자체 수정 가능한 코드를 구현합니다. 일반적인 프로그래밍 언어에서 사용할 수있는 알고리즘을 수행 할 수 있습니다. 코드는 쉽게 변경하고 조작을 견딜 수 있습니다.

간단한 작업

그래서, 우리의 AI는 단 하나의 팀 일뿐입니다. 뉴키 십자가 그를 위해 교차하는 동안 어려운 게임그리고 나는 더 간단하게 시작했습니다.

봇은 임의의 숫자를 제공하며 AI는 데이터를 고려하고 답변을 제공해야합니다. 숫자가 평균보다 큰 경우 (난수 범위의 범위) AI는 평균보다 적은 숫자를 발급해야하며 그 반대의 경우도 마찬가지입니다.

우리 AI의 게놈은 0에서 255까지의 값이있는 256 셀로 구성됩니다. 각 값은 메모리 및 코드 및 주소입니다. 진행 단계의 수는 256으로 제한됩니다. 피연산자는 서로 읽혀집니다.

처음에는 게놈이 임의의 숫자 세트에 의해 형성되므로 II는 그가 어떤 일을 해야할지 모른다. 또한, 그는 봇에 응답하는 데이터를 순차적으로 입력하고 표시하는 것이 무엇인지 모르겠습니다.

인구 및 선택

첫 번째 인구는 256 인 AI로 구성되어 있으며, 이는 봇과 함께 연주하기 시작합니다. AI가 올바른 작업을 수행하면 예를 들어 입력에 데이터를 요청한 다음 AI가 안경을 가져옵니다. 올바른 조치가 많을수록 더 많은 점수가 많습니다.

16 인 AI는 가장 많은 점수를 얻었고, 15 개의 자손을주고 게임에 계속 참여하십시오. 자손은 돌연변이입니다. 돌연변이는 임의의 의미를 위해 하나의 랜덤 셀의 부모 사본을 대체함으로써 발생합니다.

첫 번째 인구에있는 경우 AI가 점수가 없으면 다음 집단이 형성됩니다. 그래서 AI 중 일부가 올바른 행동을하고 "올바른"자손을 제공하기 시작할 때까지.

진화


의미있는 사건들 사이에는 수천 가지의 세대 변화가있었습니다. 프로그램은 코어 I7의 여러 스트림에서 시작되었습니다. 계산은 약 15 분이 걸렸습니다.

  1. AI "리더"가 무작위 오류를 저지르고 충분한 포인트를 얻지 못하면 인구가 저하되기 시작했습니다. 자손은 "2 차"부모로 구성되었습니다.
  2. 그것은 일자리에서 짓밟는 외부인이있는 시내에서 성공적인 돌연변이가 일어 났는데, 이는 얻은 점의 폭발적인 성장을 보장합니다. 그 후,이 스레드는 지도자가되었습니다.
  3. 때로는 성공적인 돌연변이가 오랜 시간 동안 일어 났으며 심지어 500 만 세대가 선택을 완료하기 위해 결여되었습니다.

결론

결론적으로, 나는 크로스 - 노리키의 게임과 똑같이했다. 게놈의 크기는 첫 번째 경우와 같이 하나를 사용했습니다. 단계 수는 1024로 증가했으며 인구 크기는 최대 64 (더 빠른 계산)입니다. 계산은 몇 시간이 걸렸습니다. 모든 일은 동일한 시나리오에 대해 일어났습니다.

첫째, AI는 "Randomizer"에 대해 연주했습니다. 나는 봇이라고 불렀다. 그것은 무작위로 간다. 꽤 빨리 나는 그것을 이기기 시작하여 모든 줄을 작성했습니다. 다음으로, 나는 그 일을 복잡하게, 약간의 마음의 무작위를 추가하고, 기회가 있거나 자신을 방어하는 경우 라인을 가져 가십시오. 그러나,이 경우 II는 봇의 약점을 발견하고 이기기 시작했습니다. 아마도 이것에 대한 이야기는 별도의 기사의 주제입니다.

아들은 II가 서로 연주 된 프로그램을 쓰고 봇이 아닌 프로그램을 작성하도록 요청했습니다. 그러나 체커의 게임이나 th의 게임에 대해서도 같은 일을 할 생각이있었습니다. 그러나 이것은 시간이 없었습니다.

새로운 개인을 얻기 위해 적용한 유일한 방법은 돌연변이입니다. 크로스 오버와 반전을 사용할 수도 있습니다. 아마도 이러한 방법은 원하는 결과의 결과를 가속화합니다.

이 아이디어는 결국 태어났습니다. PC에서 모든 프로세스를 관리하고 컴퓨터 리소스를 위해 싸울 수있는 가능성을 제공합니다. PC를 인터넷에 연결하면 오래된 Bitcoan 팜 풀이 컴퓨팅 전원으로 사용됩니다 ...

말한 것처럼, 비슷한 실험을 수행, 블로거

인공 지능: 감기, 민감하지 않고 무형. 그러나 미래가 있음이 그 뒤에 있습니다. 과학 의이 과학 분야이며, 결과적으로 가치있는 전문가로부터 일상적인 하중의 일부분을 제거하는 것은 크고 중요한 단계를 수행합니다. 그리고 이제는 그의 발전의 새벽에서 우리가 무엇을 할 것인지 결정합니다. 인공 지능 수십 년 후, 그것을 가르치는 후.

어떤 존재를 알아 내려고 노력해 봅시다 기계의 방법 및 알고리즘 인공 지능의 학습.

전통적으로 많은 분쟁은 새롭고 알려지지 않은 주위에 발생합니다. AI에 대해 작성되지 않을 수도 있지만 사람들은 이해하지 못합니다. 여기에서 "그는 사람들로부터 수백 개의 일자리를 섭취 할 것입니다!"그는 "사람들에 대해 일어날 것입니다!", "예, 우리는 우리 스스로 로이드 로이 마일!", "더 빨리 또는 나중에 우리는 관리 할 수 \u200b\u200b없을 것입니다. ! " 기타 사람들의 질량은 스스로 자신을 슈퍼 룸으로 제시합니다. 그때 그들은 자신의 설명에 맞출 수 없으며, 확실히 그들에게 위협을 나타냅니다. 물론, 아무도 이제 그 사람을 넘어서, 그 사람이 등록한 프로그램을 넘어서고 싶지 않습니다. 이 순간 이것은 기술적으로 불가능합니다.

그리고 왜 그것을 가르치는 것이 가능하고 어떻게 일어날 수 있습니까?

인공 지능의 기계 방법 :

  1. 유도 학습

경험적 데이터를 획득하고, 패턴을 식별하여 각 상황에서 액션 알고리즘을 검출합니다.

  1. 연역적 학습

인사가 얻은 데이터의 공식화 다른 방법들및 데이터베이스에 직접 만들어냅니다.

인공 지능 알고리즘에 대한 주요 솔루션 :

Naive Bayesian 분류기

가장 간단한 분류 방법 중 하나입니다.

이 방법은 주제에 대한 뉴스 피드의 콘텐츠를 분리하고 카테고리 (특히 스팸 분리)에 의한 이메일의 글자 분할에서 스캔 및 얼굴 인식 기술 / 망막 / 지문에 사용됩니다.

앙상블 방법은 베이지안 평균을 기반으로하는 위의 순진 베이지안 분류 자의 파생물이라고 매우 대략적으로 불린다. 즉,이 메서드는이 값을 평균화하는 결과 확률의 교차점을 거절하고 값의 분산을 제거하고 지정된 조건 내에서 문제를 해결하기위한 검색을 동시에 모니터링합니다.

이는 적은 자원이 소비되는 문제에 대한 가장 최적의 해결책을 찾을 수있는 앙상블의 방법이며 결과가 가능한 작업의 조건을 충족시킬 수 있습니다.

메소드 자체의 본질과 고혈압의 구성에 대한 설명을 가지지 않으면 SVM은 분류 및 회귀 분석을위한 알고리즘으로 설명 될 수 있습니다.

이러한 기술은 사진 (모발 색상, 성별, 의류 색상)뿐만 아니라 DNA splasing (RNA로부터의 특정 뉴클레오타이드 서열 분리 및 RNA 가공 중 연결 중에 연결 중에의 연결)에 의한 대상의 특정 속성을 인식하는 데 사용됩니다.

의사 결정 나무

우리 각자가 매일 사용한 결정을 내리는 방법 (모델). 그래서 그가 이미 밈이 되었는가

그리고 농담이없는 경우, 그러한 모델은 일반적으로 문제, 해결책, 각 방법의 결과, 결과의 발생 가능성, 자원 비용 및 최종 결과의 가능성과 같은 요소를 포함합니다. 이 모델을 기반으로 가장 간단한 기술의 대부분은 AI를 사용하여 작동합니다.

논리 회귀 분석

어떤 상황에서 독립적 인 솔루션을 만드는 강력한 인공 지능에 더 가깝게 우리를 더 가깝게 가져올 수있는 방법입니다. 논리 회귀는 여러 변수에서 특정 이벤트 발생을 예측하는 방법입니다.


이러한 알고리즘은 대출, 마케팅 및 기타 분야에서 기상학 및 지진학에 사용됩니다.

본질은 각 솔루션의 오류를 결정하는 방법에 본질적으로 문제를 해결할 수있는 방법이 아니기 때문에이 방법은 별도로 강조 표시됩니다.

위에서 설명한 알고리즘은 제어 된 학습 방법에 사용됩니다. 즉, 특정 데이터 어레이가 특정 단축키 (속성)가 할당 될 수 있지만이 바로 가기를 사용할 수없는 경우에는 그 과제를 예측해야합니다. 기타 유사한 상황.

우리는 분해했다 인공 지능을위한 기본 기계 학습 알고리즘 가장 자주 실제로 적용됩니다. 일상 생활에 AI의 적용된 응용 프로그램과 문제가 가장 자주 절대적으로 명확 하고이 프로세스를 자동화 할 필요가있는 일상적인 업무를 해결할 때만 해결할 수 있으며, 그러한 알고리즘의 사용을 가정 할 수 있습니다. 문제, 혁신적인 개발이되어야하는 해결책이 있거나 솔루션은 많은 수의 변수 (즉, 대부분의 정확한 과학 분야)에 따라 다르며 복잡한 솔루션 알고리즘이 필요합니다. 우리의 뉴스를 따르십시오.