2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу 1, 2, 3, 4, 5 ... 34  След.
 
 Искусственный интеллект с точки зрения программистов
Сообщение19.08.2006, 11:25 
Заслуженный участник


05/09/05
515
Украина, Киев
К искусственному интеллекту весьма различное отношение. Когда-то, в восьмидесятые, оно было наполнено эйфорией, казалось вот-вот и искусственный разум появится. Может ли машина мыслить, может ли она быть умнее создателя, эти вопросы задавались еще ранее создателями кибернетики и очень часто они же давали положительный ответ. Можно ли сегодня считать такие языки как Lisp и Prolog языками искусственного интеллекта, или они утратили это свойство, и оно уже в прошлом? Какие языки наиболее подходят для развития ИИ сегодня? Не секрет, что после неудач в конце восьмидесятых и девяностых отношение к ИИ резко изменилось. Нет его не перестали развивать и использовать, но само название Искусственный интеллект стало намного реже встречаться в литературе.
Хотелось бы, чтобы форумчане поделились своим мнением. Интересно не только мнение практических программистов, но и математиков (достаточно ли хорошо развита теория). Учитывая новые возможности, которые сулят квантовые компьютеры, возможно и физики смогли бы рассказать что-то интересное.

 Профиль  
                  
 
 
Сообщение19.08.2006, 21:19 


25/01/06
102
Инетерес к ИИ не угас, просто перешел из области восторженных (и часто некомпетентных) популярных публикаций в более серъезную область, о которой не так интересно писать популярно. То есть из чисто академической деятельности ИИ превратился в значительной степени в инженерную. Так и должно было произойти со сложившейся научной дисциплиной.

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

Автономная навигация.

Мирный пример - для роверов на Марсе. Такая же задача существует на земле и ею активно занимаются военные. Автономные самолеты, лодки, автомобили и т.п. – очень популярная нынче тема (см., например, Grand Challenge спонсированный DARPA). Пишут в большинстве на С(++) - для быстродействия. Про системы реального времени на Прологе я, во всяком случае, не слышал. Дело в том, что кроме принятия решений (область, где Пролог вполне хорош) требуется еще, в частности, включить распознавание сцены и синтегрироваться с системой управления. С трудом представляю как эти задачи можно решать на Лиспе или Прологе... А простой rule-based AI можно написать на любом ЯП.

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

Эта тема от глобальных моделей уже дошла до обучения отдельных рядовых перед отправкой в зону конфликта. В самом запомнившемся мне примере в модель было включено взаимодействие с мирным населением с учетом культурных особенностией. При этом общение с компьютером происходило устно, на естественном языке. Программа моделировала действия и слова местних жителей в экстремальной ситуации. Конкретно, в одном модельном примере БМП, спеша поддержать попавшее в засаду подразделение, сбила мирного пешехода. Рядом его родственники – вся деревня, и пешеходу требуется помощь. В то же время БМП срочно ждут как подкрепление. Культурные и национальные особенности были включены в модель и их понимание требовалось от обучаемого для того, чтобы успешно справиться с ситуацией. (Доклад с Game Developers Conference 2005) С моей точки зрения, такое приложение доказывает гигантский прогресс в области ИИ. Понятно, что такая система может работать только на современных компьютерах, и ничего подобного лет десять–пятнадцать назад было бы невозможно. Для упомянутой выше системы оболочка была написана то ли на С#, то ли на С++, а ядро ИИ было построено на экспертной системе. Опять таки требовалось решать массу задач типа распознавания речи, что проще делать с помощью ЯП общего назначения.

ИИ в компьютерных играх.

Он включает в себя и ИИ «низкого уровня» - навигацию и т.п. а также «поведение» т.е. ИИ более высокого уровня. Для игр почти все пишут на С и С++ с использованием скриптовых языков типа Lua или Python. То есть содержательная часть написана на скрипте, а ядро – как всегда на С(++). Там результаты достигнуты тоже довольно интересные. Поиграйте в Far Cry, например, и последите за поведением врагов. Некоторые их действия выглядят очень даже разумно и непредсказуемо.

Из широко известных приложений есть еще Data/Knowledge Mining. Там наверняка и Лисп, и Пролог находят гораздо большее применение. Но на эту тему кто-то другой, наверное, выскажется.

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

 Профиль  
                  
 
 
Сообщение19.08.2006, 23:56 
Заслуженный участник
Аватара пользователя


17/10/05
3709
:evil:
Igor Borovikov писал(а):
ИИ в компьютерных играх.

Можно дополнить?

Эта тема развивается очень активно. Со многих точек зрения. В частности, добиться естественного поведения группы животных (солдат) очень трудно. Представьте себе прохождение стада баранов через пресловутые ворота. Понятно, что по одному, но как ведут себя остальные, не прошедшие?

При псевдо-групповой игре, нужно добиться по крайней мере похожее на естественное поведение товарища по оружию.

Да и динамика персонажей требует очень нетривиального поведение. Скелет сделать легко, заставить его плясать натурально — очень трудно.

По поводу военных трудно удержаться и не процитировать старый анекдот (не ручаясь за его истинность, разумеется):
Цитата:
Mutant Marsupials Take Up Arms Against Australian Air Force

The reuse of some object-oriented code has caused tactical headaches for Australia's armed forces. As virtual reality simulators assume larger roles in helicopter combat training, programmers have gone to great lengths to increase the realism of their scenarios, including detailed landscapes, and — in the case of the Northern Territory’s Operation Phoenix — herds of kangaroos, since disturbed animals might give away a helicopter's position.

The head of the Defense Science & Technology Organization’s Land Operations/Simulation division reportedly instructed developers to model the local marsupials’ movements and reactions to helicopters. Being efficient programmers, they just re-appropriated some code originally used to model infantry detachments, changed the mapped icon from a soldier to a kangaroo, and increased the figures’ speed of movement.

Eager to demonstrate their flying skills for some visiting American pilots, the hotshot Aussies “buzzed” the virtual kangaroos in low flight during a simulation. The kangaroos scattered as predicted.

The visiting Americans nodded appreciatively, but then did a double-take as the kangaroos reappeared from behind a hill and launched a barrage of Stinger missiles at the hapless helicopter. Apparently the programmers had forgotten to remove that part of the infantry simulation.

The lesson? Objects are defined with certain attributes, and any new object defined in terms of an old one inherits all the attributes. The embarrassed programmers had learned to be careful when reusing object-oriented code, and the Americans left with a newfound respect for Australian wildlife. Simulator supervisors report that pilots from that point onward have strictly avoided kangaroos, just as they were meant to.

--> From June 15, 1999 Defense Science and Technology Organization Lecture Series, Melbourne, Australia, and staff reports

 Профиль  
                  
 
 
Сообщение20.08.2006, 06:33 


25/01/06
102
Вот ссылки дополняющие мой ответ:

Навигация: http://www.darpa.mil/grandchallenge/index.asp

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

Обучение:
https://www.cmpevents.com/GD05/a.asp?op ... essID=5132
http://vector.chisystems.com/

Там, помимо всего прочего, обсуждается также и архитектура для интерактивной системы упомянутой всвязи с обучением военнослужащих. Система построена на коммерческом игровом движке.

 Профиль  
                  
 
 
Сообщение20.08.2006, 22:25 
Заслуженный участник


15/05/05
3435
USA
В дополнение к предыдущим ответам.

Уже несколько лет существует открытый проект RoboCup, посвященный развитию ИИ и робототехники. Ежегодно проводятся соревнования по двум основным направлениям:

- RoboCup Soccer
Разработка команды роботов, способной самостоятельно играть в футбол.
Прграмма-максимум: в 2050 команда роботов должна победить чемпиона мира (среди людей :) ).
Кроме того есть категория Simulation: на специальном сервере проводятся виртуальные игры между командами агентов, разработанных в соответствии со специальным API. Игры записываются и могут быть просмотрены специальным вьюером (в последних чемпионатах добавлены *.swf - ролики). Зрелище очень забавное: Финал 2006 (891К).

- RoboCup Rescue
Цель: разработка команды роботов, способной самостоятельно организовать помощь пострадавшим в зоне стихийного бедствия. Также есть категории реальных роботов и Simulation.

 Профиль  
                  
 
 
Сообщение21.08.2006, 20:00 


25/01/06
102
Для еще большей полноты добавлю еще несколько ссылок:

http://www.red3d.com/cwr/games/ - персональная страница принадлежащая Craig Reynolds. Он один из пионеров применения AI в компьтерной графике и в играх. В частности, ему принадлежит известный подход "boids" для моделирования стайного поведения. Он же автор OpenSteer - пакета для управления автомобилями (и не только) в играх и симуляторах.

http://www.gameai.com/ai.html - владелец страницы Steven Woodcock. Он один из признанных лидеров игрового ИИ.

http://www.aiwisdom.com - страницу поддерживает Steve Rabin, редактор серии Game AI Wisdom.

http://ai-depot.com/ - масса ссылок и интересных публикаций. Владелец страницы один из ветеранов игрового ИИ.

 Профиль  
                  
 
 
Сообщение22.08.2006, 17:48 
Заслуженный участник


05/09/05
515
Украина, Киев
Спасибо участникам. Я тоже добавлю.

Насколько понимаю в робототехнике далеко до ИИ:
Forbes отобрал семёрку роботов для изменения нашей жизни

С другой стороны Япония займется интеллектуальными роботами. И в 2015 году планирует получать прибыль. По-моему это вызов - и России, и Европе, и США.

Интересно, что и Microsoft все больше обращает внимание на робототехнику. При желании, можно скачать Microsoft Robotics Studio. Вероятно, это больше походит на игрушку, но думаю, что все на полном серьезе. Там же (http://channel9.msdn.com/ShowPost.aspx?PostID=206574)можно взять wmv-файл (ок. 200 Mb), где парни из Microsoft рассказываю и показывают, что они умеют делать, плюс разные штучки, ездящие по полу и экрану дисплея.

Я бы хотел обратить внимание участников, что за последнии год-два в MSDN Journal, появилось много статей рассказывающих об ИИ и обычно в контексте Microsoft .NET. Приведу ссылки:

Create A Simple Mutation Testing System With The .NET Framework

Write Mobile Agents In .NET To Roam And Interact On Your Network

Exploring New Speech Recognition And Synthesis APIs In Windows Vista

Use the .NET Framework to Generate and Execute Custom Controls at Run Time

Fuzzy Lookups and Groupings Provide Powerful Data Cleansing Capabilities

Dodge Common Performance Pitfalls to Craft Speedy Applications

Give Your .NET App Brains and Brawn with the Intelligence of Neural Networks

How .NET and C# Drove an Entry in the DARPA Grand Challenge

Survival of the Fittest: Natural Selection with Windows Forms

Думаю, что ИИ считается перспекивным направлением в Microsoft.

 Профиль  
                  
 
 
Сообщение30.08.2006, 04:48 
Заслуженный участник
Аватара пользователя


16/03/06
405
Moscow
Igor Borovikov писал(а):
Мирный пример - для роверов на Марсе.

Этот пример показывает всю ничтожность достигнутых результатов: роверы, вынужденные ехать со скоростью метр в час, чтобы, не дай Бог не застрять, постоянно нуждающиеся в командах и перепрограммировании с Земли.

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

Что-то не верится. Скорее всего, это было что-то типа Half-Life.

 Профиль  
                  
 
 
Сообщение31.08.2006, 20:05 


25/01/06
102
Вот еще одна ссылка с кучей линков:

http://www.aaai.org/home.html (К сожалению, членство в Обществе платное)

 Профиль  
                  
 
 Re: Искусственный интеллект с точки зрения программистов
Сообщение11.09.2006, 22:43 
Аватара пользователя


09/05/06
111
Macavity писал(а):
... Интересно не только мнение практических программистов, но и математиков (достаточно ли хорошо развита теория). Учитывая новые возможности, которые сулят квантовые компьютеры, возможно и физики смогли бы рассказать что-то интересное.


Если Вас так интересует мнение физика, то недавно вышедшая книга довольно подробно уводит читателя в дебри понимания разума. Ищите Роджера Пенроуза "Тени Разума. В поисках науки о сознании", эта книга вроде как продолжение его предыдущей книги "Новый ум короля". Это научно-популярная книга, но довольна трудна для понимания. Там много чего с научной точки зрения рассматривается. В общем и целом, как я понял, "мыслить" текущие машины Тьюринга никогда не будут, что следует из теоремы Гёделя. "Искуственный разум" должен обладать некоторыми специафическими возможностями, которые современными алгоритмами просто невозможно реализовать. Фишка как всегда запрятана глубоко. Потому автор погружается в самые дебри устройства мозгов, вплоть до уровня, где возможны квантовые эффекты.
Вообще же довольно интересная книга. Рассматривает разные стороны разума и искусственного интеллекта. В общем, читайте.

С уважением, Вячеслав.

 Профиль  
                  
 
 
Сообщение12.09.2006, 04:19 


25/01/06
102
Спасибо uni за интересную ссылку! Заодно это напомнило о том, что ИИ на самом деле подразделяют на "слабый" - это в основном то, что уже было обсуждено в предыдущих постах, и "сильный", который занят более фундаментальной проблемой, сводящейся в двух словах к вопросу "может ли машины мыслить?".

 Профиль  
                  
 
 
Сообщение12.09.2006, 09:00 
Аватара пользователя


09/05/06
111
Вообще в новых книгах по ИИ есть такое понятие как "агент" или интеллектуальный агент, уже точно не помню. Это объект в виде програмы/алгоритма, который выполняет наперёд заданные функции. Этот интеллектуальный агент и считается ИИ тогда, когда выполняет поставленные перед ним задачи. До разума далеко, потому ограничились на текущих задачах из областей прогнозирования, компьютерных игр, экспертных систем и т.д.

 Профиль  
                  
 
 
Сообщение13.09.2006, 17:59 


12/09/06
617
Черноморск
Пенроуз с помощью теоремы Геделя доказал, что процесс мышления не алгоритмизуем, т.е. не является машиной Тьюринга. Но это очевидно и без теоремы Геделя. При решении задач в процессе мышления происходят случайные процессы.Например, метод случайного тыка. Случайный выбор, короче. Машина же Тьюринга никаких случайностей не предполагает.

 Профиль  
                  
 
 
Сообщение13.09.2006, 18:17 
Заслуженный участник
Аватара пользователя


17/10/05
3709
:evil:
Я постараюсь найти и почитать Пенроуза, но пока несколько подозрительно отношусь к подобным доказательствам. Чем-то оно смахивает на то, что майский жук не может летать.

Немного на другой волне: я как-то встретил любопытную статью о британской (по-моему) лабаратории, занимающейся ИИ и (по мнению авторов статьи) чявляющейся ведущей в области ИИ для игр, кино, да и не только их. Ключевым моментом (и, по-моему, патентованным) было введение шума в цепи передачи между нейронами. Зато их результаты впечатляли. (Пара имен: Stephen Thaler, Robert Kozma)

Вот и детерминированность ослабла. Вместе с доказательством.

 Профиль  
                  
 
 
Сообщение13.09.2006, 18:46 


25/01/06
102
Цитата:
Машина же Тьюринга никаких случайностей не предполагает


Существует класс недетерминированных машин Тьюринга. Однако же, как легко доказывается в элементарных пособиях, он эквивалентен детерминированным машинам.

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

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

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 501 ]  На страницу 1, 2, 3, 4, 5 ... 34  След.

Модераторы: Toucan, maxal, PAV, Karan, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group