Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
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. Если особи скрещиваются, то в следующую популяцию переходят их потомки, иначе переходят сами особи.
Применение:
Обучение нейронных сетей.