Разработка нелинейных механизмов коррекции при статистическом имитационном моделировании инвестиционных проектов (на примере ООО "Валест")
Экономическая сущность инвестиций. Классификация детерминированных методов моделирования. Анализ финансово-хозяйственной деятельности предприятия. Общее описание программы. Начисление штрафов за перераспределение инвестиций. Модели оптимизации выбора.
Рубрика | Экономико-математическое моделирование |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 06.03.2013 |
Размер файла | 2,5 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
CFvar=CFplan.*(1+CVCF.*randn(n,Lmax));
INFvar=inflation.*(1+CVINF.*randn(1,Lmax));
Management %Применение механизма управления
Imng=Ivar;
Transaction %Перераспределение инвестиций
Fine=f*sum(sum((Ivar-Imng).*((Ivar-Imng)>0)));
%Определение значения функции штрафов
FINE(s,1)=Fine;
Limitation %Применение механизма ограничения
Correction %Применение механизма коррекции
Discount %Дисконтирование, вычисление параметров
NPV(:,s)=npv;
end
F=mean(FINE);
NPV=mean(NPV,2);
NPVsum=sum(NPV);
if (t==1)||(NPVsum>NPVsumopt)
NPVsumopt=NPVsum;
Mopt=MNG;
end
for i=1:n
if (t==1)||(NPV(i,1)>NPVopt(i,1))
NPVopt(i,1)=NPV(i,1);
Lopt(1,i)=LIM(1,i);
Copt(1,i)=COR(1,i);
end
end
end
end
if MNG(1,1)==Mmax
for k=2:n
if MNG(1,k)<Mmax
MNG(1,k)=MNG(1,k)+1;
for z=1:k-1
MNG(1,z)=1;
end
break
end
end
else MNG(1,1)=MNG(1,1)+1;
end
end
disp('--------------------------------------------------------------------');
disp('Максимально возможные значения чистой приведённой стоимости в проектах:');
for i=1:n
si=num2str(i);
r=num2str(NPVopt(i,1));
str=strcat('№',si,'_',r);
disp(str);
end
disp(' ');
disp('Оптимальные механизмы управления текущим инвестированием в проектах:');
for i=1:n
si=num2str(i);
str=strcat('№',si,'_',Mng(Mopt(1,i),:));
disp(str);
end
disp(' ');
disp('Оптимальные механизмы ограничения максимального объёма инвестирования в проектах:');
for i=1:n
si=num2str(i);
str=strcat('№',si,'_',Lim(Lopt(1,i),:));
disp(str);
end
disp(' ');
disp('Оптимальные механизмы коррекции доходов в проектах:');
for i=1:n
si=num2str(i);
str=strcat('№',si,'_',Cor(Copt(1,i),:));
disp(str);
end
Вспомогательные блоки программы
Вспомогательные блоки не требуют участия пользователя и предназначены для выполнения вычислений в составе других блоков.
Использование тестовых данных
functionData
global n Iplan CFplan Lmax Transfer CVI CVCF CVINF inflation Rsis rmin Aa W E H
clc;
n=3;
L1=23;
L2=7;
L3=15;
Ip1=zeros(1,L1);
Ip2=zeros(1,L2);
Ip3=zeros(1,L3);
CvI1=zeros(1,L1);
CvCF1=zeros(1,L1);
CvI2=zeros(1,L2);
CvCF2=zeros(1,L2);
CvI3=zeros(1,L3);
CvCF3=zeros(1,L3);
for j=1:L1
Ip1(1,j)=74.27+(j-1)*0.04;
CvI1(1,j)=0.037+(j-1)*0.004;
CvCF1(1,j)=0.052+(j-1)*0.003;
end
CFp1=[66.5 73.93 83.17 115.33 138.47 173.21];
CFp1=[CFp1 173.21*ones(1,3) 173.18*ones(1,5) 173.16*ones(1,6) 173.13*ones(1,3)];
for j=1:L2
Ip2(1,j)=25.58+(j-1)*0.15;
CvI2(1,j)=0.037+(j-1)*0.004;
CvCF2(1,j)=0.052+(j-1)*0.003;
end
CFp2=[9.86 25.28 36.08 46.14 46.22 46.30 46.38];
for j=1:L3
Ip3(1,j)=72.8-(j-1)*2.38;
CvI3(1,j)=0.074-(j-1)*0.001;
CvCF3(1,j)=0.0825-(j-1)*0.0005;
end
CFp3=[24.5 37.75 57.92 68.01 67.12 66.22 65.31 64.42 63.53 62.64 61.73 60.83 59.94 59.03 58.14];
Lmax=23;
Iplan=[Ip1;zeros(1,6) Ip2 zeros(1,10);zeros(1,6) Ip3 zeros(1,2)];
Transfer=(Iplan>0);
CFplan=[CFp1;zeros(1,6) CFp2 zeros(1,10);zeros(1,6) CFp3 zeros(1,2)];
CVI=[CvI1;zeros(1,6) CvI2 zeros(1,10);zeros(1,6) CvI3 zeros(1,2)];
CVCF=[CvCF1;zeros(1,6) CvCF2 zeros(1,10);zeros(1,6) CvCF3 zeros(1,2)];
inflation=zeros(1,Lmax);
CVINF=zeros(1,Lmax);
for j=1:Lmax
inflation(1,j)=0.07+0.007*(j-1);
CVINF(1,j)=0.06+0.011*(j-1);
end
Rsis=[0.54; 0.49; 0.36];
rmin=0.12;
clc;
disp('ИСХОДНЫЕ ДАННЫЕ:');
disp('Плановые инвестиции:');
disp(Iplan.');
disp('Разрешения на передачу инвестиций:');
disp(Transfer.');
disp('Плановыедоходы:');
disp(CFplan.');
disp('Коэффициенты вариации инвестиций:');
disp(CVI.');
disp('Коэффициенты вариации доходов:');
disp(CVCF.');
disp('Инфляция:');
disp(inflation.');
disp('Коэффициенты вариации инфляции:');
disp(CVINF.');
disp('Коэффициенты системного риска:');
disp(Rsis.');
disp('Ставка доходности по безрисковым вложениям:');
disp(rmin);
disp('Оптимизировать параметры механизмов управления?');
o=input('1 - да, 2 - нет ');
if o==1
W=input('Задайте нижнюю границу поиска оптимальных значений параметра: ');
E=input('Задайте верхнюю границу поиска: ');
H=input('Задайте шаг поиска: ');
disp('Оптимизация......');
Models_Optimizing
elseAa=[0 0 0; 0 0 0; -1 -1 -1; 0 0 0; -1.4 0 -1.5; -2 -2 -2; -1.8 0 0; 0 0 0];
end
Механизмы управления текущим инвестированием
function Management
global Mng MNG Iplan Ivar inflation INFvar Lmax n Aa
Mng=char(' 1 Инвестирование с учётом отклонения инфляции предшествующего периода от планового значения', ' 2 Обратное взаимодействие с уровнем инвестирования предыдущего периода', ' 3 Обратное динамическое взаимодействие с уровнем инвестирования, отражающим случайное внешнее воздействие', ' 4 Обратное влияние накопленного объёма инвестирования', ' 5 Обратное степенное взаимодействие с уровнем инвестирования предыдущего периода',' 6 Обратное степенное взаимодействие с уровнем инвестирования, отражающим случайное внешнее воздействие',' 7 Обратное степенное влияние накопленного объёма инвестирования',' 8 Отсутствие управления');
for i=1:n
mng=MNG(1,i);
a=Aa(mng,i);
for j=2:Lmax %Применение выбранного механизма управления
if Ivar(i,j-1)>0
switch mng
case 1
Ivar(i,j)=Ivar(i,j)*INFvar(1,j-1)/inflation(1,j-1);
case 2
Ivar(i,j)=Ivar(i,j)*Iplan(i,j-1)/Ivar(i,j-1);
case 3
A=(Iplan(i,j)-Iplan(i,j-1))/(Ivar(i,j)-Ivar(i,j-1));
if A>a
A=a;
elseif A<-a
A=-a;
end
Ivar(i,j)=Ivar(i,j)*(1+A);
case 4
Ivar(i,j)=Ivar(i,j)*sum(Iplan(i,1:j-1))/sum(Ivar(i,1:j-1));
case 5
Ivar(i,j)=Ivar(i,j)^(a*Iplan(i,j-1)/Ivar(i,j-1));
case 6
A=(Iplan(i,j)-Iplan(i,j-1))/(Ivar(i,j)-Ivar(i,j-1));
if A>a
A=a;
elseif A<-a
A=-a;
end
Ivar(i,j)=Ivar(i,j)^(1+A);
case 7
Ivar(i,j)=Ivar(i,j)^(a*sum(Iplan(i,1:j-1))/sum(Ivar(i,1:j-1)));
otherwise
end
end
end
end
Механизмыограниченияобъёмаинвестирования
function Limitation
global Lim LIM Iplan Ivar inflation INFvar B Lmax n
Lim=char(' 1 Фиксированное максимальное относительное перевыполнение планового задания', ' 2 Жёсткое абсолютное ограничение непревышения плановых заданий по инвестированию', ' 3 Коррекция планового уровня с учётом отклонения фактического уровня инфляции предшествующего периода от планового значения', ' 4 Обратное влияние текущей реализации инвестирования в предшествующий период', ' 5 Непосредственное влияние текущей реализации инвестирования в предшествующий период', ' 6 Обратное влияние накопленного объёма инвестирования в предшествующий период',' 7 Обратное влияние динамики инвестирования в предшествующий период',' 8 Отсутствие ограничения');
for i=1:n %Применение механизма ограничения
lim=LIM(1,i);
for j=2:Lmax
if Ivar(i,j-1)>0
switch lim
case 1
b=B(1,i);
if Ivar(i,j)>Iplan(i,j)*(1+b)
Ivar(i,j)=Iplan(i,j)*(1+b);
end
case 2
if Ivar(i,j)>Iplan(i,j)
Ivar(i,j)=Iplan(i,j);
end
case 3
if Ivar(i,j)>Ivar(i,j)*INFvar(1,j-1)/inflation(1,j-1)
Ivar(i,j)=Ivar(i,j)*INFvar(1,j-1)/inflation(1,j-1);
end
case 4
if Ivar(i,j)>Ivar(i,j)*Iplan(i,j-1)/Ivar(i,j-1);
Ivar(i,j)=Ivar(i,j)*Iplan(i,j-1)/Ivar(i,j-1);
end
case 5
if Ivar(i,j)>Ivar(i,j)*Ivar(i,j-1)/Iplan(i,j-1);
Ivar(i,j)=Ivar(i,j)*Ivar(i,j-1)/Iplan(i,j-1);
end
case 6
if Ivar(i,j)>Ivar(i,j)*sum(Iplan(i,1:j-1))/sum(Ivar(i,1:j-1));
Ivar(i,j)=Ivar(i,j)*sum(Iplan(i,1:j-1))/sum(Ivar(i,1:j-1));
end
case 7
A=(Iplan(i,j)-Iplan(i,j-1))/(Ivar(i,j)-Ivar(i,j-1));
if A>0.25
A=0.25;
elseif A<-0.25
A=-0.25;
end
if Ivar(i,j)>Iplan(i,j)*(1+A)
Ivar(i,j)=Iplan(i,j)*(1+A);
end
otherwise
end
end
end
end
Механизмы коррекции текущих значений доходов
function Correction
global Cor COR Iplan Ivar CFvar CFplan Lmax n INFvar inflation
Cor=char(' 1 Непосредственное влияние текущего уровня инвестирования', ' 2 Влияние накопленного объёма инвестирования', ' 3 Динамическое взаимодействие с уровнем инвестирования', ' 4 Последействие предшествующего результата', ' 5 Последействие динамики предшествующего результата',' 6 Обратное динамическое взаимодействие с уровнем инфляции',' 7 Степенное взаимодействие с текущим уровнем инвестирования',' 8 Отсутствие коррекции');
for i=1:n
cor=COR(1,i);
for j=2:Lmax
if CFvar(i,j-1)>0
switch cor
case 1
CFvar(i,j)=CFvar(i,j)*Ivar(i,j)/Iplan(i,j);
case 2
CFvar(i,j)=CFvar(i,j)*sum(Ivar(i,1:j-1))/sum(Iplan(i,1:j-1));
case 3
A=(Ivar(i,j)-Ivar(i,j-1))/(Iplan(i,j)-Iplan(i,j-1));
if A>0.25
A=0.25;
elseif A<-0.25
A=-0.25;
end
CFvar(i,j)=CFvar(i,j)*(1+A);
case 4
CFvar(i,j)=CFvar(i,j)*(1+CFvar(i,j-1)/CFplan(i,j-1));
case 5
if j>2
A=(CFvar(i,j-1)-CFvar(i,j-2))/(CFplan(i,j-1)-CFplan(i,j-2));
if A>0.25
A=0.25;
elseif A<-0.25
A=-0.25;
end
CFvar(i,j)=CFvar(i,j)*(1+A);
end
case 6
if j>1
A=(inflation(1,j)-inflation(1,j-1))/(INFvar(1,j)-INFvar(1,j-1));
if A>0.25
A=0.25;
elseif A<-0.25
A=-0.25;
end
CFvar(i,j)=CFvar(i,j)*(1+A);
end
case 7
A=(Ivar(i,j)/Iplan(i,j));
if A>1.1
A=1.1;
elseif A<0.9
A=0.9;
end
CFvar(i,j)=CFvar(i,j)^A;
end
end
end
end
Механизм перераспределения инвестиций
function Transaction
global Iplan Ivar Transfer n Lmax
Prof=sum((Ivar-Iplan).*((Ivar-Iplan)>=0).*Transfer);
Def=sum((Ivar-Iplan).*((Ivar-Iplan)<0));
K=(Prof>0).*(Def<0);
for j=1:Lmax %Периоды
if K(1,j)==1
for i=1:n %Проекты
if -Def(1,j)>Prof(1,j)
if Ivar(i,j)<Iplan(i,j)
Ivar(i,j)=Ivar(i,j)-(Iplan(i,j)-Ivar(i,j))*Prof(1,j)/Def(1,j);
else
Ivar(i,j)=Iplan(i,j);
end
elseif -Def(1,j)<Prof(1,j)
if Ivar(i,j)>Iplan(i,j)
Ivar(i,j)=Ivar(i,j)+(Ivar(i,j)-Iplan(i,j))*Def(1,j)/Prof(1,j);
else
Ivar(i,j)=Iplan(i,j);
end
end
end
end
end
Дисконтирование
function Discount
global n Lmax rmin INFvar Rsis Ivar CFvar npv pi %pp
d=zeros(n,Lmax);
for i=1:n %Вектор ставок дисконтирования
for j=1:Lmax
d(i,j)=(rmin+INFvar(1,j))*(1+Rsis(i,1));
end
end
dI=zeros(n,Lmax);
dCF=zeros(n,Lmax);
for j=1:Lmax %Дисконтирование
for i=1:n
dI(i,j)=Ivar(i,j)/((1+d(i,j))^(j-1));
dCF(i,j)=CFvar(i,j)/((1+d(i,j))^(j-1));
if isnan(dI(i,j))==true
dI(i,j)=0;
end
if isnan(dCF(i,j))==true
dCF(i,j)=0;
end
end
end
npv=sum(dCF.')-sum(dI.');
pi=sum(dCF.')./sum(dI.');
P=CFvar-Ivar;
sumP=zeros(n,Lmax);
for i=1:n %Денежный поток нарастающим итогом
for j=1:Lmax
sumP(i,j)=sum(P(i,1:j));
end
end
pp=zeros(n,1);
for i=1:n %Определение срока окупаемости
p=sumP(i,:);
j=1;
while (p(1,j)<=0)||(j+1<length(p))
j=j+1;
end
pp(i,1)=j-1; end
Размещено на Allbest.ru
Подобные документы
Анализ роли инвестиций в накоплении капитала. Общая характеристика модели динамики капитала, предложенной выдающимся польским ученым Михаилом Калецким. Примеры оценки результатов реализации различных инвестиционных проектов при помощи моделирования.
контрольная работа [112,5 K], добавлен 01.08.2010Гомоморфизм - методологическая основа моделирования. Формы представления систем. Последовательность разработки математической модели. Модель как средство экономического анализа. Моделирование информационных систем. Понятие об имитационном моделировании.
презентация [1,7 M], добавлен 19.12.2013Характеристика основных принципов создания математических моделей гидрологических процессов. Описание процессов дивергенции, трансформации и конвергенции. Ознакомление с базовыми компонентами гидрологической модели. Сущность имитационного моделирования.
презентация [60,6 K], добавлен 16.10.2014Методика и особенности решения задач оптимизации, в частности о распределении инвестиций и выборе пути в транспортной сети. Специфика моделирования с помощью методов Хэмминга и Брауна. Идентификация, стимулирование и мотивация как функции управления.
контрольная работа [276,1 K], добавлен 12.12.2009Автоматизация расчета основных показателей эффективности инвестиционных проектов. Финансовая схема реализации в соответствии с типом потоков инвестиций и доходов. Аналитические зависимости для вычисления показателей, построение соответствующих графиков.
контрольная работа [370,9 K], добавлен 23.03.2011Программы инвестиционного анализа, моделирующие развитие проекта. Проработка финансовой части бизнес-плана, оценка инвестиционных проектов. Учет дисконтирования, налогов и инфляции. Формирование плана сбыта. Экономическая эффективность проекта.
отчет по практике [924,2 K], добавлен 02.06.2015Роль экономико-математических методов в оптимизации экономических решений. Этапы построения математической модели и решение общей задачи симплекс-методом. Составление экономико-математической модели предприятия по производству хлебобулочных изделий.
курсовая работа [1,3 M], добавлен 09.07.2015Определение инвестиций и их классификация по источникам финансирования. Обзор состояния инвестиций в мире. Покупка акций, облигаций, векселей и других долговых ценных бумаг. Расходы и доходы федерального бюджета. Критерий Дарбина-Уотсона и автокорреляция.
курсовая работа [472,5 K], добавлен 21.01.2011Составление экономико-математической модели на примере СПК "Батаево" Хотимского района Могилёвской области. Расчет сбалансированной программы развития хозяйства и анализ полученного решения. Обоснование эффективности использования ресурсов предприятия.
курсовая работа [128,7 K], добавлен 11.04.2010Виды финансовых моделей. Методический инструментарий моделирования финансово-хозяйственной деятельности. Использование финансового моделирования в принятии управленческих решений и оценке их эффективности на примере ОАО "Новосибстальконструкция".
дипломная работа [2,3 M], добавлен 17.09.2014