Разработка экспертной системы подбора товаров в интернет-магазине

Обобщенная структура и принципы функционирования экспертных систем. Выбор модели представления знаний. Разработка логического блока программы и графического пользовательского интерфейса. Текст программы и экспериментальная оценка результатов работы.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 06.03.2013
Размер файла 2,4 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Аннотация

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

Рассматриваются основные этапы проектирования экспертной системы, включая: Анализ инструментальных средств построения экспертных систем, анализ предметной области, выбор модели представления знаний, разработка логического модуля, разработка пользовательского интерфейса. При создании экспертной системы особое внимание было уделено вопросам реализации механизма подбора товара, удобному, интуитивно понятному графическому интерфейсу и легкой интеграции с сайтом интернет-магазина.

Также приводятся рекомендации по внедрению экспертной системы, отражающие область применения и оценку эффективности её использования.

Содержание

  • 1. Специальная часть
    • 1.1 Исследовательский раздел
      • 1.1.1 Обобщенная структура и принципы функционирования экспертных систем
        • 1.1.2 Анализ и обзор существующих методов построения ЭС и готовых решений
        • 1.1.3 Анализ инструментальных средств построения ЭС
        • 1.1.4 Постановка задачи
    • 1.2 Построение экспертной системы
      • 1.2.1 Анализ предметной области
        • 1.2.2 Выбор модели представления знаний
        • 1.2.3 Разработка логического блока программы
        • 1.2.4 Разработка графического пользовательского интерфейса
        • 1.2.5 Текст программы
    • 1.3 Экспериментальная оценка результатов работы
      • 1.3.1 Рекомендации по использованию ЭС
        • 1.3.2 Оценка эффективности использования ЭС
        • 1.3.3 Руководство оператора
    • 1.4 Выводы
  • 2. Экологическая часть и безопасность жизнедеятельности
    • 2.1 Исследование опасных и вредных факторов при эксплуатации ЭВМ
    • 2.2 Воздействие опасных и вредных факторов на организм пользователя ЭВМ
    • 2.3 Способы защиты пользователей от опасных и вредных факторов
    • 2.4 Эргономические требования при организации рабочих мест
    • 2.5 Выводы
  • Список литературы
  • 1. Специальная часть

История развития искусственного интеллекта

Идея создания искусственного подобия человеческого разума для решения сложных задач моделирования мыслительной способности витала в воздухе с древнейших времен. Впервые ее выразил Р.Луллий (ок.1235- ок.1315), который еще в XIV в. пытался создать машину для решения различных задач на основе всеобщей классификации понятий. В XVIII в. Г.Лейбниц (1646 - 1716) и Р.Декарт (1596- 1650) независимо друг от друга развили эту идею, предложив универсальные языки классификации всех наук. Эти идеи легли в основу теоретических разработок в области создания искусственного интеллекта. Развитие искусственного интеллекта как научного направления стало возможным только после создания ЭВМ. Это произошло в 40-х гг. XX в. В это же время И.Винер (1894- 1964) создал свои основополагающие работы по новой науке - кибернетике. Термин искусственный интеллект (artificial intelligence) предложен в 1956 г. на семинаре с аналогичным названием в Станфордском университете (США).

В 1954 г. в МГУ под руководством профессора А.А.Ляпунова (1911 - 1973) начал свою работу семинар "Автоматы и мышление". В этом семинаре принимали участие крупнейшие физиологи, лингвисты, психологи, математики. Принято считать, что именно в это время родился искусственный интеллект в России. Как и за рубежом, выделились направления нейрокибернетики и кибернетики "черного ящика". Среди наиболее значимых результатов, полученных отечественными учеными, следует отметить алгоритм "Кора" М.Бонгарда, моделирующий деятельность человеческого мозга при распознавании образов (60-е гг.).

В 1945- 1964 гг. создаются отдельные программы и исследуется поиск решения логических задач. В Ленинграде (ЛОМИ - Ленинградское отделение математического института им. В.А.Стеклова) создается программа, автоматически доказывающая теоремы (АЛИЕВ ЛОМИ). Она основана на оригинальном обратном выводе С.Ю.Маслова, аналогичном методу резолюций Робинсона.

В 1965- 1980 гг. получает развитие новая наука - ситуационное управление (соответствует представлению знаний в западной терминологии). Основоположник этой научной школы - профессор Д.А.Поспелов. Разработаны специальные модели представления ситуаций - представления знаний.

В 1980- 1990 гг. проводятся активные исследования в области представления знаний, разрабатываются языки представления знаний (экспертные системы). В Московском государственном университете создается язык РЕФАЛ.

В 1988 г. создается АИИ - Ассоциация искусственного интеллекта. Ее членами являются более 300 исследователей. Президент Ассоциации - Д.А.Поспелов. Крупнейшие центры - в Москве, Петербурге, Переславле-Залесском, Новосибирске.

В рамках Ассоциации проводится большое количество исследований, собираются конференции, издается журнал. Уровень теоретических исследований по искусственному интеллекту в России ничуть не ниже мирового. К сожалению, начиная с 1975 г- на развитии этого направления сказалось прогрессирующее отставание в технологии. На данный момент отставание в области промышленных интеллектуальных систем составляет порядка 5-7 лет.

Самостоятельное направление ИИ - Экспертные Системы (ЭС)

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

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

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

Исследователи в области ЭС для названия своей дисциплины часто используют также термин "инженерия знаний", введенный Е.Фейгенбаумом как "привнесение принципов и инструментария исследований из области искусственного интеллекта в решение трудных прикладных проблем, требующих знаний экспертов".

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

- технология экспертных систем существенно расширяет круг практически значимых задач, решаемых на компьютерах, решение которых приносит значительный экономический эффект;

- технология ЭС является важнейшим средством в решении глобальных проблем традиционного программирования: длительность и, следовательно, высокая стоимость разработки сложных приложений;

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

- объединение технологии ЭС с технологией традиционного программирования добавляет новые качества к программным продуктам за счет: обеспечения динамичной модификации приложений пользователем, а не программистом; большей "прозрачности" приложения; лучшей графики; интерфейса и взаимодействия.

По мнению ведущих специалистов, в недалекой перспективе ЭС найдут следующее применение:

- ЭС будут играть ведущую роль во всех фазах проектирования, разработки, производства, распределения, продажи, поддержки и оказания услуг;

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

Экспертные системы применяются для решения только трудных практических задач. По качеству и эффективности решения экспертные системы не уступают решениям эксперта-человека. Решения экспертных систем обладают "прозрачностью", т.е. могут быть объяснены пользователю на качественном уровне. Это качество экспертных систем обеспечивается их способностью рассуждать о своих знаниях и умозаключениях.

Знания можно подразделить на формализованные (универсальные знания - законы, модели, алгоритмы) и на неформализованные (эмпирические, опыт, умение, интуиция).

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

- алгоритмическое решение задачи неизвестно;

- задача не может быть определена в числовой форме;

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

Как правило, такие задачи обладают неполнотой, ошибочностью, неоднозначностью и противоречивостью.

ЭС предназначены для неформализованных задач, т.е. ЭС не отвергают и не заменяют традиционного подхода к разработке программ, ориентированного на решение формализованных задач.

Неформализованные задачи обычно обладают следующими особенностями:

- ошибочностью, неоднозначностью, неполнотой и противоречивостью исходных данных;

- ошибочностью, неоднозначностью, неполнотой и противоречивостью знаний о проблемной области и решаемой задаче;

- большой размерностью пространства решения, т.е. перебор при поиске решения весьма велик;

- динамически изменяющимися данными и знаниями.

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

Экспертная система обладает следующими свойствами:

- алгоритм решения задачи генерируется динамически экспертными системами;

- способность анализа и объяснения хода решения задачи и полученных результатов;

- способность приобретения новых знаний и изменения в соответствии с ними своего поведения;

- обеспечение, как правило, естественного языка интерфейса с пользователем

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

Коммерческий успех ЭС

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

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

Коммерческие успехи к фирмам-разработчикам систем искусственного интеллекта (СИИ) пришли не сразу. На протяжении 1960 - 1985 гг. успехи ИИ касались в основном исследовательских разработок, которые демонстрировали пригодность СИИ для практического использования. Начиная примерно с 1985 г. (в массовом масштабе с 1988 - 1990 гг.), в первую очередь ЭС, а в последние годы системы, воспринимающие естественный язык (ЕЯ-системы), и нейронные сети (НС) стали активно использоваться в коммерческих приложениях.

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

Причины, приведшие СИИ к коммерческому успеху, следующие:

Интегрированность. Разработаны инструментальные средства искусственного интеллекта (ИС ИИ), легко интегрирующиеся с другими информационными технологиями и средствами (с CASE, СУБД, контроллерами, концентраторами данных и т.п.).

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

Использование языков традиционного программирования и рабочих станций. Переход от ИС ИИ, реализованных на языках ИИ (Lisp, Prolog и т.п.), к ИС ИИ, реализованным на языках традиционного программирования (С, C++ и т.п.), упростил обеспечение интегрированности, снизил требования приложений ИИ к быстродействию ЭВМ и объемам оперативной памяти. Использование рабочих станций (вместо ПК) резко увеличило круг приложений, которые могут быть выполнены на ЭВМ с использованием ИС ИИ. Архитектура клиент-сервер. Разработаны ИС ИИ, поддерживающие распределенные вычисления по архитектуре клиент-сервер, что позволило снизить стоимость оборудования, используемого в приложениях, децентрализовать приложения, повысить надежность и общую производительность (так как сокращается количество информации, пересылаемой между ЭВМ, и каждый модуль приложения выполняется на адекватном ему оборудовании). Проблемно/предметно-ориентированные ИС ИИ. Переход от разработок ИС ИИ общего назначения (хотя они не утратили свое значение как средство для создания ориентированных ИС) к проблемно/предметно-ориентированным ИС ИИ обеспечивает: сокращение сроков разработки приложений; увеличение эффективности использования ИС; упрощение и ускорение работы эксперта; повторную используемость информационного и программного обеспечения (объекты, классы, правила, процедуры).

Перспективы ЭС

Все существующие ЭС ориентированы на решение определенного круга задач в узкой предметной области и не могут быть применены для решения близких, но не предусмотренных при их создании, проблем. Даже для задач, входящих в "компетенцию" ЭС, точный анализ ситуации (диагноз) и нахождение оптимального решения возможны только в случае, если аналогичная ситуация была предусмотрена при ее создании. Попытка уточнить структуру БЗ в процессе эксплуатации или расширить круг решаемых проблем часто приводят к изменению "логического строя" и, как следствие, к необходимости переработки всего программного комплекса. В настоящее время проводятся исследования, которые должны привести к разработке универсальной экспертной системы (УЭС), но предлагаемые подходы не обеспечивают решение не формализованных (слабо формализованных) задач. Предлагается новая "концепция универсальности", которая позволяет накапливать знания и находить решения любых задач, в том числе не формализованных в различных областях науки и техники. Эта "концепция" позволяет ЭС в процессе эксплуатации обучаться, повышать точность анализов и расширять свои функциональные возможности. Адаптация поведения осуществляется за счет использования информации, накопленной ЭС, путем корректировки знаний, формализованных в "технических контекстах" (критериях оптимальности и в файлах инсталляции - базе фактов). Решение проблемы найдено в рамках построения иерархического комплекса взаимосвязанных ЭС, использующих общую универсальную информационную базу знаний (ИБЗ) и расширяемый ряд "интеллектуальных" блоков решателей, способных обучаться в процессе эксплуатации. Такой подход позволяет включить в состав ЭС блоки накапливающие информацию (информационно-поисковые системы, взаимодействующие с сетью Интернет) и блоки формализующие задачи и реализующие методы аналитического и имитационного моделирования (формирователи-анализаторы математических моделей). Наличие в ЭС, уточняемых в процессе эксплуатации математических моделей, обеспечивает возможность проведения структурно-параметрической идентификации динамических объектов, включает в процесс принятия решения теорию оптимизации и другие математические методы обработки информации. При этом в блок решателя могут быть включены алгоритмы, обеспечивающие автоматическое задание оптимального пространства поиска решений, которое основано на многокритериальном отборе и эвристическом подходе к проблеме. Эвристические алгоритмы оценки, выбора и принятия решения могут уточняться в процессе функционирования системы в диалоге с экспертом (пользователем). Полученные знания автоматически используются системой для повышения точности последующих решений. Поиск оптимального решения осуществляется при сочетании методов аналитического моделирования с имитационным экспериментом и технологией ЭС. Итак, Экспертные системы - это яркое и быстро прогрессирующее направление в области искусственного интеллекта. Причиной повышенного интереса, который ЭС вызывают к себе на протяжении всего своего существования, является возможность их применения к решению задач из самых различных областей человеческой деятельности. Практическое применение искусственного интеллекта на машиностроительных предприятиях и в экономике основано на ЭС, позволяющих повысить качество и сохранить время принятия решений, а также способствующих росту эффективности работы и повышению квалификации специалистов. Таким образом, как мы видим, экспертные системы являются востребованным продуктом на современном рынке информационных технологий.

1.1 Исследовательский раздел

1.1.1 Обобщенная структура и принципы функционирования экспертных систем

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

Типичная статическая ЭС состоит из следующих основных компонентов (рис. 1.1.1):

· решателя (интерпретатора);

· рабочей памяти (РП), называемой также базой данных (БД);

· базы знаний (БЗ);

· компонентов приобретения знаний;

· объяснительного компонента;

· диалогового компонента.

Рис. 1.1.1

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

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

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

Компонент приобретения знаний автоматизирует процесс наполнения ЭС знаниями, осуществляемый пользователем-экспертом.

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

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

В разработке ЭС участвуют представители следующих специальностей:

- эксперт в проблемной области, задачи которой будет решать ЭС;

- инженер по знаниям - специалист по разработке ЭС (используемые им технологию, методы называют технологией (методами) инженерии знаний);

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

Эксперт определяет знания (данные и правила), характеризующие проблемную область, обеспечивает полноту и правильность введенных в ЭС знаний.

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

Программист разрабатывает ИС (если ИС разрабатывается заново), содержащее в пределе все основные компоненты ЭС, и осуществляет его сопряжение с той средой, в которой оно будет использовано.

Экспертная система работает в двух режимах: режиме приобретения знаний и в режиме решения задачи (называемом также режимом консультации или режимом использования ЭС).

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

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

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

1.1.2 Анализ и обзор существующих методов построения ЭС и готовых решений

Организация знаний в ЭС

Для специалистов в области ИИ термин знания означает информацию, которая необходима программе, чтобы она вела себя "интеллектуально". Эта информация принимает форму фактов или правил.

Факты и правила в экспертной системе не всегда либо истинны, либо ложны; иногда существует некоторая степень неуверенности в достоверности факта или точности правила. Если это сомнение выражено явно, то оно называется "коэффициентом уверенности".

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

Знания в ЭС организованы таким образом, чтобы знания о предметной области отделить от других типов знаний системы, таких, как общие знания о том, как решать задачи, или знания о том, как взаимодействовать с пользователем, например как печатать текст на терминале пользователя или как изменить текст в соответствии с командами пользователя. Выделенные знания о предметной области называются базой знаний, тогда как общие знания о нахождении решений задач называются механизмом вывода. Программа, которая работает со знаниями, организованными подобным образом, называется системой, основанной на знаниях. База знаний ЭС содержит факты (данные) и правила (или другие представления знаний), использующие эти факты как основу для принятия решений. Механизм вывода содержит интерпретатор, определяющий, каким образом применять правила для вывода новых знаний, и диспетчер, устанавливающий порядок применения этих правил. Такая структура экспертной системы показана на рис. 1.1.2. Выделение знаний о предметной области облегчает инженеру по знаниям разработку процедур для манипулирования ими. Имеет первостепенное значение, каким образом система использует свои знания, поскольку ЭС должна иметь и адекватные знания, и средства для их эффективного применения, чтобы ее можно было считать умелой в каком-либо виде деятельности. Следовательно, для того, чтобы быть умелой, ЭС должна иметь базу знаний, содержащую высококачественные знания о предметной области, а ее механизм вывода должен содержать знания о том, как эффективно использовать знания о предметной области.

Рис. 1.1.2 Состав экспертной системы

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

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

Представление знаний, основанное на правилах, построено на использовании выражений вида ЕСЛИ (условие) -- ТО (действие).

Правила обеспечивают естественный способ описания процессов, управляемых сложной и быстро изменяющейся внешней средой. Через правила можно определять, как программа должна реагировать на изменение данных; при этом не нужно заранее знать блок-схему управления обработкой данных. В программе традиционного типа схема передачи управления и использования данных предопределена в самой программе. Обработка здесь осуществляется последовательными шагами, а ветвление происходит только в заранее выбранных точках. Этот способ управления хорошо работает в случае задач, допускающих алгоритмическое решение, если к тому же при этом данные меняются достаточно медленно, например, при решении систем линейных уравнений. Для задач, ход решения которых управляется самими данными, где ветвление скорее норма, чем исключение, этот способ малоэффективен. В задачах такого рода правила дают возможность на каждом шаге оценить ситуацию и предпринять соответствующие действия. Применение правил упрощает объяснение того, что и как сделала программа, т. е. каким способом она пришла к конкретному заключению.

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

Классификация ЭС

Класс "экспертные системы" сегодня объединяет несколько тысяч различных программных комплексов, которые можно классифицировать по различным критериям. Полезными могут оказаться следующие классификации. (Рис.1.1.3)

Рис. 1.1.3 Классификация экспертных систем

Классификация по решаемой задаче

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

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

Мониторинг. Основная задача мониторинга - непрерывная интерпретация данных в реальном масштабе времени и сигнализация о выходе тех или иных параметров за допустимые пределы. Главные проблемы - "пропуск" тревожной ситуации и инверсная задача "ложного" срабатывания. Сложность этих проблем в размытости симптомов тревожных ситуаций и необходимость учета временного контекста.

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

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

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

Обучение. Системы обучения диагностируют ошибки при изучении какой-либо дисциплины с помощью ЭВМ и подсказывают правильные решения. Они аккумулируют знания о гипотетическом "ученике" и его характерных ошибках, затем в работе способны диагностировать слабости в знаниях обучаемых и находить соответствующие средства для их ликвидации. Кроме того, они планируют акт общения с учеником в зависимости от успехов ученика с целью передачи знаний.

Классификация по связи с реальным временем

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

Квазидинамические ЭС интерпретируют ситуацию, которая меняется с некоторым фиксированным интервалом времени.

Динамические ЭС работают в сопряжении с датчиками объектов в режиме реального времени с непрерывной интерпретацией поступаемых данных.

Классификация по типу ЭВМ

На сегодняшний день существуют:

- ЭС для уникальных стратегически важных задач на суперЭВМ (Эльбрус, CRA'. CONVEX и др.);

- ЭС на ЭВМ средней производительности (типа ЕС ЭВМ, mainframe);

- ЭС на символьных процессорах и рабочих станциях (SUN, APOLLO);

- ЭС на мини- и супермини-ЭВМ (VAX, micro-VAX и др.);

- ЭС на персональных компьютерах (IBM PC, MAC II и подобные).

Классификация по степени интеграции с другими программами

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

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

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

Анализ готовых решений

В рамках данной работы для нас представляет интерес анализ систем поиска и подбора товаров. При посещении интернет-магазинов многие покупатели сталкиваются с проблемой выбора товаров по определенному набору характеристик. Разобраться в хитросплетениях современной техники не всегда получается, а из-за особенностей торговли через интернет получить грамотную и быструю консультацию редко представляется возможным. На сайте интернет-магазина бытовой техники Эльдорадо www.eldorado.ru в тесном сотрудничестве с компанией "Наносемантика" www.nanosemantics.ru, которая занимается разработками в области искусственного интеллекта, была внедрена принципиально новая система поиска и подбора товара, которая позволяет сократить время поиска без потери качества выборки. Среди особенностей системы: простота интерфейса, специально ориентированного на обычного покупателя, и математическая модель, которая сводит к минимуму количество вопросов-ответов.

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

Экспертные системы в действии:

· DeltaCredit Bank

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

· Сотовик.ру

ЭС помогает найти интересующий пользователя мобильный телефон из каталога мобильных телефонов основываясь на их параметрах. Удобный интерфейс ЭС позволяет посетителю сайта подобрать нужный ему телефон всего за 3-5 кликов из базы, которая содержит более чем 4000 телефонов, имеющих более 30 параметров. Гибкий алгоритм поиска позволяет в любой момент пересмотреть любой из параметров поиска и максимально быстро найти подходящий вариант телефона.

· Studyabroad.ru

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

· Эльдорадо

В онлайновом магазине компании "Эльдорадо" реализован наглядный и легко мультиплицируемый механизм подбора товаров в рамках отдельных товарных групп - Экспертная Система (ЭС) по подбору товаров. ЭС предназначена для быстрого сужения поиска без потери качества выборки; помогает пользователю выбрать объект, подходящий по нескольким параметрам, из некоторого множества объектов. Также создан вариант ЭС, в которой реализован более сложный механизм подбора товаров по большему набору параметров. В ЭС внедрен алгоритм пересмотра выбранных значений параметров, а также автоматического заполнения параметров на основании ответов, данных пользователем. При своей работе ЭС использует Базу Знаний, в которую входит исчерпывающий набор товарных позиций, параметров, иерархии параметров, вопросов, ответов и подсказок к каждому из параметров.

Сравнение Экспертной системы с другими системами поиска:

Проведем сравнение ЭС с другими системами поиска на примере разработанной компанией "Наносемантика" ЭС подбора сотового телефона.

Экспертная Система - онлайновая система, предназначенная для быстрого сужения поиска без потери качества выборки; помогает пользователю выбрать объект, подходящий по нескольким параметрам, из некоторого множества объектов. Работает в режиме "вопросы-ответы", каждый диалог с новым пользователем строится индивидуально.

Адрес: http://www.sotovik.ru/es/

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

Адрес: http://7440880.ru/cat/large/refrigerator/

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

Адрес: http://www.yandex.ru/advanced.html

Яндекс-Гуру - онлайновая каталоговая система, предназначенная для быстрого поиска товаров по каталогам магазинов; помогает выбрать товар по разным параметрам; является частью Яндекс-Маркета. Работает в режиме "вопросы-ответы", использует жесткое дерево вопросов в диалоге с пользователем.

Адрес: http://market.yandex.ru/guru-categories.xml

Таблица 1.1.1

Характеристики

Экспертная система

Фильтр по атрибутам

Обычная система поиска

Яндекс-Гуру

1. Структура поиска

Поиск товаров по параметрам

да

да

да

да

Поиск по ключевому слову

нет

нет

да

Есть только на уровне Яндекс-Маркет.

Поиск представляет собой фильтрацию товаров по основным параметрам - жесткий поиск

нет

да

да

нет

Поиск идет по заранее заданному дереву вопросов к параметрам - жесткий поиск

нет

нет

нет

да

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

да

нет

нет

нет

Поиск товаров по параметрам в режиме "вопросы-ответы"

да

нет

нет

да

Поиск объектов любого типа (товары, данные, люди, события, даты)

да

да

да

нет

Возможность не вникать при поиске в технические подробности (за счет подсказки)

да

нет

нет

да

Возможность изменения уже заданных параметров поиска

В любой момент

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

Только по окончании поиска

В любой момент

Автоматическое определение системой взаимозависимых параметров - более быстрый поиск

да

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

нет

нет

Оптимизация общения по ходу опроса - возможность исключить ненужные вопросы

да

нет

нет

нет

2. Результат поиска

Результат работы системы

Результат поиска никогда не бывает пустым.

Результат поиска никогда не бывает пустым.

Результат поиска может быть пустым - система ничего не находит.

Результат поиска никогда не бывает пустым.

Настройка выдачи результатов поиска - сортировка по убыванию/возрастанию.

да

да

да

нет

Возможность сравнения нескольких выбранных моделей товара

Нет, можно встроить

да

нет

да

3. Взаимодействие с пользователем

Наличие подсказок/пояснений пользователю

да

нет

нет

да

4. Взаимодействие с клиентом

Возможность интеграции в базу клиента

да

нет

нет

да

5. Возможность использования для ввода информации

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

да

нет

нет

нет

При формировании базы данных интерфейсным способом диалог с пользователем обобщается в виде записи в базе данных

да

нет

нет

нет

При формировании базы данных аппаратными средствами система может проверять вводимые данные и сообщать пользователю об ошибках во вводе данных

да

нет

нет

нет

При формировании базы данных аппаратными средствами система может приводить получаемые данные к единому стандарту и создавать единую базу данных

да

нет

нет

нет

Система может предлагать пользователю подсказки по вводу данных

да

нет

нет

нет

Т.о., сравнивая ЭС с другими системами поиска, можно определить следующие существенные отличия:

- ЭС осуществляет поиск среди объектов любого типа (товары, данные, люди, события, даты);

- Она не привязана к заранее заданным деревьям вопросов

- Процесс общения пользователя и ЭС индивидуален: система вычисляет приоритеты пользователя и в зависимости от них выдает результаты поиска;

- Поиск требуемого объекта поэтапно: система задает следующий вопрос исходя из предыдущих ответов ведущего с ней диалог пользователя;

- ЭС самостоятельно определяет параметры и приоритеты поиска: нерелевантные вопросы не задаются, не даются и нерелевантные варианты ответов;

- Пользователь может пересмотреть свой выбор в любой момент и по любому из параметров;

- ЭС запоминает посетителя и его выбор, и использует эту информацию при последующих запросах;

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

- Для удобства пользователей ЭС может общаться также в форматах ICQ, SMS и WAP;

- Внедрение ЭС не требует значительной переделки как сайта, так и баз данных.

Взаимодействие ЭС и человека в ряде случаев может быть весьма продуктивным. Например, работающая совместно с call-центром ЭС, делает такой тандем весьма привлекательной для on-line магазинов.

1.1.3 Анализ инструментальных средств построения ЭС

Виды инструментальных средств построения ЭС

Традиционные языки программирования

В эту группу инструментальных средств входят традиционные языки программирования (С, C++, Basic, SmallTalk, Fortran и т.д.), ориентированные в основном на численные алгоритмы и слабо подходящие для работы с символьными и логическими данными. Поэтому создание систем искусственного интеллекта на основе этих языков требует большой работы программистов. Однако большим достоинством этих языков является высокая эффективность, связанная с их близостью к традиционной машинной архитектуре. Кроме того, использование традиционных языков программирования позволяет включать интеллектуальные подсистемы (например, интегрированные экспертные системы) в крупные программные комплексы общего назначения.

Языки искусственного интеллекта

Это прежде всего Лисп (LISP) и Пролог (Prolog) - наиболее распространенные языки, предназначенные для решения задач искусственного интеллекта. Есть и менее распространенные языки искусственного интеллекта, например РЕФАЛ, разработанный в России. Универсальность этих языков меньшая, нежели традиционных языков, но ее потерю языки искусственного интеллекта компенсируют богатыми возможностями по работе с символьными и логическими данными, что крайне важно для задач искусственного интеллекта.

Специальный программный инструментарий

В эту группу программных средств искусственного интеллекта входят специальные инструментарии общего назначения. Как правило, это библиотеки и надстройки над языком искусственного интеллекта Лисп: KEE (Knowledge Engineering Environment), FRL (Frame Representation Language), KRL (Knowledge Represantation Language), ARTS и др., позволяющие пользователям работать с заготовками экспертных систем на более высоком уровне, нежели это возможно в обычных языках искусственного интеллекта.

"Оболочки"

Под "оболочками: (shells) понимают "пустые" версии существующих экспертных систем, т.е. готовые экспертные системы без базы знаний. Примером такой оболочки может служить EMYCIN (Empty MYCIN - пустой MYC1N), которая представляет собой незаполненную экспертную систему MYCIN. Достоинство оболочек в том, что они вообще не требуют работы программистов для создания готовой экспертной системы. Требуется только специалисты) в предметной области для заполнения базы знаний.

Выбор подходящего инструментария для разработки ЭС

В работе [Hayes-Roth et al, 1983, Chapter 1] собраны рекомендации по выбору подходящих инструментальных средств построения экспертной системы. В основу рекомендаций положено сопоставление характеристик задач, решаемых проектируемой экспертной системой, и необходимых функциональных возможностей инструментального комплекса.

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

Быстрота. Если успех проекта зависит от срока разработки, то следует выбирать инструментальную среду со встроенными средствами формирования пояснений и развитым пользовательским интерфейсом. Разработка интерфейса -- одна из наиболее трудоемких стадий проектирования системы, и чем большую часть этой работы можно переложить на среду разработки, тем быстрее будет завершен проект. Испытание. Постарайтесь как можно быстрее провести испытания новой для вас инструментальной среды. Без сомнения, это полезный совет, однако открытым остается вопрос о том, как определить степень совершенства инструмента по результатам испытаний. Важнейшим для выбора инструментальной среды является вопрос о способе определения характеристик проблемы, решаемой проектируемой экспертной системой. Этот вопрос обсуждается в работе [Stefik et al, 1983], где предлагается схема анализа, основанная на свойствах пространства поиска решения. Я позволил себе несколько обобщить предлагаемые авторами работы категории проблем и свел 11 Категорий к четырем, хотя основные принципы классификации остались прежними.

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

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

(3) Большое, но факторизуемое пространство решений. В литературе можно найти два варианта толкования термина "факторизуемый". Пространство поиска можно назвать факторизуемым, если существует "правило исключения", которое помогает уменьшить размер пространства на ранней стадии решения проблемы [Stefik et al, 1983, p. 99]. Есть и другое определение -- пространство поиска является факторизуемым, если возможно разделить его на несколько независимых подпространств, которые можно обрабатывать по отдельности, причем для разных подпространств могут быть использованы и разные множества правил или отдельные подмножества одного и того же множества правил [Nilsson, 1980, р. 37]. Обычно такое разбиение выполняется на уровне решаемой проблемы, т.е. большая общая проблема разбивается на несколько более мелких. Успех в достижении главной цели, таким образом, оценивается по совокупности успехов в достижении более или менее независимых подцелей. Если система потерпит неудачу в достижении одной из подцелей, то это будет означать неудачу и решения проблемы в целом. В любом случае для решения проблем такого класса наиболее предпочтительным является метод порождения и проверки (generate-and-test). Этот метод позволяет "обрезать" ветви, уводящие нас от решения, и разделить большое пространство решений на подпространства.

(4) Большое нефакторизуемое пространство решений. Пространство решений может оказаться и нефакторизуемым, в каком бы смысле мы не трактовали этот термин. Очень часто оказывается, что проблема проектирования допускает выработку частного решения какого-либо компонента только в контексте всего проекта. При сборке головоломки нельзя предсказать, найдено ли верное решение, пока последний элемент мозаики не станет на свое место. Общий подход к работе в большом пространстве поиска состоит в том, чтобы последовательно рассматривать его на разных уровнях абстракции, т.е. использовать варианты описания пространства с разным уровнем учета деталей. Решение проблемы таким методом часто называют нисходящим уточнением (top-down refinement). Применение метода нисходящего уточнения требует исключить, по возможности, обратное прослеживание между уровнями, реализация которого требует значительных вычислительных ресурсов. Но это срабатывает только в случае, если между уровнями нет тесного взаимодействия. Эффективной стратегией решения такого рода задач является стратегия наименьшего принуждения (least commitment), подкрепленная адекватным механизмом разрешения конфликтов.


Подобные документы

  • Понятия, классификация и структура экспертных систем. Базы знаний и модели представления знаний. Механизмы логического вывода. Инструментальные средства проектирования и разработки экспертных систем. Предметная область ЭС "Выбор мобильного телефона".

    курсовая работа [2,2 M], добавлен 05.11.2014

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

    курсовая работа [325,0 K], добавлен 04.02.2011

  • Структура экспертных систем, их классификация и характеристики. Выбор среды разработки программирования. Этапы создания экспертных систем. Алгоритм формирования базы знаний с прямой цепочкой рассуждений. Особенности интерфейса модулей "Expert" и "Klient".

    курсовая работа [1,1 M], добавлен 18.08.2009

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

    курсовая работа [765,6 K], добавлен 12.05.2013

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

    курсовая работа [1,2 M], добавлен 22.01.2015

  • Структура экспертной системы: база знаний, механизм вывода, система пользовательского интерфейса. Анализ требований, проектирование системы "Подбор сотовых телефонов". Спецификация области, кодирование. Листинг программы, результаты тестирования.

    курсовая работа [24,5 K], добавлен 12.05.2013

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

    курсовая работа [7,8 M], добавлен 19.09.2010

  • Разработка программы-модели в среде "Adamview" для имитации стратегии и наглядной иллюстрации работы программы. Настройка сети; описание эмулятора стратегии и экранных форм интерфейса оператора. Структурная схема распределённой системы управления.

    курсовая работа [2,6 M], добавлен 21.01.2013

  • Изучение особенностей растровых и векторных графических редакторов. Создание графического редактора: выбор языка программирования, разработка структуры программы и алгоритма работы. Описание интерфейса программы. Руководство программиста и пользователя.

    курсовая работа [1,3 M], добавлен 28.07.2013

  • Преимущества и недостатки моделей представления знаний. Модель, основанная на правилах, фреймовая модель. Семантическая сеть. Структура экспертных систем и этапы их разработки. Механизмы логического вывода. Стратегия "вверх-снизу", "от цели к ситуации").

    презентация [195,3 K], добавлен 29.10.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.