Сайфутдинова Наталья Анатольевна
Sayfutdinova Natalia Anatolievna Ростовский государственный строительный университет, кафедра высшей математики Rostov State University of Civil Engineering, cathedra of high mathematics Доцент Professor 05.13.18 - Математическое моделирование, численные методы и комплексы программ
E-Mail: [email protected]
Численные алгоритмы решения некоторой задачи оптимального управления и их реализация в виде программного комплекса
Numerical algorithms for the solution of a problem of optimal control and their implementation in the form of software system
Аннотация: При моделировании экономического развития с учётом влияния эффективности инвестиций возникла задача оптимизации. Эту задачу можно отнести к классу задач оптимального управления с терминальной целевой функцией. Для её решения разработаны численные алгоритмы, основанные на методах безусловной оптимизации. Эти алгоритмы реализованы в виде программного комплекса, который позволяет оптимизировать распределение инвестиций в научно-исследовательский комплекс.
The Abstract: In modeling of economic development with the influence of investment performance optimization problem arose. This problem can be attributed to the class of optimal control problems with terminal objective function. For its solution developed numerical algorithms based on the methods for unconstrained optimization. These algorithms are implemented in a software package that allows you to optimize the allocation of investment in research and development complex.
Ключевые слова: Оптимальное распределение ресурсов; управление основными фондами и трудовыми ресурсами; задача оптимизации с ограничениями в виде равенств и неравенств.
Keywords: Optimal distribution of resources; мanagement of fixed capital and manpower; problem of optimization with restrictions in the form of equalities and inequalities.
1. Постановка задачи
В работе [3] рассматривается модель инвестиционного процесса, затрагивающего научно-исследовательский сектор. Этот процесс касается предприятия (отрасли промышленности, экономики в целом), деятельность которого связана с производством некоторого продукта, и основывается на некоторой технологии, уровень которой напрямую связан с функционированием научно-исследовательского сектора. Для описания деятельности предприятия будем использовать производственную функцию Кобба-Дугласа и рассматривать её на промежутке [ 10, tn ], n е N. В качестве управляющего параметра выступает доля выпуска st, инвестируемая в НИС на промежутке [ tt, tt+i ], причём выделяемая из средств, ранее инвестируемых в
основной капитал, г = 0,1,..., п — 1. Тогда на последующем промежутке времени технология, связанная с рассматриваемым производством, изменится и приведёт к изменению качества основных фондов, что отразится на увеличении коэффициента эластичности по фактору капитал, поэтому можно считать, что а=аК {р^)- возрастающая функция. Таким образом, возникает задача оптимального управления, максимизируемым параметром в которой выступает величина Кп = К{¡п ) - результат решения п задач Коши:
К (¿0 )=К0 — начальное условие для решения задачи Коши на отрезке [ 10,
а =ак {^), Ц = Щ), ^ = ак^Гч = 0,.., п — 1,
К{ti) = Ki,г = 1,..,п — из решения
соответствующей задачи Коши : {1)
г]К
= {~—р—1)4—1Ка—10) Ц-11—а—1 —тК0Xtе [tг—l, t1 ] г = 1,...,п
dt
s* < s**, s*,s** е (0;1) max K — ?
/ \ n—1 * ** n
J i=0\ s < st < s
Можно считать, что для решения этой задачи необходимыми исходными данными являются только значение капитала и выпуска в начальный момент времени, поэтому эта задача относится к классу задач оптимального управления с закреплённым левым концом. Данная задача может быть решена методами покоординатного и градиентного спуска, методом случайного поиска (в отличие от алгоритмов, описанных, например, в [2]).
2. Алгоритм решения задачи оптимального управления (1) методом покоординатного спуска
Основные положения:
2.1. На входе: количество лет n (или промежутков времени), рассматриваемых в задаче; данные об объёме основных фондов Ki, i = 0,...,n — 1, объёме трудовых ресурсов L, i = 0,...,n — 1, объёме выпуска Ft, i = 0,...,n — 1, объёме инвестиций в НИС
* **
Vi, i = 0,...,n — 1, известные из статистических данных предельные величины s , s , необходимые для выбора элементов искомой последовательности, а так же величина s - общий объём инвестиций в основные фонды и НИС.
2.2. Обращение к вспомогательному блоку программного комплекса для получения аппроксимирующих функций:
а) a = a(Vt) = a(siFi), A = A(t), t = t,i = 0,..,n,;
б) по желанию пользователя можно получить L = L(t) , что позволяет использовать полученный алгоритм для корректировки инвестиционного процесса для момента времени
t > tn.
2.3. Применение процедуры покоординатного спуска:
а) сначала вычисляется начальное значение Кп = Кп (( si) ”=0), (si У=о: si = s*, для этого используется отдельная подпрограмма-функция для вычисления итогового значения объёма основных фондов в зависимости от заданной последовательности (5 )П= 0;
б) дальнейшие шаги алгоритма состоят в последовательном изменении элементов последовательности (si )П= 0, так, чтобы выполнялось условие 5 < < 5 и так, чтобы новое
значение Кп((5) '=0) > К п и больше значения К п, посчитанного на предыдущем шаге.
2.4. После проведения этой процедуры получаем на выходе некоторую последователь-)п-1
П=0
ность (si )п= 3, соответствующую оптимальному значению Кп.
3. Алгоритм решения задачи оптимального управления (1) методом градиентного спуска
Пункты 3.1. и 3.2. аналогичны пунктам из предыдущего алгоритма.
3.3. а) В качестве начального значения К0 рассмотрим значение, соответствующее
*
ситуации, когда все 5^ ¡=0,...,п-1 фиксированы, т.е. 5 = ,i = 0,..., п — 1.
б) Т.к. К п = К(7п ) - результат решения п задач Коши при указанных выше условиях, то вычисление градиента указанной функции в явном виде не представляется возможным. Опишем процедуру нахождения его численного значения. Величина частной производной К по ьтой компоненте последовательности (si )г=01 в точке (si )г”01 может быть приближённо вычислена по следующей конечно-разностной формуле:
ЭКп Кп(50,...,£ ,,£ + Н,£,,,...,5п,) — Кп(50,...,5,,,-у.-.,,...,5п,)
___п__ п V 0 * ? г—1 * г_* г+1* * п—\у_п\ ^ * г—1 * г' г+1 * * п—1 у
Э5 Н
где Н - некоторое малое число. Дальнейшие шаги алгоритма состоят в последовательном изменении элементов последовательности (si ^=0 в направлении градиента, так чтобы
выполнялось условие 5 < < 5 .
3.4. После проведения этой процедуры получаем на выходе некоторую последователь-)п—1
П=0
ность (si )"=01, соответствующую оптимальному значению Кп.
4. Программный комплекс «Моделирование распределения инвестиций в экономической системе»
Для реализации полученных эффективных алгоритмов создан исследовательский программный комплекс «Моделирование распределения инвестиций в экономической системе».
Данный программный комплекс предназначен для определения инвестиционной политики в некоторой экономической системе. Он состоит из двух блоков: вспомогательного и основного. На рисунке 1 представлена схема программного комплекса. Рассмотрим подробнее его отдельные элементы.
Основной блок связан с реализацией численных алгоритмов решения задачи оптимального управления, изложенных в разделах 2 и 3. Цель: используя исходные данные, харак-
*
Главный редактор - д.э.н., профессор К.А. Кирсанов тел. для справок: +7 (925) 853-04-57 (с 1100 - до 1800) Опубликовать статью в журнале - http://publ.naukovedenie.ru
теризующие деятельность рассматриваемой системы, получить набор параметров, оптимизирующих процесс инвестирования научно-исследовательского сектора.
В качестве исходных данных необходимо задать:
1) amu - коэффициент амортизации, или доля капитала, выбывающего с течением времени 2) Ngod - количество лет в рассматриваемом периоде;
3) массив F - объём валового продукта за Ngod лет (в денежных единицах), иначе говоря, это выпуск данной экономической системы;
4) массив K - объём основных фондов за Ngod лет (в денежных единицах);
5) массив L - объём трудовых ресурсов за Ngod лет (в денежных единицах);
6) массив V (или aInv) - объём средств, израсходованных на науку за Ngod лет (в денежных единицах).
Далее действия программы могут различаться:
A) по желанию пользователя можно далее при вычислениях пользоваться только статистическими данными, а аппроксимировать только alfa= alfa(aInv);
B) можно найти функции, аппроксимирующие значения A - коэффициента функции Кобба-Дугласа и L=L(t). Аппроксимации строятся в дополнительном блоке с помощью стохастического метода минимизации функционала - метода глобального случайного поиска. При этом результаты работы этого блока можно выводить в отдельный файл или просто использовать при дальнейших вычислениях.
Предлагается три способа решения поставленной задачи: метод покоординатного спуска (алгоритм изложен в разделе 2), метод градиентного спуска (особенности реализации которого описаны в разделе 3), метод глобального случайного поиска - МГСП (является стандартным методом нахождения глобального максимума функционала). Для исключения ситуации зацикливания может быть использована, например, методология, описанная в [1] .
Программный комплекс «Моделирование распределения инвестиций в экономической системе»
Рис. 1. Схема программного комплекса
Далее пользователь выбирает метод решения и получает следующие величины:
1) массив sn из Ngod элементов - доли выпуска, инвестируемые в научноисследовательский сектор, приводящие к максимальному выпуску данной экономической системы;
2) результирующее значение выпуска К - оптимальное значение, соответствующее оптимизирующей последовательности sn.
Рис. 2. Работа основного блока программного комплекса
5. Апробация программного комплекса
В таблице 1 приводятся результаты тестирования предложенных алгоритмов и созданного программного комплекса на данных по экономике нашей страны за 1961-1985 гг. Были обработаны следующие данные: К, /=0,..., п-1 - основные фонды за каждый год (в млрд. руб.), Ьи 1=0,...,п-1 - объем трудовых ресурсов (пересчитанный через среднюю зарплату в млрд. руб.), ^-, /=0,..., п-1 - валовой продукт (в млрд. руб.), ¥и 1=0,...,п-1 - расходы на науку из госбюджета и других источников (в млрд. руб.), п=25. Из статистических данных дополнительно
были получены следующие параметры: ¡1 = 0.05; 5 = 0.015; 5 = 5 = 0.165. Во вспомога-
тельном блоке программного комплекса были получены следующие аппроксимирующие функции:
а=-
0.6 -V + 0.615
V + 6.95 І(г)=61+5г + 0.18г2 -0.0015г3; Л(г) = 2.99 - 0.0363 г.
Таблица 1
Изменение основного капитала в зависимости от инвестиционной политики
Годы §1, 1=0,п-1, по стат. данным Основные фонды, (в млрд. руб.), по стат. данным Б;, 1=0,...,П-1, полученные методом градиентного спуска Основные фонды, (в млрд. руб.), полученные методом градиентного спуска
1961 0,015 442 0,0373 475
1962 0,015 477 0,0348 513
1963 0,015 515 0,0337 555
1964 0,015 557 0,0329 602
1965 0,015 601 0,0323 652
1966 0,015 649 0,0315 706
1967 0,015 700 0,0309 764
1968 0,015 757 0,0303 827
1969 0,015 814 0,0297 894
1970 0,015 860 0,0290 966
1971 0,015 914 0,0254 1043
1972 0,015 972 0,0280 1124
1973 0,015 1082 0,0275 1210
1974 0,015 1150 0,0270 1301
1975 0,015 1256 0,0266 1396
1976 0,015 1345 0,0262 1496
1977 0,015 1437 0,0257 1600
1978 0,015 1537 0,0254 1709
1979 0,015 1638 0,0250 1822
1980 0,015 1742 0,0246 1939
1981 0,015 1851 0,0243 2060
1982 0,015 1968 0,0240 2184
1983 0,015 2092 0,0237 2312
1984 0,015 2234 0,0232 2443
1985 0,015 2333 0,0213 2619
Таким образом, управляя инвестиционным процессом, и, выделяя на научные исследования и разработки указанные доли валового продукта, можно получить значение итогового накопления капитала равное 2619 млрд. руб. что на 12,25% превышает реальное значение капитала в 1985 году, которое составило 2333 млрд. руб.
Кроме того, созданный программный комплекс был апробирован на соответствующих статистических данных по регионам России. Например, получена аппроксимации необходимых функций по экономике Ростовской области за период с 1995 по 2007 г. На конкретном статистическом материале получилась следующая зависимость:
a= bVi + С, b = 0.4459, c = 0.0811, d = 2.493.
V i + d
При этом, величина коэффициента детерминации R = 0.9927. Поэтому данная формула приближения для коэффициента эластичности по фактору капитал обладает очень высокой точностью.
6. Выводы
Результаты работы комплекса, созданого в среде программирования Visual Studio 2008 с использованием языка программирования C++, сравнивались, во-первых, со стандартными методами в среде Maple, при этом точность построенного решения оказалась сопоставимой
_3
(относительная погрешность не выше 10 ), однако время вычисления в среде C++ в 5-10 раз
быстрее, в зависимости от количества значащих цифр (от 4 до 6); во-вторых, с прямым методом полного перебора (при сопоставимой точности время счёта в предложенных алгоритмах так же сокращается на порядок).
ЛИТЕРАТУРА
1. Бурякова Н.А., Чернов А.В. Методология обнаружения зацикливания фрагментов программ на основе верификации моделей// Обозрение прикладной и промышленной математики. - М., т.17, вып. 3, 2010. С.387-388.
2. Назарько О.В., Павлов И.В. Рекуррентный метод построения слабых деформаций по процессу плотностей в рамках модели стохастического базиса, снабжённого специальной хааровской фильтрацией. // Вестник РГУПС, 2012, N 1.
3. Сайфутдинова Н.А. Оптимальное управление в модели эндогенного роста замкнутых экономических систем // Вестник ДГТУ, 2008, Т. 8, N 4(39) - С. 366-375.