Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

Подписываем
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Предоплата всего
Подписываем
35. Определение искусственного интеллекта
ИИ – область информатики, занимающаяся автоматизацией разумного поведения.
Также можно определить ИИ с помощью теста Тьюринга: ИИ – это компьютерная система, которая прошла тест Тьюринга. Алан Тьюринг предложил тест, который выявляет разумность машины. Человека и машину, претендующую на «разумность», помещают в разные комнаты. Другой человек – «следователь» сообщается с ними с помощью текстового устройства (клавиатура и монитор). Следователь должен отличить компьютер от человека исключительно на основе их ответов на любые вопросы. Если же следователь не сможет различить, где машина, а где человек, то такую машину можно считать разумной. Следователь может задавать любые вопросы: попросить произвести сложный арифметический расчет, предполагая, что машина справится быстрее человека; попросить высказать суждение относительно произведения искусства.
«-»: только символьные задачи (не учитывает ощущения и движения); попытка втиснуть ИИ в человеческие рамки (скорость вычислений).
История ИИ: Термин ИИ был впервые применен в 1956 г. В СССР начало развития этого направления связывают с семинаром профессора А. А. Ляпунова в МГУв 1954 г.
Однако в истории науки и до середины ХХ века существовали направления, которые можно отнести к сфере искусственного интеллекта: 1) исследование законов человеческого мышления и их формализация; 2) представление знаний, абстрагирование формы представления от конкретного содержания; 3) практическая реализация автоматизации процессов мышления.
Первым ученым, работавшим над этими проблемами, вероятно, следует считать Аристотеля. В своем труде «Логика» Аристотель впервые исследовал законы человеческого мышления и создал правила построения новых утверждений из исходных посылок. Причем, если посылки истинны, то и заключения также истинны. Например, если известно, что «Все люди смертны» и «Сократ – человек», то можно сказать, что «Сократ – смертен» (правило modus ponens). Леонард Эйлер в начале XVIII века в своем анализе задачи о кенигсбергских мостах создал учение о представлениях, которые абстрактно отражают структуру взаимосвязей реального мира – теорию графов. В XVIII веке Готфрид Вильгельм Лейбниц выдвинул идею применения в логике математической символики, предложил использовать бинарную систему счисления для целей вычислительной математики. Лейбниц ввёл термин «модель», построил механическую машину, которая могла выполнять 4 арифметические операции.В XIX веке работу в этом направлении продолжил Джордж Буль, создал алгебру, в которой присутствовало только два числа – 0 и 1 («ложь» и «истина»), а основными операциями были И, ИЛИ, НЕ. Фреге формализовал многие вопросы, затронутые в аристотелевской «Логике», путем создания исчисления предикатов первого порядка. Английский математик Чарльз Бэббидж (1792-1871) в 1833 году спроектировал Аналитическую машину, которая стала прообразом современных компьютеров. Его помощница Ада Августа Лавлейс стала первым в мире программистом. В ее честь назван современный язык программирования Ada. В 40-е годы ХХ века были созданы первые ЭВМ. Стало возможным реализовывать формальные системы рассуждений на машине и проверять разумность компьютерных программ опытным путем. Сферы применения ИИ: математическая логика; нейронные сети; генетические алгоритмы; интеллектуальные агенты.
Рассмотрим основные сферы, где эти направления ИИ находят применение: 1) ведение игр; 2) автоматические рассуждения и доказательства теорем; 3) Экспертные системы; 4) понимание естественных языков; 5) робототехника и планирование.
36.императивное программирование является отражением архитектуры традиционных ЭВМ, которая была предложена фон Нейманом в 1940-х годах. Теоретической моделью процедурного программирования служит алгоритмическая система под названием Машина Тьюринга.
Выполнение программы сводится к последовательному выполнению операторов с целью преобразования исходного состояния памяти, то есть значений исходных данных, в заключительное, то есть в результаты. Таким образом, с точки зрения программиста имеются программа и память, причем первая последовательно обновляет содержимое последней.
Декларативный язык программирования - язык программирования высокого уровня, построенный:
- на описании данных; и
- на описании искомого результата.
Пролог - programming in logic
Логическая программа – набор спецификаций в рамках формальной логики. Prolog – язык логич-го программир-я осн-ный. на исч предик и исп-ет мет резолюции. В отлич от исчисления высказ-й, где имеет место только узкий круг утверждений – высказ-й, в исчислении предикатов вместо высказ-й исп-ся предикаты – символьные выр-я, начинающ-ся со строчной буквы и указывающие на отношения м-у неск-ми объектами likes(masha,flowers). Аргументами предикатов м.б. и функции. Пролог созд в 1973 г. во Франции поддерж деклар стиль прогр-я, т.е. опис предм обл в виде фактов и правил. В отл от него процед-й стиль предп-ет напис пр-мы в виде инструкц по вып-ю алг. В логическом прогр-и компьютеру сообщается, что есть истина, а не как это сделать.
Описание языка: Операц: коньюн (,) дезьюн (;) отриц (not) имплик (:-). Программы на прологе сост из предложений. Сущ-ет 2 типа предл-й - факты и правила: факты опис отн-я м/у обьект. likes(masha,flowers) – Маше нравятся цветы; и отражают св-ва green(tree) – дерево зеленое. Правила позв вывод 1 факт из друг-го. Для представл-я правил исп-ся Хорновские клозы- формулы вида АВ1^B2^…^Bn , где А и В это предикаты без отрицаний. А- заголовок, а конъюнкция – тело выражения. Любое логическое выр-е м-но привести к виду Хорн. Клоза. likes(masha,X):-green(X) – маша любит все зеленое; likes(sasha,X):-likes(masha,X)- Саша любит все то что любит маша.
Запросы и цели: дав прологу факты и правила можно задавать запрос или цель . likes(masha,flowers)- нравятся ли маше цветы (yes); likes(sasha,X) – что любит Саша (X=flowers, X=tree)
Переменные: позволяют описывать факты и правила, относящ-ся к классам объектов, начинаются с заглавн буквы или подчеркивания. Константы запис-ся с маленькой буквы или исп-ся кавычки. Константы определ конкретн объекты (sasha,”Sasha”). Анонимные перем (обозн. знаком подчерк-я _) пр. parent(dima,kostya). parent (sasha,nina). Требуется узнать какие люди явл родител без инф о детях. Запрос: parent (X,_).
Осн. разделы: доменов (domains) – тип аргументов предикатов; предикатов (predicates) – объявл все использ предик (просто выписыв) и домены их аргументов. Предикаты задают факты и правила. Имя предикатаначин со строчн или заглавной буквы., м-т исп-ся цифры и знак подчеркивания; предложений (clauses) – располагаются все факты и правила; цели (goal) – описыв запрос. Пример: записать на прологе «все люди смертны, Сократ человек, следовательно Сократ смертен»
Domains – описание типа
X=symbol Х-переменная
Predicates-объяляются все испол-мые предикаты
person (X) человек
mortal(X)смертн
clauses раздел предложений
person (socrates). факт
mortal(X):-person(X). правило
goal раздел целей
mortal(socrates). Запрос смертен ли Сократ
37.Экспертные системы – это пр-ма, кот замен эксперта в конкр предм обл. Возможности:1)рассуждают эвристически,исп-уя для получ. реш-ия несоверш-ые знания.2)отслеживают свои процессы рассуж-ия,выводя промежуточные рез-ты и отвечая на вопросы о процессе решения.3)позв-ют модифицировать базу знаний.
Задачи реш-ые с пом ЭС: интерпретац данных (описан ситуац по инф-ии поступ от датчиков PROSPECTOR- рудоносность районов), диагностика (выявл причины неисправного функц-я систем MYCIN-диагн бакт инф), Мониторинг (сравнение рез-тов набл-я с ожидаемыми RECTOR-набл за ат реакт), проектирование ( XCON-выб оптимальной конфигур комп), прогноз (WILLARD –прогноз погоды), обучение (дигнос-ие и подсказ. прав. решение GUIDON-обуч студ медиков), поддержка принят-я реш (обесп лицо приним-ее реш необх инф). Структура ЭС (рис):
БЗ-база знаний, центральная часть ЭС, содерж правила, методы и знания для реш зад в даннн предм обл. часто делится на БЗ и БД, где хранятся факты.
МЛВ-маш лог вывода, позвол исп БЗ так, чтобы м было получ разумные заключ.
МО- модуль объяснен- сопров реш-е комментар.
МПЗ-мод приобр знаний, изменяет содерж БЗ и БД. Знания о предметной области обеспечивает эксперт. Наиб проблему при разработке ЭС предст проц получ знаний у эксперта. Больш часть знан ост личн собст эксп, т.к. нигде не докум, а эксп знает больше чем осознает. Поэтому сущ-ет проф-я – инженер по знаниям.
Этапы разработки ЭС: 1. идент пр-мы - Уточняется задача, планируется ход разработки ЭС, происходит знакомство и обучение членов коллектива разработчиков, а также создание неформальной формулировки проблемы. (эксп, инженер, польз-ль) 2. извл зн-й - получение инженером по знаниям наиболее полного представления о предметной области и способах принятия решений в ней (инж, экс) 3. структур-е зн. - разработка неформального описания знаний о предметной области в виде графа, таблицы, диаграммы или текста, которое отражает основные концепции и взаимосвязи между понятиями предметной области (инж) 4. формализ-я знаний - разработка базы знаний на языке представления знаний (продукционные модели, семантические сети, фреймы, объектно-ориентированные языки) (инж, програмист) 5. реализация - разработка программного комплекса, демонстрирующего жизнеспособность подхода в целом (прогр-т) 6. тестиро-е - проверяется работа программ ЭС с целью приведения в соответствие с реальными запросами пользователей (э,польз,инж,прогр-т).
Средства разработки экспертных систем
Различают следующие типы средств разработки ЭС: 1) языки программирования; 2) языки представления знаний (языки инженерии знаний); 3) средства автоматизации разработки (проектирования); 4) оболочки ЭС.
При разработке реальных экспертных систем в большинстве случаев используются так называемые языки искусственного интеллекта типа Лисп и Пролог. Однако в последнее время наметился переход к использованию языков традиционного программирования (С, C++ и т.п.)
38. Нейронные сети.
Нейронная сеть – раздел иск-го интеллекта, в к-м для обработки сигналов исп-ся явления, аналогичные происходящим в нейронах живых существ. История: 1943-Уильям Маккалок, У.Питтс предлож модель нейрона (нерв клеек мозга, 1949- Хебб. способы обуч нейр сети, 1969-М.Минский, С.Пейперт напис книгу «Персептроны», вней они похорон все перспект НС, нач 80х – новый рассвет НС.(нов мод нейтронов, нов структ НС, нов спос обуч).
Биол основ. (рис нейрона:тело, аксон-выход, дендриты-входы, синапс.Из тела выходят 2 вида отростков:тонкие-дендриты,долее толстые аксон,входные сигнала поступают ч/з синапсы,наход-ся на дендритах или теле.Выходной сигнал передается аксону ч/з колатералы). Принцип действ: электрохим сигн попад в тело клетки ч/з синапсы на дендритах, измен велич его энегет потенц. Один и тот-же сигн прох ч/з разн синапсы м оказ разн дейсв-е на клетку (увел или уменьш потенциал) возбужд или тормозящ дейс-е. если накопл потенц клетки превыш некотор порогов зн-е, на вых (аксоне) появл сигн, перед другим клеткам. (tсраб=1-2 мс: Е=-70 мв...+3мв). Мн-во клеток работают параллельно - быстродействие. В мозге чела – 1011 нейронов, каждый связан еще с 1000-10000 других. Поэтому несмотря на на малое быстродействие нейронов, паралелльная обработка инф-ии множеством элементовведет к горомной скорости решения задач.Большое число нейронов и свзей м/у ними увелич. надежность нейронной сети.
Обобщенная модель:
W – вес нейтрона, f – фу-я активац, х0- сигн поляриз, определ-й порог срабат.
Входные сигналы хi суммир-ся в нейроне с учетом весовых коэф-тов Wij Сумма поступает на вход функционального блока f (U), вход к-го явл-ся выходным сигналом нейрона. Работа нейрона м.б. описана ф-лой:
. В зав-ти от вида ф-и активации f, различают неск моделей нейронов.
Модели: 1) персептрон f(u)={0,u<0; 1,u>=0. (пороговая ф-я активации). 2) сигмоидальный (ф-я актив-и непрерывная). М.б.униполярной f(u)=1/(1+e-u) и биполярной f(u)=tanh (u).
Преимущества – дифференцируемость, к-я исп-ся при обуч-и. 3) WTA-нейрон. Здесь реализ-ся простое суммирование с учетом весовых коэф-тов. На выходе группа конкурир-х нейронов имеет блок сравнения. У кого сумма больше, тот получает1, остальн – 0.
Отдельные нейроны объед-т в сети. Слой – это несколько несвяз м/у собой, нейронов, располож в одной плоск.
39 Генетические алгоритмы. Определение. Схема классического генетического алгоритма. Области применения классических генетических алгоритмов.
Г.А. – это методы поиска решений сложных задач, используя принципы биолог. эволюции (Изменчивость, отбор, наследственность).
Первоначально случайным образом генерируется популяция решений задачи. Далее в ходе решения наименее подходящие решения устраняются наиболее вероятные сохраняются скрещиваются, и дают потомство еще более подходящие решения. И так до тех пор пока не будет достигнуто оптимальное или близкое к нему решение.
Рассмотрим схему Г.А.:
1 – инициализация
2 – оценка
3 – отбор
4 – скрещивание
5 - мутация
Каждый этап имеет множество вариантов реализации. Рассмотрим классический Г.А.
Пример: Дана функция . . Наитии максимум. Для эффективной работы Г.А. возможные решение кодируется двоичными строками – хромосомами, а каждый их отдельный бит – ген. Теперь мы ищем оптимальное решение не во множестве {0,1,2…15}, а во множестве {0000, 0001, 0010…1111}.
1111|11111100 При этом не все пары подвергаются скрещиванию. Это происходит с некоторой вероятностью 0,6≤ρ≤1. Если особи скрещиваются, то в следующую популяцию переходят их потомки, иначе переходят сами особи.
Применение:
Обучение нейронных сетей.