рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Избыточные решения

Избыточные решения - раздел Программирование, Обзор языков логического программирования Избыточные Решения. При Построении Программ На Прологе Следует Обратить Внима...

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

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

Наличие избыточных решений из-за возвратов может вызвать в предельном случае экспоненциальный рост времени работы программы. При решении конъюнкции n целей, каждая из которых имеет одно избыточное решение, в случае возвратов может быть порождено 2n решений, что приводит к изменению оценки времени работы программы от полиноминальной или даже линейной к экспоненциальной. Одна из причин появления избыточных решений в программах на Прологе состоит в наличии различных правил, пригодных для одного и того же случая. Другая причина, приводящая к избыточным решениям, состоит в рассмотрении слишком большого числа специальных случаев.

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

– Конец работы –

Эта тема принадлежит разделу:

Обзор языков логического программирования

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

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Избыточные решения

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Чистый Полог
Чистый Полог. Взаимосвязь логического программирования и языка Пролог напоминает взаимосвязь лямбда-исчисления и языка Лисп. Оба этих языка являются конкретной реализацией абстрактных вычислительны

Сравнение с традиционными языками программирования
Сравнение с традиционными языками программирования. Язык программирования характеризуется присущими ему механизмами управления и обработки данных. Пролог как универсальный язык программирования мож

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

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

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

Эффективность программ на Прологе
Эффективность программ на Прологе. В практическом программировании на Прологе необходимо обращать внимание на эффективность программ. Установим критерии оценки программ. Основной оцениваемый

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

Язык логического программирования KL
Язык логического программирования KL. KL0 от англ. kernel-language version 0 ядро-язык версии 0 язык, в основу которого положено расширение языка логического программирования Пролог. Среди особенно

Типы данных KL
Типы данных KL. Рассмотрим в общих чертах некоторые базовые типы данных языка. К ним относятся символы, целые и действительные числа, строки и др. Символы в основном предназначены для представления

Язык программирования ShapeUp
Язык программирования ShapeUp. ShapeUp - ещ один язык логического программирования, в основу которого положен Пролог, расширенный средствами сопоставления строк. В ShapeUp образцы строк рассматрива

Lisp язык функционального программирования
Lisp язык функционального программирования. Почему я решил заострить внимание на Лиспе. Дело в том, что кроме функционального программирования которое является основным в Лиспе в этом языке

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

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

Используемая литература
Используемая литература. И. Братко Программирование на языке Пролог для искусственного интеллекта. М Мир 1990г. 2. Язык Пролог в пятом поколении ЭВМ. Сборник статей под редакцией Ильинского.

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги