Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






  • Как продвинуть сайт на первые места?
    Вы создали или только планируете создать свой сайт, но не знаете, как продвигать? Продвижение сайта – это не просто процесс, а целый комплекс мероприятий, направленных на увеличение его посещаемости и повышение его позиций в поисковых системах.
    Ускорение продвижения
    Если вам трудно попасть на первые места в поиске самостоятельно, попробуйте технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Если ни один запрос у вас не продвинется в Топ10 за месяц, то в SeoHammer за бустер вернут деньги.
    Начать продвижение сайта
  • Лекция 1






    Модуль 1. Приемы программирования на ПРОЛОГе.

     

    Тема 1. Основные понятия и определения логического программирования.

    Императивный и декларативный стили программирования. Этапы программирования на ПРОЛОГе. Факты и правила. Предикат в ПРОЛОГе. Структура ПРОЛОГ-программы. Алфавит языка. Термы. Константы и переменные. Запись фактов и правил. Цели. Конъюнкция целей. Структуры и деревья. Функторы. Альтернативное задание типов.

     

    ЛЕКЦИЯ 1

     

    По характеру семантики (т.е. модели вычислительного процесса) в языках программирования можно выделить два основных наклонения – повелительное (императивное, представленное операторами, командами, предписаниями) и изъявительное (декларативное, описательное). В одних языках программирования преобладает описание действий, алгоритма, т.е. процесса, позволяющего получить результат. Программа является строгой последовательностью инструкций (операторов и выражений). Соответствующие языки называют императивными (процедурными), (FORTRAN, BASIC, ALGOL, PL/1, PASCAL, C, ADA). Другие языки программирования предполагают не столько построение (вычисление) результата, сколько описание (декларацию) его свойств в виде функциональных и логических зависимостей; на основе этой информации система программирования сама должна построить алгоритм. Такие языки называют не процедурными. Не процедурные языки в свою очередь делятся на декларативные и проблемно-ориентированные языки.

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

     

     

    Структурной единицей логического программирования выступает выражение, которое, в зависимости от значений аргументов, может принимать только два значения – истина и ложь. Самым известным языком логического программирования является Prolog.

    Структурной единицей функционального программирования выступает функция, а процесс вычисления трактуется как вычисление значений функций. Наиболее известным языком функционального программирования является Lisp.

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

     

    Рассмотрим некоторые наиболее важные применения искусственного интеллекта.

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

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

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

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

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

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

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

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

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

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

     

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

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

     






    © 2023 :: MyLektsii.ru :: Мои Лекции
    Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
    Копирование текстов разрешено только с указанием индексируемой ссылки на источник.