Смекни!
smekni.com

Кондратьевские циклы и компьютерное моделирование экономических систем (стр. 3 из 5)

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

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

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

* форма представления отдельных реквизитов (цифровая, символьная и т.д.);

* количество знаков (разрядов), выделяемых для записи реквизитов исходя из их максимальной значности;

* вид реквизита по его роли в процессе решения задачи (исходный, расчетный, нормативный, справочный и т.п.);

* источник (документ, задача и т.п.) возникновения реквизита.

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

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

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

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

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

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

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

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

* аналитические (вычислительные);

* матричные (балансовые);

* графические (частным видом которых являются сетевые).

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

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

При выборе метода решения задачи предпочтение отдается методу, который наиболее полно удовлетворяет следующим требованиям:

* обеспечивает необходимую точность получаемых результатов и не обладает свойством вырождения (т.е. бесконечного зацикливания на каком-либо участке решения задачи при определенном наборе исходных данных);

* позволяет использовать готовые стандартные программы для решения задачи или ее отдельных фрагментов;

* ориентирован на минимальный объем исходной информации;

* обеспечивает наиболее быстрое получение искомых результатов.

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

Третий этап технологического процесса подготовки решения задач на ЭВМ представляет собой алгоритмизацию ее решения, т.е. разработку оригинального или адаптацию (уточнение и корректировку) уже известного алгоритма.

    Алгоритмизация, как третий этап технологического процесса подготовки решения экономических задач на ЭВМ

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

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

Любой алгоритм обладает следующими свойствами: детерминированностью, массовостью, результативностью и дискретностью.

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

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

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

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

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

Процесс алгоритмизации решения задачи обычно реализуется по следующей схеме:

* выделение автономных этапов процесса решения задачи (как правило, с одним входом и выходом);

* формализованное описание содержания работ, выполняемых на каждом выделенном этапе;

* проверка правильности реализации выбранного алгоритма на различных примерах решения задачи.

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