- •Содержание предисловие 5
- •Тема 1. Основные понятия информатики 8
- •Тема 2. Алгоритмизация и программирование 23
- •Тема 3. Технические средства реализации информационных процессов 40
- •Тема 10. Искусственный интеллект 170
- •Предисловие
- •Тема 1. Основные понятия информатики
- •1.1. Информатика, ее структура, задачи и функции
- •1.2. Место информатики в ряду других фундаментальных наук
- •1.3. Понятие информации
- •1.4. Измерение информации: количество, единицы измерения, энтропия
- •1.5. Свойства информации
- •1.6. Виды информации
- •1.7. Требования к информации
- •1.8. Классификация и кодирование информации
- •Кодирование и декодирование числовой информации
- •Международные системы байтового кодирования текстовой информации
- •Кодирование графических данных
- •1.9. Общая характеристика процессов сбора, передачи, обработки и накопления информации
- •Тесты для самопроверки
- •1. Из каких взаимосвязанных частей состоит информатика?
- •2. Информация это
- •Тема 2. Алгоритмизация и программирование
- •2.1. Понятие алгоритма
- •2.2. Свойства алгоритмов
- •2.3. Графическое представление алгоритмов
- •2.4. Технологии программирования Операционный подход
- •Структурный подход
- •Объектно-ориентированное программирование
- •Декларативный подход в программировании
- •Процедурно-ориентированное программирование
- •2.5. Понятие языка программирования
- •2.6. Грамматика языков программирования
- •2.7. Проектирование программ
- •2.8. Системы программирования
- •2.9. Языки программирования высокого уровня Язык программирования Паскаль
- •Основные элементы языка программирования Паскаль
- •Язык программирования Пролог
- •Тесты для самопроверки
- •Задания для самопроверки
- •2. Разработать алгоритм и программу на языке Паскаль, выполняющую следующие действия:
- •Тема 3. Технические средства реализации информационных процессов
- •3.1. Офисная техника
- •3.2. История развития средств вычислительной техники
- •3.3. Методы классификации компьютеров
- •Классификация по поколениям Первое поколение
- •Второе поколение
- •Третье поколение
- •Четвёртое поколение
- •Пятое поколение37
- •Классификация по условиям эксплуатации
- •Классификация по производительности и характеру использования
- •Основные разновидности портативных компьютеров
- •3.4. Архитектура эвм
- •Классическая архитектура (архитектура фон Неймана)
- •Многопроцессорная архитектура
- •Многомашинная вычислительная система
- •Архитектура с параллельными процессорами
- •3.5. Базовая аппаратная конфигурация пк
- •Системный блок
- •Видеосистема компьютера
- •Монитор на базе электронно-лучевой трубки
- •Последняя не должна быть ниже 85 Гц, иначе изображение будет мерцать. Жидкокристаллические мониторы
- •Сенсорный экран
- •Клавиатура
- •3.6. Внутренние устройства системного блока пк
- •Системная плата
- •Внешняя память
- •Накопители на гибких магнитных дисках
- •Накопители на жестких магнитных дисках
- •Оптические накопители cd-rom
- •Накопители на магнитной ленте (стримеры)
- •Flash-память
- •Платы расширения
- •Аудиоадаптер
- •Видеоадаптер и графический акселератор
- •Модем и факс-модем
- •3.7. Системы, расположенные на материнской плате пк Центральный процессор
- •Микропроцессорный комплект
- •Системные шины
- •Внутренняя память
- •Оперативная память
- •Постоянная память
- •3.8. Периферийные устройства пк Принтеры
- •Плоттер
- •Манипуляторы
- •Дигитайзер
- •3.9. Общая схема пк
- •Тесты для самопроверки
- •Тема 4. Программные средства реализации информационных процессов
- •4.1. Программное обеспечение эвм. Классификация и структура.
- •4.2. Назначение и основные функции ос
- •4.3. Классификация ос
- •4.4. Понятие файловой системы
- •4.5. Сетевое по
- •4.6. Операционные среды и оболочки
- •4.7. Служебное по
- •Тесты для самопроверки
- •Тема 5. Инструментарии решения функциональных задач
- •5.1. Понятие прикладного по и пакета прикладных программ
- •5.2. Прикладное по общего назначения
- •5.2.1. Текстовые процессоры
- •5.2.2. Электронные таблицы
- •5.2.3. Средства создания презентаций
- •5.2.4. Система управления базами данных
- •5.2.5. Графические редакторы
- •5.2.6. Офисные системы
- •5.3. Проблемно-ориентированное по
- •5.4. Методо-ориентированное по
- •Тесты для самопроверки
- •Тема 6. Базы данных
- •6.1. Основные понятия баз данных
- •6.2. Виды моделей баз данных
- •6.2.1. Иерархическая модель данных
- •6.2.2. Сетевая модель данных
- •Реляционная модель данных
- •6.3. Классификация баз данных
- •6.4. Проектирование реляционной бд
- •6.4.1. Требования к бд
- •6.4.2. Трехуровневая архитектура представления данных
- •6.4.3. Средства представления инфологической модели данных
- •6.4.4. Нормализация отношений
- •Первая нормальная форма
- •Вторая нормальная форма
- •Третья нормальная форма
- •6.5. Основы использования языка sql
- •6.5.1. Язык Описания Данных
- •6.6. Язык Манипулирования Данными
- •Тесты для самопроверки
- •Тема 7. Модели и моделирование
- •7.1. Ключевые этапы моделирования
- •7.2. Обобщённая классификация моделей
- •7.2.1. Категориальные модели
- •7.2.2. Модели, фиксирующие особенности свойств оригинала
- •7.2.3. Природа моделей
- •7.2.4. Основания для перехода от модели к оригиналу
- •7.3. Классификация математических моделей
- •7.3.1. Модели, определяемые методом получения результата
- •7.3.2. Модели, определяемые инструментальной средой моделирования
- •Тесты для самопроверки
- •9. Среди общепринятых классификаций видов моделей отсутствует их классификация на
- •10. В отношении «объект-модель» не находятся понятия
- •Тема 8. Компьютерные сети
- •8.1. Основные понятия компьютерных сетей
- •8.2. Топология компьютерных сетей
- •8.3. Структура вычислительной сети
- •8.3.1. Компьютеры
- •8.3.2. Каналы передачи данных
- •8.3.3. Устройства сопряжения эвм с аппаратурой передачи данных
- •8.3.4. Устройства межсетевого интерфейса
- •8.3.5. Устройства коммутации
- •8.3.6. Методы доступа к каналам связи
- •8.4. Локальные сети
- •8.5. Организация работы в локальной сети
- •8.5.1. Сеть с файловым сервером
- •Одноранговая сеть
- •Модель открытой системы взаимодействия
- •8.6. Возможности сети Интернет
- •8.6.1. Программное обеспечение работы в Интернет
- •8.6.2. Адресация и протоколы в Интернет
- •8.7. Службы Интернета
- •8.7.1. Терминальный режим
- •8.7.2. Всемирная паутина, или World Wide Web
- •8.7.3. Служба Gopher
- •8.7.4. Файловые информационные ресурсы ftp
- •8.7.5. Электронная почта (e-mail)
- •8.7.6. Списки рассылки (Mail List)
- •8.7.7. Новости, или конференции
- •8.7.8. Передача разговоров по Интернету
- •8.7.9. Многопользовательские области, или Игры в Internet
- •8.7.10. Радиовещание Интернет (Internet Talk Radio)
- •8.7.11. Базы данных wais
- •8.8. Сетевая операционная система (сос)
- •8.8.1. Сетевая операционная система aix
- •8.8.2. Сетевая операционная система Cairo
- •8.8.3. Сетевая операционная система Dayton
- •8.8.4. Сетевая операционная система lan Server
- •8.8.5. Сетевая операционная система NetWare
- •8.8.6. Сетевая операционная система vines
- •8.8.7. Сетевая операционная система Windows 95
- •8.8.8. Сетевая операционная система Windows nt*
- •8.8.9. Сетевая операционная система Windows ntas
- •8.8.10. Операционная система unix
- •Тесты для самопроверки
- •1. Выберите определение компьютерной сети
- •2. Сетевая плата - это устройство
- •3. Какие типы локальных сетей существуют?
- •4. Какие области выделяются пользователю на жестком диске сервера?
- •Тема 9. Информационная безопасность
- •9.1. Защита информации
- •9.2. Объекты и элементы защиты в компьютерных системах обработки данных
- •9.3. Средства опознания и разграничения доступа к информации
- •9.4. Криптографический метод защиты информации
- •9.5. Компьютерные вирусы и антивирусные программные средства
- •9.6. Защита программных продуктов
- •9.7. Обеспечение безопасности данных на автономном компьютере
- •9.8. Безопасность данных компьютерных сетей
- •Тесты для самопроверки
- •Тема 10. Искусственный интеллект
- •10.1. Основные положения
- •10.2. Типичные модели представления знаний
- •10.2.1 Логическая модель представления знаний
- •10.2.2. Представление знаний правилами продукций
- •10.2.3. Объектно-ориентированное представление знаний фреймами
- •10.2.4. Модель семантической сети
- •10.3. Эволюционные аналогии в искусственных интеллектуальных системах
- •Тесты для самопроверки
- •Библиографический список
- •Информатика
- •300012, Г. Тула, пр. Ленина, 92
- •300012, Г. Тула, ул. Болдина, 151
Тема 10. Искусственный интеллект
План
10.1. Основные положения
10.2. Типичные модели представления знаний
10.3. Эволюционные аналогии в искусственных интеллектуальных системах
10.1. Основные положения
Термин интеллект (intelligence) происходит от латинского intellectus – что означает ум, рассудок, разум; мыслительные способности человека. Соответственно искусственный интеллект (artificial intelligence) – ИИ (AI) обычно толкуется, как свойство автоматических систем брать на себя отдельные функции интеллекта человека, например, выбирать и принимать оптимальные решения на основе ранее полученного опыта и рационального анализа внешних воздействий.
Искусственный интеллект как новая область научных исследований не имеет однозначного определения. В настоящее время используются следующие формулировки:
1) область фундаментальных исследований, в процессе которых разрабатываются новые модели и методы решения задач, не поддающихся формализации;
2) область разработки новых технологий программирования для компьютеров не фон-неймановской архитектуры;
3) экспериментальная научная дисциплина, занимающаяся проверкой и уточнением интеллектуальных систем.
Основные направления ИИ:
разработка интеллектуальных информационных систем (ИИС) или систем, основанных на знаниях;
разработка естественно-языковых интерфейсов и машинный перевод;
генерация и распознавание речи;
обработка визуальной информации;
обучение и самообучение;
распознавание образов;
игры и машинное творчество;
программное обеспечение систем ИИ;
новые архитектуры компьютеров;
интеллектуальные роботы.
ИИС основана на концепции использования базы знаний для генерации алгоритмов решения прикладных задач различных классов в зависимости от конкретных информационных потребностей пользователей. Для ИИС характерны следующие признаки:
развитые коммуникативные способности;
умение решать сложные плохо формализуемые задачи;
способность к самообучению;
адаптивность.
Одно из определений термина «знания» гласит: «Знания – это хорошо структурированные данные или данные о данных, или метаданные».
Знания можно классифицировать следующим образом:
1) по своей природе
a) декларативные - описание фактов и явлений, связей между ними и закономерностей их развития;
b) процедурные - описание действий при манипулировании фактами и явлениями;
2) по способу приобретения
a) факты;
b) эвристику - правила, которые позволяют сделать выбор при отсутствии точных теоретических обоснований;
3) по типу представления
a) факты – «А – это А»;
b) правила – «Если А, то В».
Существуют различные подходы к построению систем ИИ.
Основой логического подхода служит Булева алгебра. Практически каждая система ИИ, построенная на логическом принципе, представляет собой машину доказательства теорем. При этом исходные данные хранятся в базе знаний в виде аксиом, правила логического вывода как отношения между ними. Кроме того, каждая такая машина имеет блок генерации цели, и система вывода пытается доказать данную цель как теорему. Если цель доказана, то трассировка примененных правил позволяет получить цепочку действий, необходимых для реализации поставленной цели. Мощность такой системы определяется возможностями генератора целей и машиной доказательства теорем.
Конечно, можно сказать, что выразительности алгебры высказываний не хватит для полноценной реализации ИИ, но стоит вспомнить, что основой всех существующих ЭВМ является бит – ячейка памяти, которая может принимать значения только 0 и 1. Таким образом, было бы логично предположить, что все, что возможно реализовать на ЭВМ, можно было бы реализовать и в виде логики предикатов. Хотя здесь ничего не говорится о том, за какое время.
Добиться большей выразительности логическому подходу позволяет такое сравнительно новое направление, как нечеткая логика. Основным ее отличием является то, что правдивость высказывания может принимать в ней кроме да/нет (1/0) еще и промежуточные значения – не знаю (0.5), пациент скорее жив, чем мертв (0.75), пациент скорее мертв, чем жив (0.25). Данный подход больше похож на мышление человека, поскольку он на вопросы редко отвечает только да или нет. Хотя, правда на экзамене будут приниматься только ответы из разряда классической булевой алгебры.
Для большинства логических методов характерна большая трудоемкость, поскольку во время поиска доказательства возможен полный перебор вариантов. Поэтому данный подход требует эффективной реализации вычислительного процесса, и хорошая работа обычно гарантируется при сравнительно небольшом размере базы знаний.
Под структурным подходом мы подразумеваем здесь попытки построения ИИ путем моделирования структуры человеческого мозга. Одной из первых таких попыток был перцептрон Френка Розенблатта. Основной моделируемой структурной единицей в перцептронах (как и в большинстве других вариантов моделирования мозга) является нейрон.
Позднее возникли и другие модели, которые в простонародье обычно известны под термином "нейронные сети" (НС). Эти модели различаются по строению отдельных нейронов, по топологии связей между ними и по алгоритмам обучения. Среди наиболее известных сейчас вариантов НС можно назвать НС с обратным распространением ошибки, сети Хопфилда, стохастические нейронные сети.
НС наиболее успешно применяются в задачах распознавания образов, в том числе сильно зашумленных, однако имеются и примеры успешного применения их для построения собственно систем ИИ, это уже ранее упоминавшийся ТАИР.
Для моделей, построенных по мотивам человеческого мозга характерна не слишком большая выразительность, легкое распараллеливание алгоритмов, и связанная с этим высокая производительность параллельно реализованных НС. Также для таких сетей характерно одно свойство, которое очень сближает их с человеческим мозгом – нейронные сети работают даже при условии неполной информации об окружающей среде, то есть как и человек, они на вопросы могут отвечать не только "да" и "нет" но и "не знаю точно, но скорее да".
Довольно большое распространение получил и эволюционный подход. При построении систем ИИ по данному подходу основное внимание уделяется построению начальной модели, и правилам, по которым она может изменяться (эволюционировать). Причем модель может быть составлена по самым различным методам, это может быть и НС и набор логических правил и любая другая модель. После этого мы включаем компьютер и он, на основании проверки моделей отбирает самые лучшие из них, на основании которых по самым различным правилам генерируются новые модели, из которых опять выбираются самые лучшие и т. д.
В принципе можно сказать, что эволюционных моделей как таковых не существует, существует только эволюционные алгоритмы обучения, но модели, полученные при эволюционном подходе имеют некоторые характерные особенности, что позволяет выделить их в отдельный класс.
Такими особенностями являются перенесение основной работы разработчика с построения модели на алгоритм ее модификации и то, что полученные модели практически не сопутствуют извлечению новых знаний о среде, окружающей систему ИИ, то есть она становится как бы вещью в себе.
Еще один широко используемый подход к построению систем ИИ – имитационный. Данный подход является классическим для кибернетики с одним из ее базовых понятий – "черным ящиком" (ЧЯ). ЧЯ – устройство, программный модуль или набор данных, информация о внутренней структуре и содержании которых отсутствуют полностью, но известны спецификации входных и выходных данных. Объект, поведение которого имитируется, как раз и представляет собой такой "черный ящик". Нам не важно, что у него и у модели внутри и как он функционирует, главное, чтобы наша модель в аналогичных ситуациях вела себя точно так же.
Таким образом, здесь моделируется другое свойство человека – способность копировать то, что делают другие, не вдаваясь в подробности, зачем это нужно. Зачастую эта способность экономит ему массу времени, особенно в начале его жизни.
Основным недостатком имитационного подхода также является низкая информационная способность большинства моделей, построенных с его помощью.
Представим себе, что за нами наблюдает какое-то устройство, которое следит за тем, что в каких ситуациях мы делаем, говорим. Наблюдение идет за величинами, которые поступают к нам на вход (зрение, слух, вкус, тактильные, вестибулярные и т.д.) и за величинами, которые выходят от нас (речь, движение и др.). Таким образом человек выступает здесь как типичный ЧЯ.
Далее это устройство пытается отстроить какую-то модель таким образом, чтобы при определенных сигналах на входе человека, она выдавала на выходе те же данные, что и человек. Если данная затея будет когда-нибудь реализована, то для всех посторонних наблюдателей такая модель будет той же личностью, что и реальный человек.
И заканчивая беглое ознакомление с различными методами и подходами к построению систем ИИ, хотелось бы отметить, что на практике очень четкой границы между ними нет. Очень часто встречаются смешанные системы, где часть работы выполняется по одному типу, а часть по другому.
