26786

Задачи линейного программирования

Домашняя работа

Математика и математический анализ

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

Русский

2013-08-18

432.5 KB

4 чел.

Задачи линейного программирования

Нужно найти  экстремальное значение линейной функции F от нескольких аргументов. Область поисков ограничена группой линейных неравенств. Получается вроде  как «выпуклый многогранник» в  n-мерном пространстве, внутри которого можно перемещаться  в поисках лучшего значения функции F. Решение лежит на границе.  Есть стандартные программы решения.

Задачи линейного программирования

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

Формально общая задача линейного программирования понимается как задача поиска экстремума скалярной линейной функции цели F вектора управляемых переменных X = (X1, ... ,Xn):

  F(X) = C1*X1 + ... + Cj*Xj + ... + Cn*Xn -> extr;

при линейных функциональных ограничениях:

   Ai1*X1 + ... + Aij*Xj + ... + Ain*Xn (Ri) Bi,  i = 1,..,m

и прямых ограничениях по управляемым параметрам:

   Xj > или = 0,     j = 1,...,n,

где Ri - любые из отношений < ; > ; = или их комбинации.

Информационные системы. Основные понятия. Корпоративные информационные системы. Структура КИС

Информационная система (ИС) – это прикладная программная система, предназначенная для сбора, хранения, поиска и обработки текстовой и/или фактографической информации. Подавляющее большинство ИС работает в интерактивном режиме, т.е. в режиме диалога с пользователем.

В общем случае типовые программные компоненты ИС включают: диалоговый ввод-вывод, логику диалога, прикладную логику обработки данных, логику управления данными, операции с файлами и/или БД.

Можно выделить три наиболее существенных фактора, оказавших влияние на развитие ИС в последние годы:

  1.  новый подход к программированию: с конца 90-х годов ООП фактически вытеснило модульное; методы построения объектных моделей непрерывно совершенствуются. Внедрение ООТ технологий программирования существенно сокращает сроки разработки сложных ИС, упрощает их поддержку и развитие;
  2.  развитие сетевых технологий: локальные ИС повсеместно вытесняются клиент-серверными и много-уровневыми ИС;
  3.  развитие сети Интернет: появилась возможность работы с удаленными подразделениями, возможность обслуживания покупателей через Интернет, возможность использовать Интернет-технологии в интрасетях предприятия (так называемые интранет-технологии).

Корпоративные ИС ориентированы на крупные компании и могут поддерживать территориально разнесенные узлы или сети. В основном они имеют иерархическую структуру из нескольких уровней. Для таких систем характерна архитектура клиент-сервер со специализацией серверов или многоуровневая архитектура. При разработке таких ИС можно использовать те же серверы БД, что и при разработке групповых ИС. Однако в крупных корпоративных ИС наибольшее распространение получили серверы Oracle, DB2 и Microsoft SQL Server.

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

В составе КИС можно выделить две относительно независимые составляющие:

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

Классификация моделей данных

Одними из основополагающих в концепции баз данных являются обобщенные категории «данные» и «модель данных».

Понятие «данные» в концепции баз данных — это набор конкретных значений, параметров, характеризующих объект, условие, ситуацию или любые другие факторы. Примеры данных: Петров Николай Степанович, $30 и т. д. Данные не обладают определенной структурой, данные становятся информацией тогда, когда пользователь задает им определенную структуру, то есть осознает их смысловое содержание. Поэтому центральным понятием в области баз данных является понятие модели. Не существует однозначного определения этого термина, у разных авторов эта абстракция определяется с некоторыми различиями, но тем не менее можно выделить нечто общее в этих определениях.

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

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

Рис. 1.4 . Классификация моделей данных

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

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

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

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

Модели, основанные на языках разметки документов, связаны прежде всего со стандартным общим языком разметки — SGML (Standart Generalised Markup Language), который был утвержден ISO в качестве стандарта еще в 80-х годах. Этот язык предназначен для создания других языков разметки, он определяет допустимый набор тегов (ссылок), их атрибуты и внутреннюю структуру документа. Контроль за правильностью использования тегов осуществляется при помощи специального набора правил, называемых DTD-описаниями, которые используются программой клиента при разборе документа. Для каждого класса документов определяется свой набор правил, описывающих грамматику соответствующего языка разметки. С помощью SGML можно описывать структурированные данные, организовывать информацию, содержащуюся в документах, представлять эту информацию в некотором стандартизованном формате. Но ввиду некоторой своей сложности SGML использовался в основном для описания синтаксиса других языков (наиболее известным из которых является HTML), и немногие приложения работали с SGML-документами напрямую.

Гораздо более простой и удобный, чем SGML, язык HTML позволяет определять оформление элементов документа и имеет некий ограниченный набор инструкций — тегов, при помощи которых осуществляется процесс разметки. Инструкции HTML в первую очередь предназначены для управления процессом вывода содержимого документа на экране программы-клиента и определяют этим самым способ представления документа, но не его структуру. В качестве элемента гипертекстовой базы данных, описываемой HTML, используется текстовый файл, который может легко передаваться по сети с использованием протокола HTTP. Эта особенность, а также то, что HTML является открытым стандартом и огромное количество пользователей имеет возможность применять возможности этого языка для оформления своих документов, безусловно, повлияли на рост популярности HTML и сделали его сегодня главным механизмом представления информации в Интернете.

Однако HTML сегодня уже не удовлетворяет в полной мере требованиям, предъявляемым современными разработчиками к языкам подобного рода. И ему на смену был предложен новый язык гипертекстовой разметки, мощный, гибкий и, одновременно с этим, удобный язык XML. В чем же заключаются его достоинства?

XML (Extensible Markup Language) — это язык разметки, описывающий целый класс объектов данных, называемых XML-документами. Он используется в качестве средства для описания грамматики других языков и контроля за правильностью составления документов. То есть сам по себе XML не содержит никаких тегов, предназначенных для разметки, он просто определяет порядок их создания.

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

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

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

Методология RAD

Одним из возможных подходов к разработке ПО в рамках спиральной модели ЖЦ является получившая в последнее время широкое распространение методология быстрой разработки приложений RAD (Rapid Application Development). Под этим термином обычно понимается процесс разработки ПО, содержащий 3 элемента:

  •  небольшую группу разработчиков (от 3 до 7 человек), выполняющих работы по проектированию отдельных подсистем ПО. Это обусловлено требованием максимальной управляемости коллектива;;
  •  короткий, но тщательно проработанный производственный график (от 2 до 6 мес.);
  •  повторяющийся цикл, при котором разработчики, по мере того, как приложение начинает обретать форму, запрашивают и реализуют в продукте требования, полученные через взаимодействие с заказчиком.

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

Жизненный цикл ПО по методологии RAD состоит из четырех фаз:

  •  анализа и планирования требований;
  •  проектирования;
  •  построения;
  •  внедрения.

Методология RAD неприменима для построения сложных расчетных программ, операционных систем или программ управления космическими кораблями, т.е. программ, требующих написания большого объема (сотни тысяч строк) уникального кода.

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

Основные принципы методологии RAD:

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

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

Классификация моделей по способу реализации

По способу реализации

  •  Физические модели. Модели, воспринимаемые органами чувств человека (зрение, слух, обоняние)
  •  Нефизические модели. Модели, воспринимаемые умом, интеллектом человека: концептуальное моделирование (управление проектами), математическое моделирование (ТАУ, управление),  ситуационное моделирование (маркетинг), имитационное моделирование.

Физические модели. Два основных свойства (подхода) к созданию физических моделей:

1) Способ реализации. Физические модели основаны на использовании эффекта масштаба в случае возможности пропорционального изменения всего комплекса изучаемых свойств. Примеры: манекены в ателье, игрушки, глобус, статические макеты зданий и сооружений в архитектуре при планировке, полномасштабные макеты на военных учениях.

2) Точность – степень соответствия. Физическое моделирование, при котором модель и моделируемый объект а) представляют собой реальные объекты или процессы в) единой или различной физической природы, причем между процессами в объекте-оригинале и в модели в) выполняются некоторые соотношения подобия, вытекающие из схожести физических явлений;

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

Нефизические модели.

1) Математические модели представляют собой систему математических уравнений или неравенств адекватно описывающую изучаемое явление или процесс.

2) Ситуационной моделью называют описание ситуации, в которой предстоит действовать изучаемому объекту, 1) часто не содержащее полной информации и 2) предполагающее включение человека или животного в качестве изучаемого объекта. Пример: деловые игры, тренажеры, ролевые игры, спектакли.

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

Активный режим FTP

Действия сервера и клиента:

  1.  Клиент устанавливает связь и посылает запрос на 21 порт сервера с порта N (N>1024)
  2.  Сервер посылает ответ на порт N (N>1024) клиента
  3.  Сервер устанавливает связь для передачи данных по порту 20 на порт клиента N+1