Языки программирования

Автор работы: Пользователь скрыл имя, 28 Ноября 2009 в 13:57, Не определен

Описание работы

Введение
1. Структура и типы данных языка программирования
2. Базы данных, экспертные системы, искусственный интеллект
3. Передача данных по сети
4. Методы защиты от вирусов
Заключение
Список литературы

Файлы: 1 файл

Реферат информатика языки программирования.doc

— 340.00 Кб (Скачать файл)

 

      2. Базы данных, экспертные  системы, искусственный  интеллект 

     База  Данных (БД) — структурированный организованный набор данных, описывающих характеристики каких-либо физических или виртуальных систем.

     «Базой  данных» часто упрощённо или  ошибочно называют Системы Управления Базами Данных (СУБД). Нужно различать набор данных (собственно БД) и программное обеспечение, предназначенное для организации и ведения базы данных (СУБД).

     Организация структуры БД формируется исходя из следующих соображений:

  1. Адекватность описываемому объекту/системе — на уровне концептуальной и логической модели.
  2. Удобство использования для ведения учёта и анализа данных — на уровне так называемой физической модели.

     Виды  концептуальных (инфологических) моделей БД: «сущность-связь», семантические, графовые.

     Виды  логических (даталогических) моделей БД:

  1. Документальные (архивы) — ориентированные на формат документа, дескрипторные, тезаурусные.
  2. Фактографические (картотеки)

     теоретико-графовые: иерархическая модель, сетевая модель.

     теоретико-множественные: реляционная модель (ER-модель), многомерная модель.

     объектно-ориентированные: объектная модель.

     основанные  на инвертированных файлах.

     Таким образом, по модели представления данных БД классифицируются:

  • Картотеки
  • Сетевые
  • Иерархические
  • Реляционные
  • Многомерные
  • Объектно-ориентированные
  • Дедуктивные

     На  уровне физической модели электронная БД представляет собой файл или их набор в формате TXT, CSV, Excel, DBF, XML либо в специализированном формате конкретной СУБД. Также в СУБД в понятие физической модели включают специализированные виртуальные понятия, существующие в её рамках — таблица, табличное пространство, сегмент, куб, кластер и т. д.

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

     Этапы проектирования базы данных

     1. Концептуальное проектирование — сбор, анализ и редактирование требований к данным. Для этого осуществляются следующие мероприятия:

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

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

     2. Логическое проектирование — преобразование требований к данным в структуры данных. На выходе получаем СУБД-ориентированную структуру базы данных и спецификации прикладных программ. На этом этапе часто моделируют базы данных применительно к различным СУБД и проводят сравнительный анализ моделей.

     3. Физическое проектирование — определение особенностей хранения данных, методов доступа и т. д.

     Различие  уровней представления данных на каждом этапе проектирования реляционной базы данных:

     Концептуальный уровень — Представление аналитика (используется инфологическая модель «сущность-связь»)

     Логический уровень — Представление программиста

     Физический уровень — Представление администратора

     Экспе́ртная систе́ма (ЭС, expert system) — компьютерная программа, способная заменить специалиста-эксперта в разрешении проблемной ситуации. ЭС начали разрабатываться исследователями искусственного интеллекта в 1970-х годах, а в 1980-х получили коммерческое подкрепление.

     Похожие действия выполняет программа-мастер (wizard). Мастера применяются как в системных программах так и в прикладных для интерактивного общения с пользователем (например, при установке ПО). Главное отличие мастеров от ЭС — отсутствие базы знаний; все действия жестко запрограммированы. Это просто набор форм для заполнения пользователем.

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

     Структура экспертной системы:

  • Интерфейс пользователя
  • Пользователь
  • Интеллектуальный редактор базы знаний
  • Эксперт
  • Инженер по знаниям
  • Рабочая (оперативная) память
  • База знаний
  • Решатель (механизм вывода)
  • Подсистема объяснений

     База  знаний состоит из правил анализа информации от пользователя по конкретной проблеме. ЭС анализирует ситуацию и, в зависимости от направленности ЭС, дает рекомендации по разрешению проблемы.

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

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

     База  знаний ЭС создается при помощи трех групп людей:

  1. эксперты той проблемной области, к которой относятся задачи, решаемые ЭС;
  2. инженеры по знаниям, являющиеся специалистами по разработке ИИС;
  3. программисты, осуществляющие реализацию ЭС.

     ЭС может функционировать  в 2-х режимах.

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

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

  • Интерпретация данных
  • Диагностирование
  • Мониторинг
  • Проектирование
  • Прогнозирование
  • Сводное Планирование
  • Обучение
  • Управление
  • Ремонт
  • Отладка

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

  • Статические ЭС
  • Квазидинамические ЭС
  • Динамические ЭС

     Этапы разработки ЭС

  • Этап идентификации проблем
  • Этап извлечения знаний
  • Этап структурирования знаний
  • Этап формализации
  • Реализация ЭС
  • Этап тестирования

     Наиболее известные/распространённые ЭС

  • CLIPS — весьма популярная ЭС (public domain)
  • OpenCyc — мощная динамическая ЭС с глобальной онтологической моделью и поддержкой независимых контекстов

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

     Точного определения этой науки не существует, так как в философии не решён вопрос о природе и статусе человеческого интеллекта. Нет и точного критерия достижения компьютерами «разумности», хотя на заре искусственного интеллекта был предложен ряд гипотез, например, тест Тьюринга или гипотеза Ньюэлла — Саймона. На данный момент есть множество подходов как к пониманию задачи ИИ, так и созданию интеллектуальных систем.

     Так, одна из классификаций выделяет два  подхода к разработке ИИ:

  • нисходящий, семиотический — создание символьных систем, моделирующих высокоуровневые психические процессы: мышление, рассуждение, речь, эмоции, творчество и т. д.;
  • восходящий, биологический — изучение нейронных сетей и эволюционные вычисления, моделирующих интеллектуальное поведение на основе более мелких «неинтеллектуальных» элементов.

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

Информация о работе Языки программирования