Россия, Ижевск, Ижевский государственный технический университет имени А.Т. Калашникова, 2011 |
ИТ управления на базе распределенных систем, мобильных и облачных технологий
ИТ на базе концепции искусственного интеллекта
Глобализация и интернационализация экономики, всё ускоряющаяся динамика бизнеса, жесткая конкуренция и борьба за сырьевые ресурсы всё чаще стали приводить к ситуациям, когда в условиях дефицита времени необходимо принять единственно верное деловое решение. Для этого руководителю нужно в сжатые сроки в условиях большой неопределенности проанализировать ситуацию, сформировать варианты решений (Decision Tree), оценить риски и взять на себя ответственность за принятие и реализацию решения.
Сделать всё это с использованием только "ручных" средств или модулей поддержки принятия решения (Decision Support System), встроенных в стандартные ERP-системы, было достаточно сложно, и вследствие этого риск принять неверное решение, был велик. В связи с этим стали развиваться формализованные методы принятия решения в условиях неопределенности, описываемые нечеткой логикой, и создаваться специализированные информационные системы с использованием теории и методов искусственного интеллекта.
В чем различие, между "четкой" (Crisp Logic) и "нечеткой" (Fuzzy Logic) логикой"? В четкой логике ожидаемое следствие всегда однозначно следует заявленной посылке, если заданы четкие правила выполнения условия — например, "если А, то Б", или, "если А и Б, то В". Когда логика нечеткая, границы выполнения условия не определены или определены нечётко: "если А, то в промежутке времени Б может быть много больше В, а может быть почти равно В" — всё зависит от начальных и текущих условий, которые могут быстро измениться даже внутри зафиксированного промежутка времени .
Алгоритмы для анализа таких ситуаций реализуют, как правило, сценарные варианты развития ситуации с оценкой риска каждого варианта. Соответственно, информационная система в таком случае, помимо стандартных функций сбора, хранения и передачи данных, должна содержать модули, реализующие обработку и многовариантный анализ информации. Поскольку развитие бизнес-ситуации может определяться несколькими параметрами, и модели, описывающие такие ситуации, редко бывают линейными, то реальная задача чаще всего сводится к задачам многофакторного оценивания и нелинейной оптимизации.
В связи с этим, аналитические модули информационных систем поддержки принятия решения (Decision Support System — DSS), экспертных систем (Expert Information System — EIS), систем поддержки исполнения решения (Executive Support System — ESS), диагностических систем (Diagnostic Information System — DIS), систем распознавания изображений (Image Recognition System — IRS), а также поисковых систем (Searching System) обычно строятся с использованием принципов, называемых "принципами искусственного интеллекта".
Искусственный интеллект (Artificial Intelligence) можно определить, как "совокупность теоретических методов и физических вычислительных устройств, задача которых состоит в воссоздание разумных рассуждений и действий, имеющих целью достижение ожидаемого или нового результата".
В настоящее время в области исследования искусственного интеллекта сложились два основных направления:
- семиотическое (символьное) — моделирование высокоуровневых процессов мышления человека, основанное на представлении знаковых систем и использовании знаний;
- нейрокибернетическое (нейросетевое) — моделировании отдельных низкоуровневых структур мозга (нейронов) и алгоритмов их работы.
Отсюда следует, что научный аспект проблемы искусственного интеллекта касается попыток объяснения его работы и исследует возможность построения общих алгоритмов его функционирования. Прикладной аспект ИИ включает компьютерное решение разнообразных задач, не имеющих явного алгоритмического решения, или многовариантных задач типа "А что если…", то есть задачи с нечеткими целями и нечеткой логикой. При этом используются "человеческие" способы решения таких задач, то есть имитирование ситуации, когда такую задачу решает человек [Искусственный интеллект. — http://www.transhumanism-russia.ru/content/view/16/138/].
В 50-х годах ХХ века появились работы Винера, Ньюэлла, Саймана и Шоу, исследовавших суть процессов решения различных задач. Результатами явились алгоритмы и компьютерные программы "Логик-теоретик", предназначенная для доказательства теорем в исчислении высказываний, и "Общий решатель задач". Эти работы положили начало первому этапу исследований в области искусственного интеллекта, связанному с разработкой алгоритмов и программ для решения задач на основе применения разнообразных эвристических методов. В отличие от алгоритмических методов, позволяющих проводить формальную верификацию правильности, эвристические методы решения задачи рассматриваются как свойственные человеческому мышлению вообще, для которого характерно возникновение интуитивных догадок о пути решения задачи.
Таким образом, общей задачей использования искусственного интеллекта является построение компьютерной интеллектуальной системы, которая обладала бы уровнем эффективности решений неформализованных задач, сравнимым с человеческим или превосходящим его. На рис. 3.1 показана функциональная структура такой системы [Морозов М. Н. — http://www.marstu.mari.ru:8101/ mmlab/home/AI/index.html].
В качестве высокоуровневого критерия интеллектуальности систем, разрабатываемых на основе технологии искуственного интеллекта, предложен мысленный эксперимент, известный как "тест Тьюринга", предложенный Аланом Тьюрингом в 1950 г. в статье "Вычислительные машины и разум" (Computing machinery and intelligence) для проверки, является ли компьютер "разумным" в человеческом смысле слова.
Области применения методов искусственного интеллекта чрезвычайно широки [Рассел С., Норвиг П., 2007]:
- доказательства неформальных теорем и решение задач с нечеткой логикой;
- теория игр, исследование игровых ситуаций и возможности синтеза решений (теория и практика компьютерных шахмат);
- распознавание образов (символов, текстов, речи, изображений и т. д.) с целью поиска, обработки и адаптации;
- адаптивное программирование;
- имитация творческой деятельности — сочинение литературных текстов, стихов, музыки;
- обработка и трансформация данных на естественных языках, машинный перевод;
- машинное зрение, построение виртуальной реальности;
- обучающие и обучающиеся системы на базе нейросетей;
- управляющие системы и робототехника (автомобилестроение, авиация, космонавтика, человекоподобные многофункциональные роботы и многое другое);
- построение специализированных информационных систем для поддержки принятия решений в бизнесе.
Класс технологий и систем, созданных на базе таких принципов и предназначенных для поддержки принятия делового решения в условиях развивающейся неопределенности, стал широко применяться в бизнесе и получил название "системы интеллектуального анализа данных" (Business Intelligence — BI).
Впервые термин "Business Intelligence" был введен в обращение аналитиками Gartner в конце 1980-х годов, как "пользователецентрический процесс, который включает доступ к информации и её исследование, анализ, выработку интуиции и понимания, которые ведут к улучшенному и неформальному принятию решений". Позже, в 1996 году появилось уточнение — это инструменты для анализа данных, построения отчетов и запросов, которые могут помочь бизнес-пользователям преодолеть сложности с обработкой, интерпретацией и представлением данных для того, чтобы синтезировать из них значимую информацию. Эти инструменты в совокупности попадают в категорию, называемую "инструменты бизнес-интеллекта" (Business Intelligence Toolware) [Артемьев В., 2003].
Сегодня категории BI-продуктов включают: BI-инструменты и BI-приложения. BI-инструменты можно разделить на следующие виды:
- генераторы запросов и отчетов (Query/Report Generator — QRG);
- развитые BI-инструменты — прежде всего, инструменты оперативной аналитической обработки данных (Online Analytical Processing — OLAP);
- корпоративные BI-наборы (Enterprise BI Suites — EBIS) различной конфигурации, встраиваемые в ERP-системы;
- BI-платформы.
Многомерные OLAP-серверы, а также реляционные OLAP-механизмы являются BI-инструментами и инфраструктурой для BI-платформ, на базе которых разрабатываются разнообразные приложения с "заказными" пользовательскими интерфейсами. Указанные инструменты применяются для доступа к данным, их многомерного и многофакторного анализа и генерации отчетов по данным, которые чаще всего располагаются в различных витринах (оперативных складах), базах или хранилищах данных. В качестве примера BI-приложения можно указать информационную систему (подсистему) поддержки деятельности руководителя (Executive Support System — ESS).
BI-приложения обычно ориентированы на конкретные важные функции организации, такие как анализ тенденций рынка, анализ рисков, анализ и прогноз продаж, планирование бюджета и т.п. Они могут применяться и более широко — для построения систем сбалансированных показателей (Balanced Scorecard System) или для управления эффективностью предприятия в целом (Enterprise Perfomance Management). На рис. 3.2 показан пример общей корпоративной архитектуры BI-архитектуры.
Методы и системы интеллектуального анализа данных, построенные на базе нейронных самообучающихся сетей, находят разнообразное применение при создании современных информационных систем. Это большой класс систем, архитектура которых имеет некоторую аналогию с построением нервной ткани из нейронов. В одной из наиболее распространенных архитектур — многослойном персептроне с обратным распространением ошибки — имитируется работа нейронов в составе иерархической сети, где каждый нейрон более высокого уровня соединен своими входами с выходами нейронов нижележащего слоя.
На нейроны самого нижнего слоя подаются значения входных параметров, на основе которых нужно принимать какие-то решения, прогнозировать развитие ситуации и т. д. Эти значения рассматриваются как сигналы, передающиеся в следующий слой, ослабляясь или усиливаясь в зависимости от числовых значений (весов), приписываемых межнейронным связям. В результате на выходе нейрона самого верхнего слоя вырабатывается некоторое значение, которое рассматривается как ответ — реакция всей сети на введенные значения входных параметров.