GRID — продукты и технологии Sun
Нет одинаковых GRID-сетей, нет продуктов, которые подходили бы для всех задач. Sun Microsystems различает три основных категории GRID-сетей.
q Cluster GRID — относительно простая вычислительная сеть, предоставляющая ресурсы пользователям одной рабочей группы, одного департамента, одного проекта.
q Campus (Enterprise) GRID — вычислительная сеть корпоративного уровня, охватывающая несколько групп, работающих над различными проектами. В таких сетях должны быть в той или иной мере реализованы политики разделения ресурсов, правила "обмена" ресурсами и, возможно, правила взаиморасчетов.
q Global GRID — сеть, в которой участвуют несколько независимых организаций, предоставляющих друг другу свои ресурсы. Эти организации установили определенные правила обмена ресурсами, определенные протоколы взаимодействия. На сегодняшний день, пожалуй, только академические организации принимают участие в таких сетях; обмен вычислительными ресурсами между коммерческими компаниями пока еще осложнен нерешенными организационными вопросами.
Продукты Sun Microsystems предназначены в основном для корпоративных GRID-сетей категорий Cluster GRID и Campus GRID.
q Sun GRID Engine. Этот продукт предназначен для сетей класса Cluster GRID и доступен бесплатно. Пакет позволяет объединить несколько серверов или рабочих станций в единый вычислительный ресурс, который может быть использован как для пакетных задач, так и для высокопроизводительных пакетных вычислений. Администратор вычислительной сети может получать данные мониторинга и статистики, и на их основе оптимизировать уровень использования ресурсов. Административный интерфейс позволяет задавать различные параметры вычислительных задач, такие, как приоритеты, требуемые ресурсы оборудования, лицензии на программное обеспечение, временное окно выполнения, права пользователей на доступ к тем или иным ресурсам.
q Sun GRID Engine Enterprise Edition. Обычный путь развития вычислительных сетей в организации можно представить себе примерно так. Вначале небольшая группа пользователей, занятых научными или инженерными расчетами, решает объединить свои ресурсы на основе простых правил и договоренностей. Это можно легко сделать на основе свободно распространяемого программного обеспечения. Таких групп становится больше, и у них возникает вполне законное желание обмениваться ресурсами, заполняя простаивающие вычислительные мощности. Здесь уже простыми договоренностями обойтись трудно, необходимо внедрять какие-то технические средства учета и «взаиморасчетов».
Ответом на эти потребности является пакет Sun GRID Engine Enterprise Edition. Этот программный пакет позволяет задавать политику использования ресурсов и взаимодействия нескольких рабочих групп. Пакет поддерживает четыре типа политики:
· Политика разделяемых ресурсов (share based policy). Администратор вычислительного комплекса задает уровень ресурсов, доступных каждому пользователю (или рабочей группе) в процентах от общего их количества. Политика имеет некоторый запас гибкости, который допускает некоторый временный перерасход ресурсов для каждого пользователя, но при этом требует компенсировать этот перерасход впоследствии, "вернув" ресурсы в общее пользование в течение определенного времени. Если же пользователь недобирал ресурсов в течение какого-то времени, то ему "причитается" это количество вычислительной мощности, которое он может использовать в дальнейшей работе.
· Функциональная политика (functional policy). Эта политика аналогична политике разделяемых ресурсов, за тем исключением, что компенсация ресурсов за недоиспользование или переиспользование не производится.
· Политика "работа к сроку" (deadline policy). Бывают ситуации, когда одной из групп требуется завершить какую-то вычислительную работу к определенному сроку. Тогда администратор вычислительной сети может кратковременно выделить все имеющиеся ресурсы этой группе для завершения работы в срок. Действие такой политики прекращается немедленно после наступления заданной даты или по завершению выполнения задачи.
· Политика явного выделения ресурсов (override policy). Наконец, когда ситуация становится критической, администратор может перевести систему "на ручное управление", в явном виде выделяя то или иное количество ресурсов отдельным пользователям или рабочим группам.
Наличие политик несколько изменяет обычный алгоритм отправки задания на выполнение: теперь диспетчер заданий руководствуется не только наличием свободных ресурсов, но и тем, имеет ли данный пользователь соответствующие права.
На сегодняшний день GRID — это новая технология, которая может работать как в Internet, так и без него, то есть на сетях передачи данных, где не работают протоколы Internet.
Архитектура GRID — первое действительно революционное новшество в ИТ-индустрии за последние 40 лет с момента создания ЭВМ серии IBM 360.
Искусственный интеллект
Под искусственным интеллектом понимается способность кибернетических устройств, систем и программ моделировать некоторые стороны интеллектуальной деятельности человека.
В настоящее время существует множество примеров систем, обладающих в той или иной степени искусственным интеллектом.
Можно выделить следующие направления систем искусственного интеллекта.
q Машинный перевод:
· морфологический анализ (анализ слов в тексте);
· синтаксический анализ; (анализ предложений, грамматики и связи между словами);
· семантический анализ(анализ смысла предложения на основе некоторой предметно-ориентированной базы знаний);
· прагматический анализ(анализ смысла предложений в окружающем контексте).
q Синтез речи.
q Распознавание образов.
Это, в частности, проблема распознавания трехмерных изображений и, в частности, лиц.
q Экспертные системы.
q Анализ речи.
Сейчас эта проблема разрешена на уровне четких команд и инструкций.
q Игры и творчество.
Сюда относятся, например, программы игры в шахматы. Особое удивление вызывают анимационные фильмы на основе фрактальной графики, по качеству сопоставимые с игровыми фильмами.
q Интеллектуальные работы:
· работы с жесткой схемой управления (программные манипуляторы);
· адаптивные роботы с сенсорными устройствами (есть образцы таких роботов);
· самоорганизующиеся или интеллектуальные роботы (самая большая проблема здесь — это проблема интеллектуального машинного зрения).
Системы искусственного интеллекта развиваются по двум направлениям: это традиционные последовательные алгоритмы и системы с высоко параллельными структурами.
В связи с ограниченным быстродействием (даже теоретически) ЭВМ наиболее перспективным направлением в области получения впечатляющего искусственного интеллекта является развитие высоко параллельных систем.
Одним из таких направлений являются нейросети.
Загадка человеческого мозга
Умножить в уме два многозначных числа или запомнить несколько телефонных номеров для человека очень трудно. С другой стороны, понять смысл предложения (несмотря на грамматические ошибки), уловить, где оканчивается по смыслу определенный кусок информации, или узнать человека, с которым не встречался 20 лет, для нас — это не проблема.
Компьютер же в большинстве случаев подобные задачи выполнить не может. Там, где речь идет о распознавании оптических или акустических образов, способности самостоятельного обучения, воспоминания по ассоциации, даже самые современные компьютеры не могут составить конкуренцию мозгу человека.
Обработка информации и знаний в мозге является параллельным процессом. Мозг предстает перед нами как огромная сеть взаимосвязанных клеток — нейронов. Место сосредоточения запоминаемой информации и знаний, равно как и место и способ их обработки, пока неизвестны. Известно лишь, что элементы мозга работают в миллион раз медленнее, чем микроэлектронные чипы
Мозг — высоко параллельная, многопроцессорная система. Если на каждом соединении реализуется за секунду только одна переключательная операция, то весь мозг теоретически сможет выполнить 10 биллионов операций за это же время. Время переключения нейрона определяется миллисекундами. Вопреки этому сложные лингвистические и распознавательные задачи мозг решает за секунду, т. е. за несколько шагов вычислений. Компьютер же растягивает решение таких задач на миллионы шагов.
Другим ограничением мозга является то, что нейрон может послать другому нейрону только несколько битов информации. Объем информации ограничен, нейроны не имеют возможности обмениваться сложными символами.
Выходит, что наши знания зависят от множества соединений между нейронами. Благодаря им мы понимаем родной язык, правильно планируем свое поведение, подытоживаем факт и распознаем образы. Мозг и компьютер действуют разным способом. Парадоксом является то, что для моделирования мозга в реальном масштабе времени требуются тысячи мощнейших суперЭВМ, а с другой стороны, для моделирования арифметических вычислений в суперЭВМ были бы необходимы миллиарды людей.
Временной цикл базовой операции, выполняемой нейроном, 1-2 мс, такт нынешних компьютеров определяется Наносекундами, т. е. вычислительная машина работает на шесть порядков быстрее. Вопреки этому человек решает многие задачи распознавания, как, например, анализ сцены или логические выводы, секунды, а высокопроизводительная ЭВМ тратит на это несколько минут.
Когда мозг рассуждает сознательно, шаг за шагом, этот тип мышления можно формализовать с помощью математической логики и затем моделировать на компьютере. Но подсознательное мышление, которое используется главным образом в творческой деятельности, является высоко параллельным математически неформализованным средством.
До настоящего момента работу головного мозга человека воспроизвести не удалось, но исследования в этой области продолжаются. И вполне возможно, что робот с аналогичными человеку интеллектуальными возможностями будет создан.
Нейросети и нейрокомпьютеры
Нейрокомпьютер создается по аналогии со структурой обработки информации в головном мозге.
В головном мозге содержится более 100 млрд. нейронов, каждый из которых имеет в среднем 10000 связей. Особенность системы головного мозга в том, что она обладает очень высоким параллелизмом. Из-за высокого параллелизма мозг человека является очень надежной системой.
Несмотря на впечатляющие достижения в области исследований головного мозга, теории и практики нейросетей, пока еще не слишком понятно, как мозгу удается получить столь впечатляющее сочетание быстродействия и надежности.
Сейчас нейросети и нейрокомпьютеры — это одно из направлений при создании систем искусственного интеллекта. Речь идет не о конкретных прикладных задачах, которые во множестве решаются на нейросетях (эти примеры применения будут приведены ниже), а о создании искусственного интеллекта подобного человеческому мозгу. Современные нейросети по своей мощности пока еще достаточно скромны — они достигли только уровня нервной системы улитки или дождевого червя. Однако, даже простейшие нейрочипы, содержащие по 64 нейрона с 128 входами каждый, гораздо быстрее решают задачи распознавания электронных изображений, чем традиционные процессоры с миллионами транзисторов.
Перечень (приблизительный) задач, которые успешно решаются на основе нейронных сетей:
q Банки и страховые компании:
· автоматическое считывание чеков и финансовых документов;
· проверка достоверности подписей;
· оценка риска займов.
q Административное обслуживание:
· автоматическое считывание документов;
· автоматическое распознавание штриховых кодов.
q Нефтяная промышленность:
· разведка залежей по данным аэрофотосъемок.
q Военная промышленность:
· обработка радарных сигналов;
· обработка инфракрасных сигналов;
· автоматическое пилотирование.
q Промышленное производство:
· адаптивная робототехника;
· управление голосом.
q Служба безопасности:
· распознавание лиц, голосов, отпечатков пальцев.
q Биомедицинская промышленность:
· анализ рентгенограмм;
· обнаружение отклонений в ЭКГ.
q Телевидение:
· сжатие и восстановление изображений.