sonyps4.ru

Программирование роботов. Разработка робототехники

Основной вопрос перед разработчиком – какому языку отдать предпочтение для создания ИИ? Мы рассмотрим популярные языки, используемые для создания ИИ.

Одно только лишь название «искусственный интеллект» может привести в ступор и навести немало страха как на обычного человека, так и заурядного программиста. Занятие действительно сложное, а красивые демонстрируемые примеры - это результат многотысячных строк кода. При всём этом создание ИИ может стать вполне реальной задачей, а в части случаев, даже несложной. Многие проекты требуют углублённых знаний ИИ, а также языков программирования.

LISP

Родоначальником языков программирования, на которых начал создаваться искусственный интеллект стал LISP . ЛИСП отличается гибкостью использования и простотой расширения функционала. Благодаря наличию возможности быстрого прототипирования и установки макросов удалось сократить уйму времени, это принесло много пользы в отношении ИИ.

LISP стал универсальным языком, который равно хорошо справляется с относительно тяжёлыми и лёгкими задачами. В нём устроена качественная и продвинутая система объектно-ориентированности , что и позволило занять одну из лидирующих позиций при разработке ИИ.

Java

Наибольшим достоинством языка является многофункциональность, среди прочих:

  • прозрачность использования и написания кода;
  • способность легко переносить программы;
  • лёгкое сопровождение проектов.

Для новичков важным достоинством Java станет наличие многочисленных бесплатных уроков в сети. Обучение Java является максимально комфортным и удобным для большинства студентов и новичков.

Среди особенностей языка стоит выделить:

  • простота выполнения отладки;
  • качественное взаимодействие клиентской и серверной системы ресурса;
  • лёгкость обращения с масштабными проектами.

При создании проектов на Java пользователь сталкивается с более привлекательным и доступным интерфейсом, что всегда притягивает аудиторию.

Prolog

Данный вариант относится к интерактивным языкам, которые работают по символической системе. Он популярен для использования в отношении проектов, требующих высокие логические способности. Язык имеет мощную и удобную основу, она активно используется в отношении программирования non-численного типа . На основании Prolog`а часто создаются доказательства теорем, проводится взаимодействие с понятным человеческим языком, используется для создания систем экспертной оценки.

Пролог относится к декларативным типам языка, которые используют формальное или образное «мышление ». Среди разработчиков ИИ приобрёл хорошую славу благодаря оптимальным обструкционным типам работы, встроенным алгоритмам анализа, недетерминизма и т.д. Всё в сумме можно описать так: Prolog - многофункциональная платформа для программирования ИИ.

Python

Активно применяется в программировании благодаря чистому синтаксису и логическому, строгому грамматическому построению программы. Немаловажную роль играет и удобный дизайн.

В основе используются многочисленные структурные алгоритмы, бесчисленные фреймворки для отладки, оптимальным показателям взаимодействия низкого и высокого уровня написания кода. Все перечисленные достоинства обеспечивают должное влияние в сфере создания искусственного интеллекта.

История развития ИИ

Началом традиционного представления ИИ стал проект UNIMATE , который увидел мир в 1961 году . В ходе представления был впервые получен робот, который начал выпускаться в промышленных масштабах. Робот был задействован на линии производства в концерне «General Motors ». Для создания были задействованы Валь и переменные из среды ассемблера. Язык пришёлся по душе благодаря наличию простейших фраз, отражению команд на мониторе и наличию инструкций, не нуждающихся в дополнительных разъяснениях.

Спустя 4 года (1965 год ) был запущен искусственный интеллект « Dendral ». Задача системы заключалась в выявлении молекулярной и атомной структуре соединений органического происхождения. Для написания был использован LISP .

«Weizenbaum » в 1966 году запустил проект Элиза, который впервые предполагал проведение беседы с роботом. Самой известной моделью являлся «Доктор», который позволял отвечать на поставленные запросы в форме психотерапевта. Для реализации проекта потребовалось сопоставление нескольких образцов технического достижения своего времени. Впервые Элиза увидел мир на SPLIP, но для отработки списка запущен «Weizenbaum». Немногим позже проект переработан на другую платформу - LISP .

Первым роботом мобильного типа стал «Шеки », в его основе также лежал ЛИСП. Логика конструктора была построена на решении поставленных задач и передвижения, для взаимодействия использовались подъёмы вверх и вниз, а также включение и выключение света. С помощью «Шеки » удавалось открывать, закрывать, передвигать и т.д. Робот даже был способен передвигаться со скоростью равной спокойной ходьбе человека - 5 км/ч.

За последние 15 лет было представлено многочисленное количество изобретений: «Деннинг » (сторожевой робот), «Predator » (беспилотник), «АЙБО » (собака), «АСИМО » от Honda и многие другие. Тенденция идёт к развитию данного направления, чего и стоит ожидать в ближайшем и дальнем бедующем.

Где он рассказал об одной из своих целей, которая привела в профессию – желанию познать принцип работы и научиться создавать самому игровых ботов.

А ведь действительно, именно желание создать совершенный искусственный интеллект, будь то игровая модель или мобильная программа, сподвигла на путь программиста многих из нас. Проблема в том, что за тоннами учебного материала и суровой действительностью заказчиков, это самое желание было заменено простым стремлением к саморазвитию. Для тех, кто так и не приступил к исполнению детской мечты, далее краткий путеводитель по созданию настоящего искусственного разума.

Стадия 1. Разочарование

Когда мы говорим о создании хотя бы простых ботов, глаза наполняются блеском, а в голове мелькают сотни идей, что он должен уметь делать. Однако, когда дело доходит до реализации, оказывается, что ключом к разгадке реальной модели поведения является...математика. Если быть немного конкретнее, то вот список её разделов, которые необходимо проштудировать хотя бы в формате университетского образования:

    Линейная алгебра;

  • Теория графов;

    Теория вероятностей и математическая статистика.

Это тот научный плацдарм, на котором будут строится ваше дальнейшее программирование. Без знания и понимания этой теории все задумки быстро разобьются о взаимодействие с человеком, ведь искусственный разум на самом деле не больше, чем набор формул.

Стадия 2. Принятие

Когда спесь немного сбита студенческой литературой, можно приступать к изучению языков. Бросаться на LISP или другие пока не стоит, для начала надо научиться работать с переменными и однозначными состояниями. Как для быстрого изучения, так и дальнейшего развития прекрасно подойдёт , но в целом можно взять за основу любой язык, имеющий соответствующие библиотеки.

Стадия 3. Развитие

Теперь переходим непосредственно к теории ИИ. Их условно можно разделить на 3 категории:

    Слабый ИИ – боты, которых мы видим в компьютерных играх, или простые подручные помощники, вроде Siri. Они или выполняют узкоспециализированные задачи или являются незначительным комплексом таковых, а любая непредсказуемость взаимодействия ставит их в тупик.

    Сильный ИИ – это машины, интеллект которых сопоставим с человеческим мозгом. На сегодняшний день нет реальных представителей этого класса, но компьютеры, вроде Watson очень близки к достижению этой цели.

    Совершенные ИИ – будущее, машинный мозг, который превзойдёт наши возможности. Именно об опасности таких разработок предупреждают Стивен Хоккинг, Элон Маск и кинофраншиза «Терминатор».

Естественно, начинать следует с самых простых ботов. Для этого вспомните старую-добрую игру «Крестики-нолики» при использовании поля 3х3 и постарайтесь выяснить для себя основные алгоритмы действий: вероятность победы при безошибочных действиях, наиболее удачные места на поле для расположения фигуры, необходимость сводить игру к ничьей и так далее.

Как вы поняли даже из названий, это API, которые позволят без лишних затрат времени создать некоторое подобие серьёзного ИИ.

Стадия 5. Работа

Теперь же, когда вы уже вполне ясно представляете, как ИИ создавать и чем при этом пользоваться, пора выводить свои знания на новый уровень. Во-первых, для этого потребуется изучение дисциплины, которое носит название «Машинное обучение» . Во-вторых, необходимо научиться работать с соответствующими библиотеками выбранного языка программирования. Для рассматриваемого нами Python это Scikit-learn, NLTK, SciPy, PyBrain и Nump. В-третьих, в развитии никуда не обойтись от

ПЛАН.

1. Введение.

2. Феномен мышления.

3. Создание искусственного интеллекта.

3.1 Механический подход.

3.2 Электронный подход.

3.3 Кибернетический подход.

3.4 Нейронный подход.

3.5 Появление перцептрона.

4. Заключение.

5. Список литературы.

1. ВВЕДЕНИЕ.

Современные философы и исследователи науки часто рассматривают междисциплинарные науки как одно из достижений заново открытых в 20 веке.

Искусственный Интеллект и искусственная жизнь представляет прекрасный пример такой интеграции многих научных областей.

К сожалению, жизнь слишком сложна, чтобы можно было наметить общие направления в исследованиях. Доказательством может служить тот факт, что некоторые заинтересованы в исследовании «систем, демонстрирующих феномены живых систем», другие изучают природу химического репродуцирования или пытаются решить философские проблемы самопознания.

В понятие «искусственный интеллект» вкладывается различный смысл – от признания интеллекта у ЭВМ оснащенных программными продуктами распознавания текста и речи до отнесения к интеллектуальным лишь тех систем, которые решают весь комплекс задач, осуществляемых человеком.

Теория искусственного интеллекта при решении многих задач сталкивается с определёнными проблемами. Одна из таких проблем состоит в выяснении вопроса, доказуема ли теоретически (математически) возможность или невозможность искусственного интеллекта.

На этот счёт существуют две точки зрения. Одни считают математически доказанным, что ЭВМ в принципе может выполнить любую функцию, осуществляемую естественным интеллектом. Другие полагают в такой же мере доказанным математически, что есть проблемы, решаемые человеческим интеллектом, которые принципиально недоступны ЭВМ. Эти взгляды высказываются как кибернетиками так и философами. Одна из многих проблем (можно сказать основная) состоит в том, что системы, обладающие психикой, отличаются от ЭВМ тем, что им присущи биологические потребности.

Отражение внешнего мира проходит через призму этих потребностей, в чем выражается активность психической системы. ЭВМ не имеет потребностей, для неё информация незначима, безразлична. У человека над слоем биологических потребностей надстраиваются социальные потребности, и информация для него не только биологически но социально значима. Однако технические системы все-таки могут иметь аналог телесной организации. Развитая кибернетическая система обладает рецепторными и эффекторными придатками. На практике под крышей термина искусственная жизнь гнездится грандиозное разнообразие различных проектов от моделей копирования ДНК и систем с обратной связью до изучения коллективного разума и динамики роста населения.

2. ФЕНОМЕН МЫШЛЕНИЯ.

Машины уже научились слагать стихи, сочинять музыку, рисовать картины. Возможно, кому-то покажется, что это – несомненный признак их разумности. Ведь если ЭВМ доступно творчество, которое всегда считалось свойством высокого интеллекта, то справедливо ли отказывать ей в разуме?

Всё же большинство из нас едва ли согласятся считать рисующую и сочиняющую стихи ЭВМ мыслящей. Что же тогда следует называть мышлением?(2)

Далёкому от науки человеку трудно себе представить, как много умеют делать современные кибернетические устройства. Стоит хотя бы упомянуть о так называемых «экспертных системах», которые на основе имеющихся в их памяти сведений анализируют состояние больного, режим технологического процесса, дают советы, как поступить в той или иной ситуации. При этом ЭВМ не только сообщает своё решение, но и объясняет, почему оно должно быть таковым. По сравнению с электронной памятью, выдачей архивных справок и математическими вычислениями, что сегодня у большинства людей ассоциируется сегодня с образом компьютера, это – качественно новая ступень интеллектуальной деятельности, когда на основе имеющегося вырабатывается новое знание. До сих пор это считалось неоспоримой привилегией человеческого мозга. Неудивительно, что тому, кто впервые встречается с подобными системами, часто просто не верится, что он имеет дело с «железной ЭВМ», а не со спрятавшимся где-то оператором-человеком.

Способность ЭВМ выполнять математические расчеты, к чему мы привыкли, ещё совсем недавно рассматривалась как одна из самых высших ступеней духовной деятельности человека. Комплексные числа, с которыми легко оперирует почти любая ЭВМ, Г.Лейбниц, сам выдающийся математик, называл «духовными амфибиями», удивительным «порождением духа Божьего», а писатель В.Одоевский в своей «Русской речи» писал о нашей способности к вычислениям как о каком-то непостижимом, почти мистическом свойстве: При всяком математическом процессе мы чувствуем, как к нашему существу присоединяется какое-то другое, чужое, которое трудится, думает, вычисляет, а между тем наше истинное существо как бы перестаёт действовать, не принимая никакого участия в этом процессе, как в деле постороннем, ждёт своей собственной пищи, а именно связи, которая должна существовать между ним и этим процессом, - и этой связи мы не находим».

Можно представить, как был бы поражён Одоевский, узнав о вычислительных способностях наших ЭВМ! Тем не менее, мы не считаем их думающими.

Любая вычислительная машина, каким бы поразительным ни было её «умение» обучаться, работает на основе заранее составленной для неё программы и поступающих внешних данных. Правда, мы, люди, тоже реализуем определенные программы действий, особенно в первые месяцы жизни, когда наше поведение почти целиком определяется заложенной в нас генетической программой. Однако принципиальное различие в том, что человек способен мотивированно, т.е. в зависимости от определённых условий, изменять программу и делает это так, что между Сарой и новой программами нет непрерывного логического мостика. Как это происходит, тоже пока не ясно, тут много споров и различных точек зрения, но это уже другой вопрос, важно, что современные вычислительные машины этим свойством не обладают. Вот если бы случилось так, что какая-то ЭВМ, решившая, скажем задачи по электромагнетизму и квантовой механике, объединила бы эти два раздела науки и вывела уравнения квантовой электродинамики, а потом с их помощью предсказала бы новые явления в этой неизвестной ей ранее области, тогда, наверное, мы были бы в праве назвать её думающей. И прежде всего потому, что она сама, без всякой программной подсказки, решила заняться качественно новой задачей. Слово «решила» как раз и означает, что она мыслит.

Всякая интеллектуальная задача представляет собой поиск способа достижения поставленной цели, а иначе это будет не решением задачи, а просто действием по точной инструкции.

Когда мы говорим, что школьник решает задачу, это означает прежде всего, что он должен сообразить, какую взять для этого формулу, какие подставить в неё числа. Однако, если он, заглядывая в тетрадь соседа, подставляет указанные там числа в написанную на доске формулу, это уже не решение, а механическое повторение. Именно так ведут себя современные ЭВМ. Строго говоря, никаких задач они не решают, и часто используемое нами выражение «ЭВМ решает» имеет условный смысл…

Способность ставить задачу и самопрограмироваться на её решение – это как раз и есть главное, что характеризует феномен мышления.

Можно возразить данному утверждению, отметив, что и рыбы, и примитивные амёбы в погоне за добычей, тоже ставят себе задачи, изменяющиеся в зависимости от конкретных условий, значит – и они мыслят?

Это могут быть примитивные формы мышления, ведь объяснить поведение животных во всём многообразии жизненных ситуаций одним лишь инстинктом – это гипотеза.(2)

Животным и птицам присуще такое свойство мышления, как способность к обобщению. Например, они узнают пищу в различных конкретных формах, так сказать – пищу вообще.

Наше обыденное понимание разумного слишком очеловечено, и, подобно тому, как в XIX веке многим казалась нелепой сама мысль о преемственной связи между человеком и обезьяной сегодня многих из нас смущает мысль о возможности нечеловеческого интеллекта. В частности, сами того не замечая, мы часто связываем представление о мышлении со способностью осознавать своё собственное «я», и это мешает нам более широко взглянуть на феномен мышления. Правда, связь между мышлением и чувством «я», по-видимому, действительно существует. Можно думать, что в условиях прихотливо изменяющейся внешней обстановки сложная система будет устойчивой лишь в том случае, если она обладает способностью ощущать своё состояние, а в этом и состоит суть нашего «я». Анализ показывает, что подобное чувство необходимо уже многим роботам-автоматам. Ведь робот, да и вообще всякая сложная самообучающаяся и активно общающаяся с человеком машина должна сообщать ему о состоянии своей памяти, о том, что ей понятно, а что – нет и почему. А для этого автомат должен ощущать и быть способным выразить своё состояние. Это нужно роботу и для того, чтобы вовремя заметить неполадки в своём «организме». Не осознающий себя робот едва ли сможет долго просуществовать в сложной, быстро меняющейся и воздействующей на него обстановке.

3.СОЗДАНИЕ ИСКУССТВЕННОГО ИНТЕЛЛНКТА.

С конца 40-х годов ученые все большего числа университетских и промышленных исследовательских лабораторий устремились к дерзкой цели: построение компьютеров, действующих таким образом, что по результатам работы их невозможно было бы отличить от человеческого разума.

Терпеливо продвигаясь вперед в своем нелегком труде, исследователи, работающие в области искусственного интеллекта (ИИ), обнаружили, что вступили в схватку с весьма запутанными проблемами, далеко выходя­щими за пределы традиционной информатики. Оказалось, что прежде всего необходимо понять механизмы процесса обучения, природу языка и чувс­твенного восприятия. Выяснилось, что для создания машин, имитирующих работу человеческого мозга, требуется разобраться в том, как действуют миллиарды его взаимосвязанных нейронов. И тогда многие исследователи пришли к выводу, что пожалуй самая трудная проблема, стоящая перед современной наукой - познание процессов функционирования человеческого разума, а не просто имитация его работы. Что непосредственно затраги­вало фундаментальные теоретические проблемы психологической науки. В самом деле, ученым трудно даже прийти к единой точке зрения относи­тельно самого предмета их исследований - интеллекта. Здесь, как в притче о слепцах, пытавшихся описывать слона, пытается придерживаться своего заветного определения.

Области применения искусственного интеллекта

Искусственный интеллект - это область компьютерной науки ориентированой на компьютерное моделирование и понимание человеческого интеллекта.

Применение методов искусственного интеллекта:

Теория распознавания образов

Компания Simmakers предлагает следующие услуги по распознаванию образов:

  • Оптическое распознавание символов
  • Распознавание рукописного ввода
  • Распознавание лиц и автоматическое определение лица в кадре
  • Детектирование и распознавание движения

Обработка изображений

Наши услуги:

  • Поиск изображений
  • Распознавание объектов
  • Измерение параметров объекта
  • Повышение контурной резкости изображений

Интеллектуальный анализ данных (Data mining)

На сегодняшний день интеллектуальный анализ данных в основном широко используется финансовыми компаниями, а также организациями розничной торговли и маркетинга. Мы предоставляем услуги в области интеллектуального анализа данных, которые позволяют этим организациям определить взаимоотношения среди «внутренних» факторов, таких как цена, уровень квалификации персонала или позиционирование продукта, а также «внешние» факторы, такие как экономические показатели, конкуренция, и демография клиентов. Наши технологии позволяют компаниям оценить влияние на удовлетворение запросов потребителей, продажи и прибыль.

Мы предлагаем услуги по интеллектуальному анализу данных в следующих отраслях:

  • Разработка и создание хранилища данных используя преимущества интеллектуального анализа в финансовой сфере
  • Развитие торговой стратегии и исследование правил торговли с помощью генетических алгоритмов
  • Расчет рыночных и кредитных рисков
  • Средства визуализации для анализа финансовых данных

Телекоммуникационная индустрия

  • Разработка и создание хранилища данных используя преимущества интеллектуального анализа в сфере телекоммуникаций
  • Многомерный анализ телекоммуникационных данных
  • Обработка телекоммуникационных данных в маркетинговых целях
  • Обнаружение телекоммуникационного мошенничества
  • Локализация ошибок и прогнозирование неисправностей в коммуникационной сети
  • Средства визуализации для анализа телекоммуникационных данных

Сфера розничной торговли

  • Разработка и создание хранилища данных используя преимущества интеллектуального анализа в сфере розничной торговли
  • Анализ эффективности кампаний по организации и стимулированию сбыта
  • Многофакторный анализ клиентов, продуктов, продаж, региона, времени и т.д.
  • Товарные рекомендации и перекрестные ссылки на продукты
  • Средства визуализации для анализа данных в сфере розничной торговли

Почему клиенты выбирают Simmakers

Обратившись в компанию Simmakers, вы получите компетентное решение, разработанное специалистами с высокой квалификацией в области разработки систем искусственного интеллекта, интеллектуального анализа данных, программной инженерии и прикладной математики.

Задачи, выполненные ранее специалистами Simmakers:

Мы обладаем рядом преимуществ, которые позволяют нам успешно решать поставленные задачи:

  • Партнерство с NVIDIA. Являясь , мирового лидера в производстве видеокарт и графических процессоров, мы применяем последние достижения корпорации при разработке ИТ-решений в области компьютерной графики, визуализации данных и параллелизации вычислений.
  • Обширный опыт. Работая более 10 лет, специалисты нашей компании выполнили свыше 30 сложных проектов по визуализации данных и компьютерному моделированию физических и технологических процессов для различных отраслей, включая строительный инжиниринг, добычу нефти и газа, металлургию, киноиндустрию, медицину, искусство и др.
  • Экспертиза международного уровня. Сотрудники компании Simmakers – это профессионалы в области прикладной математики, информационных технологий и разработки программного обеспечения, многие из которых обладают высокими достижениями и международными наградами в предметных областях. Мы активно сотрудничаем с ведущими мировыми исследовательскими центрами, Массачусетский технологический университет , Калифорнийский университет в Лос-Анджелесе и Сколковский институт науки и технологий.
  • Индивидуальный подход. При разработке ИТ-решений мы максимально учитываем потребности и пожелания каждого заказчика. Такой подход позволяет нам наладить доверительные и взаимовыгодные отношения с клиентами, что в итоге благотворно сказывается на эффективности выполнения проектов.
    • Всё ещё остались вопросы?

Технологии

Мы применяем различные методы:

  • Перцептроны
  • Многослойные перцептроны
  • Радиально-базисные сети
  • Когнитрон, неокогнитрон
  • Нейронная сеть Хопфилда
  • Алгоритм обратного распространения ошибки
  • Алгоритм Левенберга - Марквардта
  • Алгоритм упругого распространения
  • Метод Бройдена-Флетчера-Гольдфарба-Шанно
  • Метод сопряженного градиента (CG)
  • Генетические алгоритмы
  • Эволюционное программирование
  • Эволюционная стратегия
  • Пропозициональная
  • Предикатная
  • Высшего порядка

Экспертные системы, гибридные интеллектуальные системы

  • Алгоритмы гибридизации
  • Гибридные экспертные системы
  • Гибридные нейроны и нейронные сети
  • Гибридные обучающие алгоритмы ANN

Часто задаваемые вопросы

Q: Что подразумевает под собой термин «искусственный интеллект»?

A: Искусственный интеллект (ИИ) это наука и технология создания интеллектуальных машин, особенно интеллектуальных компьютерных программ а также научное направление, разрабатывающее методы, позволяющие электронно-вычислительной машине решать интеллектуальные задачи, если они решаются человеком. Этим понятием обозначают функциональные возможности машины решать человеческие задачи.

Q: Какие основные подходы и направления к построению систем ИИ?

A: Существуют различные подходы к построению систем ИИ.

Единого ответа на вопрос, чем занимается искусственный интеллект, не существует. Анализируя историю ИИ, можно сделать вывод, что за последние пять десятилетий исследования в области ИИ в основном сосредоточены на решении конкретных проблем. Поэтому, несмотря на наличие множества подходов как к пониманию задач ИИ, так и созданию интеллектуальных информационных систем, на сегодняшний день можно выделить два основных подхода к разработке ИИ: 1) нисходящий (англ. Top-Down AI), семиотический - создание экспертных систем, баз знаний и систем логического вывода, имитирующих высокоуровневые психические процессы: мышление, рассуждение, речь, эмоции, творчество и т. д.; 2) восходящий (англ. Bottom-Up AI), биологический - изучение нейронных сетей и эволюционных вычислений, моделирующих интеллектуальное поведение на основе биологических элементов, а также создание соответствующих вычислительных систем, таких как нейрокомпьютер или биокомпьютер.

Q: Какие области применения искусственного интеллекта существуют на сегодняшний день?

A: В настоящий момент в области искусственного интеллекта наблюдается вовлечение многих предметных областей, имеющих скорее практическое отношение к ИИ, а не фундаментальное. Многие подходы были опробованы, но к возникновению искусственного разума ни одна исследовательская группа пока так и не подошла. Ниже представлены лишь некоторые примеры.

Экспертные системы

Компьютерная система, способная частично заменить специалиста-эксперта в разрешении проблемной ситуации. Такие системы рассматриваются совместно с базами знаний как модели поведения экспертов в определенной области знаний с использованием процедур логического вывода и принятия решений, а базы знаний - как совокупность фактов и правил логического вывода в выбранной предметной области деятельности. MYCIN стала ранней экспертной системой, разработанной как докторская диссертация в 1974 году, для диагностирования бактерий, вызывающих тяжелые инфекции, такие как бактериемия и менингит, а также для рекомендации необходимого количества антибиотиков в зависимости от массы тела пациента. Она была автономной системой, требующей от пользователя набора всей необходимой информации. Фактически, MYCIN никогда не использовалась на практике. Главной трудностью, с которой столкнулись во время разработки MYCIN и последующих экспертных систем, было «извлечение» знаний из опыта людей-экспертов для формирования базы правил.

Эвристическая классификация

Этим термином принято характеризовать поведение множества экспертных систем, ориентированных на выполнение таких задач, как диагноз и интерпретация данных. Хороших примером послужит консультация по принятию оплаты предлагаемой кредитной картой. В данном случае сразу станет доступна информация о владельце кредитной карты, его платежные сведения, информация о текущей покупке, а также о учреждении где она совершается (например, были ли зафиксированы случаи мошенничества с использованием банковских карточек в данном заведении).

Распознавание речи

Коммерческие программы по распознаванию речи появились в начале девяностых годов, и с того времени все большую популярность применение распознавания речи находит в различных сферах бизнеса, например, врач в поликлинике может проговаривать диагнозы, которые тут же будут внесены в электронную карточку. Наверняка каждый хоть раз в жизни мечтал с помощью голоса выключить свет или открыть окно. В последнее время в телефонных интерактивных приложениях все чаще стали использоваться системы автоматического распознавания и синтеза речи. В этом случае общение с голосовым порталом становится более естественным, так как выбор в нём может быть осуществлен не только с помощью тонового набора, но и с помощью голосовых команд. При этом системы распознавания являются независимыми от дикторов, то есть распознают голос любого человека.

Обработка естественного языка

Понимание естественного языка иногда считают AI-полной задачей, потому как распознавание живого языка требует огромных знаний системы об окружающем мире и возможности с ним взаимодействовать. Сейчас не достаточно получить лишь последовательность слов или череду предложений. Мы должны научить компьютер «понимать», а это одна из главных задач искусственного интеллекта. Качество понимания зависит от множества факторов.

Компьютерное зрение

Мир состоит из трехмерных объектов, а тот момент когда входные данные для человеческого глаза и телекамер являются двумерными. Компьютерное зрение сосредотачивается на обработке трехмерных сцен, спроектированных на одно или несколько изображений. Например, восстановлением структуры или другой информации о трехмерной сцене по одному или нескольким изображениям.

Игровой искусственный интеллект

Сегодня можно легко приобрести дорогостоящие шахматные машины или скачать программы которые могут победить многих профессиональных шахматистов. А лучшие коммерческие программы, благодаря реализации в них технологии искусственного интеллекта, уже превысили уровень людей-чемпионов. Для этого программе нужно вычислять 200 миллионов позиций каждую секунду.

На этой неделе вы могли прочитать крайне мотивирующей кейс от ученика GeekBrains , который изучил профессию , где он рассказал об одной из своих целей, которая привела в профессию - желанию познать принцип работы и научиться создавать самому игровых ботов.

А ведь действительно, именно желание создать совершенный искусственный интеллект, будь то игровая модель или мобильная программа, сподвигла на путь программиста многих из нас. Проблема в том, что за тоннами учебного материала и суровой действительностью заказчиков, это самое желание было заменено простым стремлением к саморазвитию. Для тех, кто так и не приступил к исполнению детской мечты, далее краткий путеводитель по созданию настоящего искусственного разума.

Стадия 1. Разочарование

Когда мы говорим о создании хотя бы простых ботов, глаза наполняются блеском, а в голове мелькают сотни идей, что он должен уметь делать. Однако, когда дело доходит до реализации, оказывается, что ключом к разгадке реальной модели поведения является математика. Да-да, искусственный интеллект куда сложнее написания прикладных программ - одних знаний о проектировании ПО вам не хватит.

Математика - этот тот научный плацдарм, на котором будет строиться ваше дальнейшее программирование. Без знания и понимания этой теории все задумки быстро разобьются о взаимодействие с человеком, ведь искусственный разум на самом деле не больше, чем набор формул.

Стадия 2. Принятие

Когда спесь немного сбита студенческой литературой, можно приступать к практике. Бросаться на LISP или другие пока не стоит - сначала стоит освоиться с принципами проектирования ИИ. Как для быстрого изучения, так и дальнейшего развития прекрасно подойдёт Python - это язык, чаще всего используемый в научных целях, для него вы найдете множество библиотек, которые облегчат ваш труд.

Стадия 3. Развитие

Теперь переходим непосредственно к теории ИИ. Их условно можно разделить на 3 категории:

  • Слабый ИИ – боты, которых мы видим в компьютерных играх, или простые подручные помощники, вроде Siri. Они или выполняют узкоспециализированные задачи или являются незначительным комплексом таковых, а любая непредсказуемость взаимодействия ставит их в тупик.
  • Сильный ИИ – это машины, интеллект которых сопоставим с человеческим мозгом. На сегодняшний день нет реальных представителей этого класса, но компьютеры, вроде Watson очень близки к достижению этой цели.
  • Совершенные ИИ – будущее, машинный мозг, который превзойдёт наши возможности. Именно об опасности таких разработок предупреждают Стивен Хоккинг, Элон Маск и кинофраншиза «Терминатор».

Естественно, начинать следует с самых простых ботов. Для этого вспомните старую-добрую игру «Крестики-нолики» при использовании поля 3х3 и постарайтесь выяснить для себя основные алгоритмы действий: вероятность победы при безошибочных действиях, наиболее удачные места на поле для расположения фигуры, необходимость сводить игру к ничьей и так далее.

Несколько десятков партий и анализируя собственные действия, вы наверняка сможете выделить все важные аспекты и переписать их в машинный код. Если нет, то продолжайте думать, а эта ссылка здесь полежит на всякий случай.

К слову, если вы всё-таки взялись за язык Python, то создать довольно простого бота можно, обратившись к этому подробному мануалу . Для других языков, таких как C++ или Java , вам также не составит труда найти пошаговые материалы. Почувствовав, что за созданием ИИ нет ничего сверхъестественного, вы сможете смело закрыть браузер и приступить к личным экспериментам.

Стадия 4. Азарт

Теперь, когда дело сдвинулось с мёртвой точки, вам наверняка хочется создать что-то более серьёзное. В этом вам поможет ряд следующих ресурсов:

Как вы поняли даже из названий, это API, которые позволят без лишних затрат времени создать некоторое подобие серьёзного ИИ.

Стадия 5. Работа

Теперь же, когда вы уже вполне ясно представляете, как ИИ создавать и чем при этом пользоваться, пора выводить свои знания на новый уровень. Во-первых, для этого потребуется изучение дисциплины, которое носит название «Машинное обучение ». Во-вторых, необходимо научиться работать с соответствующими библиотеками выбранного языка программирования. Для рассматриваемого нами Python это Scikit-learn, NLTK, SciPy, PyBrain и Numpy. В-третьих, в развитии никуда не обойтись от . Ну и самое главное, вы теперь сможете читать литературу о ИИ с полным пониманием дела:

  • Artificial Intelligence for Games , Ян Миллингтон;
  • Game Programming Patterns , Роберт Найсторм;
  • AI Algorithms, Data Structures, and Idioms in Prolog, Lisp, and Java , Джордж Люгер, Уильям Стбалфилд;
  • Computational Cognitive Neuroscience , Рэнделл О’Рейли, Юко Мунаката;
  • Artificial Intelligence: A Modern Approach , Стюарт Рассел, Питер Норвиг.

И да, вся или почти вся литература по данной тематике представлена на иностранном языке, поэтому если хотите заниматься созданием ИИ профессионально - необходимо подтянуть свой английский до технического уровня. Впрочем, это актуально для любой сферы программирования, не правда ли?



Загрузка...