Моделирование систем. Моделирование систем 2е издание, исправленное
Скачать 5.72 Mb.
|
2. Как осуществляется статистическая оценка программных генераторов псевдослучайных чисел? 3. Что означает конгруэнтность двух чисел по заданному модулю? 4. В программных генераторах псевдослучайных чисел используются детерминированные методы или вероятностные? 5. Что определяет собой корреляционная функция? 6. Что означает "центрированная автокорреляционная функция"? Для чего она применяется? 7. Что определяет собой тест критерия Колмогорова–Смирнова? 8. Что определяет собой длина периода генератора псевдослучайных чисел? Построение интервальных оценок параметров вероятностных распределений Цель работы: практически освоить методы построения интервальных оценок для параметров часто используемых вероятностных распределений. Среда программирования — MATLAB. Теоретическая часть При оценивании неизвестных параметров часто используются интервальные оценки, которые позволяют получить вероятностную характеристику точности оценивания неизвестного параметра. Метод интервальных оценок применяется в случае небольшого числа наблюдений, по которым необходимо произвести оценку параметра [6] Пусть — случайная выборка объема из генеральной совокупности с функцией распределения , зависящей от параметра , значение которого неизвестно. Предположим, что для параметра построен интервал , где и являются функциями случайной выборки , такими, что выполняется равенство (6.1) В этом случае интервал называют интервальной оценкой для параметра с коэффициентом доверия (или, сокращенно, - доверительной интервальной оценкой ), а и , соответственно, нижней и верхней границами интервальной оценки [13] Интервальная оценка представляет собой интервал со случайными границами, который с заданной вероятностью накрывает неизвестное истинное значение параметра . Таким образом, для различных реализаций случайной выборки статистики и могут принимать различные значения. При этом вероятностной характеристикой точности оценивания параметра является случайная величина (6.2) которая для любой реализации случайной выборки есть длина интервала , где Интервал называют доверительным интервалом для параметра с коэффициентом доверия или - доверительным интервалом. Наряду с термином "коэффициент доверия" широко используют термины " доверительная вероятность " и " уровень доверия ". При этом коэффициент доверия чаще всего выбирают равным 0.9, 0.95 или 0.99, т. е. близким к 1. Построение интервальных оценок осуществляется на основе какой-либо центральной статистики, т. е. такой статистики , функция распределения которой (6.3) не зависит от параметра [13] . При этом принимаются во внимание следующие предположения: 1. Функция распределения является непрерывной и возрастающей; 2. Заданы такие положительные числа и , что коэффициент доверия ; 3. Для любой конкретной выборки из генеральной совокупности функция является непрерывной и возрастающей (убывающей) функцией параметра . Согласно предположению (допущению) 1, для любого числа существует единственный корень уравнения , который называют квантилью q функции распределения случайной величины . Тогда, согласно допущению 2, имеют место равенства которые справедливы для любых возможных значений параметра , т. к. — центральная статистика и ее функция распределения не зависит от . Этапы построения доверительного интервала 1. Построение центральной статистики с известной функцией распределения. 2. Представление заданного коэффициента доверия в виде , т. е. задание уровней значимости (малых величин) и ; 3. Нахождение квантилей и уровней и функции распределения 4. Нахождение значений нижней и верхней границ искомой интервальной оценки путем решения уравнений соответственно в случае, когда — возрастающая функция параметра . Если же — убывающая функция параметра , то границы интервалов получают путем решения уравнений соответственно. Практическая часть 1. Интервальная оценка параметра экспоненциального распределения Определение. Случайная непрерывная величина имеет экспоненциальный (показательный) закон распределения с параметром , если ее плотность вероятности имеет вид (6.4) Характеристики экспоненциального распределения Математическое ожидание: дисперсия: Для интервальной оценки параметра экспоненциального распределения вводится центральная статистика вида (6.5) где – выборочное среднее реализации Статистика (6.5) имеет распределение с степенями свободы. По функции распределения находим квантили для уровней и , таких, что где — уровень доверия или доверительная вероятность. Границы доверительного интервала определяются из уравнений (с учетом того, что введенная центральная статистика является возрастающей функцией искомого параметра ): (6.6) откуда получаем границы доверительного интервала Для моделирования процесса оценки границ доверительного интервала сгенерируем массив случайных чисел , распределенных по экспоненциальному закону с помощью функции системы MATLAB с заданным параметром — истинным параметром ( в программе). Для заданного объема выборки случайных чисел рассчитаем среднее выборочное . Для вычисления квантилей применим функцию системы MATLAB с степенями свободы. Ввод данных для решения задачи осуществляется интерактивно с помощью диалогового окна Возможная программная реализация интервальной оценки параметра экспоненциального распределения: clear,clc,close all options.Resize = 'on'; options.WindowStyle ='normal'; options.Interpreter = 'tex'; D = inputdlg({'\bf Введите параметр экспоненциального распределения .......',... '\bf Введите количество испытаний: ', ... '\bf введите уровень вероятности a: ',... '\bf введите уровень вероятности b: '},... 'Данные задачи по умолчанию',1,... {' 1.25',' 1000',' 0.01',' 0.04'}, options); L = str2num(char(D(1))); n = str2num(char(D(2))); a = str2num(char(D(3))); b = str2num(char(D(4))); pause(0.5) y = 1-a-b; x = exprnd(1/L,n,1); %% 1/L - математическое ожидание m = mean(x); %% среднее значение a1 = chi2inv(a,2*n); %% обратная функция хи-квадрат b1 = chi2inv(1-b,2*n); Ln = a1/(2*n*m); Lv = b1/(2*n*m); LL = [Lv Ln]; Dlina = max(LL)- min(LL); d = 'Доверительная вероятность'; fprintf('\n\tИстинное значение параметра: %g\n ',L) fprintf('\t%s: %g\n',d,y) fprintf('\tГраницы доверительного интервала:\n') fprintf('\t\t\t%s: %g\n', 'нижняя граница', Ln) fprintf('\t\t\t%s: %g\n', 'верхняя граница',Lv) fprintf('\tДлина доверительного интервала: %g\n',Dlina) if L < Ln | L > Lv fprintf('\n\tИстинное значение параметра не входит в доверительный интервал!\n') end %%----------------------- Диаграмма --------------------- xL = [Ln L]; xLv = [L,Lv]; line([min(xL)-0.2*min(xL) max(xLv)+0.1*max(xLv)],[0 0],'linew',2,'color','k') line([Ln Ln],[0 1],'linew',2,'linestyle',':') line([Lv Lv],[0 1],'linew',2,'linestyle',':') line([L L],[0 1],'color','r','linew',1.5) text(Ln,-0.05,sprintf('%s', '\bf\fontsize{12}\lambda\fontsize{10}_н')) text(Lv,-0.05, sprintf('%s', '\bf\fontsize{12}\lambda\fontsize{10}_в')) text((Ln+Lv)/2,-0.25, sprintf('%s%g', '\bf\fontsize{12}\lambda\fontsize{10}_н = ', Ln)) text((Ln+Lv)/2,-0.35, sprintf('%s%g', '\bf\fontsize{12}\lambda\fontsize{10}_и_c_т = ', L), 'color','r') text((Ln+Lv)/2,-0.45, sprintf('%s%g', '\bf\fontsize{12}\lambda\fontsize{10}_в = ', Lv)) text(min(Ln, Lv),1.1,sprintf('\\bf Интервальная оценка параметра ')) text(min(Ln,Lv),1.03,sprintf('\\bf экспоненциального распределения')) set(gca,'visible','off') ylim([-0.5 1]) set(gcf,'color','w') Результат выполнения программы в командном окне MATLAB Истинное значение параметра: 1.25 Доверительная вероятность: 0.95 Границы доверительного интервала: нижняя граница: 1.12687 верхняя граница: 1.28248 Длина доверительного интервала: 0.15561 На рис. 6.1 приводится диалоговое окно с параметрами задачи. Рис. 6.1. Диалоговое окно ввода данных задачи На рис. 6.2 приведена диаграмма доверительного интервала. Рис. 6.2. Диаграмма доверительного интервала Задание 1 1. Для фиксированных значений входных данных выше приведенной программы рассчитайте частоту попадания истинного значения параметра в доверительный интервал при следующих объемах выборок (в соответствии с номером компьютера): № 1: n = 100; № 2: n = 200; № 3: n = 300; № 4: n = 400; № 5: n = 500; № 6: n = 600; № 7: n = 700; № 8: n = 800; № 9: n = 900; № 10: n = 1100. Значение выбрать из интервалов по равномерному закону (в соответствии с номером компьютера): № 1: (1-1.9); № 2: (0.2-0.29); № 3: (1.3-1.39); № 4: (1.4-1.49); № 5 (1.5-1.59); № 6 (1.6-1.69); № 7: (1.7-1.79); № 8: (1.8-1.89); № 9: (1.9-1.99); № 10 (0.35-0.80). Доверительную вероятность принять равной (в зависимости от номера компьютера): № 1: ; № 2: ; № 3: ; № 4: ; № 5: ; № 6: ; № 7: ; № 8: ; № 9: ; № 10: 2. В графической части обозначения нижней и верхней границ довери-тельного интервала "привяжите" в процентном отношении к этим границам, чтобы исключить возможное наложение надписи с истинным значением параметра . 2. Интервальная оценка математического ожидания нормально распределенной случайной величины 2.1. Случай с известной дисперсией Используется статистика (6.7) где: — математическое ожидание нормально распределенной случайной величины с известной дисперсией; — выборочное среднее выборки объема . Статистика (6.7) имеет стандартное нормальное распределение и, значит, является центральной статистикой. Так как статистика (6.7) — убывающая функция параметра , то границы доверительного интервала определяются из уравнений (6.8) (6.9) где , — квантили уровней и стандартного нормального распределения. Поскольку для стандартного нормального закона , то с учетом (6.8) и (6.9) имеем нижнюю и верхнюю границы доверительного интервала параметра : (6.10) (6.11) Программный код интервальной оценки математического ожидания: clear,clc,close all options.Resize = 'on'; options.Window; options.Interpreter='tex'; D = inputdlg({'\bf Параметр\fontsize{12} \mu .........................................',... '\bf Количество испытаний: ',... '\bf Уровень вероятности \fontsize{11}a: ',... '\bf Уровень вероятности \fontsize{11}b:',... '\bf Дисперсия:'},'Данные задачи по умолчанию', ... 1,{' 0','1000',' 0.02',' 0.03',' 2'}, options); mx = str2num(char(D(1))); n = str2num(char(D(2))); a = str2num(char(D(3))); b = str2num(char(D(4))); s2 = str2num(char(D(5))); s = sqrt(s2); y = 1-a-b; x = normrnd(mx,s,n,1); m = mean(x); u1b = norminv(1-b); u1a = norminv(1-a); mn = m-s/sqrt(n)*u1b; mv = m+s/sqrt(n)*u1a; LL = [mv mn]; Dlina = abs(max(LL) - min(LL)); d = 'Доверительная вероятность'; fprintf('\n\tИстинное значение параметра: %g\n ',mx) fprintf('\t%s: %g\n',d,y) fprintf('\tГраницы доверительного интервала - \n') na = 'нижняя граница'; nv = 'верхняя граница'; fprintf('\t\t\t\t%s: %g\n',na, mn) fprintf('\t\t\t\t%s: %g\n',nv,mv) fprintf('\tДлина доверительного интервала: %g\n',Dlina) if mx < mn | mx > mv fprintf('\n\tИстинное значение параметра не входит в доверительный интервал!\n') end %%%------------------ Диаграмма ----------------------- figure(2) line([mn mn],[0 1],'linew',2,'linestyle',':') line([mx mx],[0 1],'color','r','linew',1.5) line([mv mv],[0 1],'linew',2,'linestyle',':') if mx < mn line([mx-1/20, max([mn, mv])+1/20],[0 0],'linew',2,'color','k') text(mx-1/20,1.15, sprintf('%s','\bf\fontsize{11}Интервальная оценка математического ожидания')) text(mx-1/20,1.05,sprintf('%s', '\bf\fontsize{11} нормального распределения')) elseif mx > mv line([mn-1/20, mx + 1/20],[0 0],'linew',2,'color','k') text(mn-1/20,1.15, sprintf('%s','\bf\fontsize{11}Интервальная оценка математического ожидания')) text(mn-1/20,1.05,sprintf('%s', '\bf\fontsize{11} нормального распределения')) else line([min([mn, mv]) - 1/20, max([mn, mv]) + 1/10],[0 0],'linew',2,'color','k') text(mn-1/20,1.15, sprintf('%s','\bf\fontsize{11}Интервальная оценка математического ожидания')) text(mn-1/20,1.05,sprintf('%s', '\bf\fontsize{11} нормального распределения')) end text(mn,-0.05,'\bf\fontsize{12}\mu_н') text(mv,-0.05,'\bf\fontsize{12}\mu_в') text((mn+mv)/2,-0.2,sprintf('%s%g', '\bf\fontsize{12}\mu\fontsize{10}_н = ', mn)) text((mn+mv)/2,-0.3, sprintf('%s%g', '\bf\fontsize{12}\mu\fontsize{10}_и_c_т = ', mx), 'color','r') text((mn+mv)/2,-0.4, sprintf('%s%g', '\bf\fontsize{12}\mu\fontsize{10}_в = ', mv)) ylim([-0.5 1.1]) set(gca,'visible','off') set(gcf,'color','w') Возможный результат выполнения программы в командном окне MATLAB Истинное значение параметра: 0 Доверительная вероятность: 0.95 Границы доверительного интервала нижняя граница: -0.140897 верхняя граница: 0.0350607 Длина доверительного интервала: 0.175958 Ввод данных программы осуществляется в интерактивном режиме ( рис. 6.3 ). Диаграмма доверительного интервала показана на рис. 6.4 Рис. 6.3. Диалоговое окно ввода данных Рис. 6.4. Диаграмма доверительного интервала Задание 2 1. Для фиксированных значений входных данных вышеприведенной программы рассчитайте частоту попадания истинного значения параметра в доверительный интервал при следующих объемах выборок (в соответствии с номером компьютера): № 1: n = 100; № 2: n = 120; № 3: n = 130; № 4: n = 140; № 5: n = 150; № 6: n = 160; № 7: n = 170; № 8: n = 180; № 9: n = 200; № 10: n = 210. 2. Значение выберите из интервалов по равномерному закону (в соответствии с номером компьютера): № 1: (–1, +1); № 2: (–2.9, –2); № 3: (–3.9, –3); № 4: (–4.9, –4); № 5: (0.5, 1.59); № 6: (2.6, 4.69); № 7: (6.7, 7.79); № 8: (8, 11.8): № 9: (9, 11.9); № 10: (10, 12). 3. Доверительную вероятность примите равной (в зависимости от номера компьютера) № 1: ; № 2: ; № 3: ; № 4: ; № 5: ; № 6: ; № 7: ; № 8: ; № 9: ; № 10: 2.2. Случай с неизвестной дисперсией Вводится статистика (6.12) где: — оцениваемое математическое ожидание; — выборочное среднее для данного объема выборки случайных чисел с произвольным нормальным законом распределения; — исправленное выборочное среднеквадратическое отклонение для данной выборки. Статистика (6.12) является центральной и распределена по закону Стьюдента ( -распределение) с степенями свободы. Плотность распределения Стьюдента есть четная функция, поэтому при определении квантилей можно положить где — квантиль -распределения (распределения Стьюдента). Для вычисления квантили -распределения в системе MATLAB следует воспользоваться функцией (см. ). Задание 3 1. Напишите программу по определению доверительного интервала и фиксации попадания истинного значения параметра ( ) в доверительный интервал или непопадания. 2. Для фиксированных значений входных данных выше приведенной программы рассчитайте частоту попадания истинного значения параметра в доверительный интервал при следующих объемах выборок (в соответствии с номером компьютера): № 1: n = 100; № 2: n = 120; № 3: n = 130; № 4: n = 140; № 5: n = 150; № 6: n = 160; № 7: n = 170; № 8: n = 180; № 9: n = 200; № 10: n = 210. 3. Значение выберите из интервалов по равномерному закону (в соответствии с номером компьютера): № 1: (–1, +1); № 2: (–2.9, –2); № 3: (–3.9, –3); № 4: (–4.9, –4); № 5 (0.5, 1.59); № 6: (2.6, 4.69); № 7: (6.7, 7.79); № 8: (8, 11.8): № 9: (9, 11.9); № 10: (10, 12). 4. Доверительную вероятность примите равной (в зависимости от номера компьютера) № 1: ; № 2: ; № 3: ; № 4: ; № 5: ; № 6: ; № 7: ; № 8: ; № 9: ; № 10: Контрольные вопросы 1. Что такое коэффициент доверия? 2. Что называется квантилью функции распределения случайной величины? 3. Как связана длина доверительного интервала с доверительной вероятностью при оценке параметра экспоненциального распределения? 4. В чем смысл применения распределения Стьюдента? 5. В какой функциональной связи находится интервальная оценка математического ожидания нормально распределенной случайной величины с параметрами интервала и другими параметрами нормального закона? Метод максимального правдоподобия точечной оценки неизвестных параметров вероятностных распределений Цель работы: практически освоить метод максимального правдоподобия для точечной оценки неизвестных параметров заданного вероятностного распределения случайной величины. Среда программирования — MATLAB. Теоретическая часть Метод максимального или наибольшего правдоподобия предложен Р. Фишером [ 6 , 13 ]. С помощью этого метода производится точечная оценка неизвестных параметров априорно известного закона распределения случайной величины. Рассмотрим сначала суть метода при оценке параметров дискретного распределения случайной величины [6] Обозначим вероятность того, что в результате испытания величина примет значение , через Определение. Функцией правдоподобия случайной дискретной величины называют функцию аргумента : (7.1) где — фиксированные числа, полученные при измерении случайной величины В качестве точечной оценки параметра принимают такое его значение , при котором функция правдоподобия достигает максимума. Оценку называют оценкой максимального правдоподобия. Для упрощения расчетов в рассмотрение вводится логарифм функции правдоподобия , которую называют логарифмической функцией правдоподобия. Функции и достигают максимума при одном и том же значении своего аргумента, поэтому вместо отыскания максимума функции ищут максимум функции . Записывая необходимое условие экстремума функции правдоподобия в случае скалярного параметра, получаем уравнения правдоподобия (7.2) или (7.3) где — заданная выборка случайных величин. Уравнение правдоподобия (7.3) с логарифмической функцией, как правило, более простое относительно функции правдоподобия (7.2). Если распределение случайной величины зависит от вектора параметров , то уравнение (7.3) заменяется системой уравнений (7.4) Именно уравнения (7.3) и (7.4) принято называть уравнениями правдоподобия [13] . Во многих случаях решение системы (7.4), являющейся, как правило, нелинейной, приходится искать численными методами. Рассмотрим применение метода максимального правдоподобия для оценки параметров непрерывного распределения случайных величин генеральной совокупности . Пусть — непрерывная случайная величина, которая в результате испытаний приняла значения . Предполагается, что вид плотности распределения задан, но неизвестен параметр , которым определяется эта функция. Определение. Функцией правдоподобия непрерывной случайной величины называют функцию аргумента (7.5) где — фиксированные числа. Оценку максимального правдоподобия неизвестного параметра распределения непрерывной случайной величины ищут так же, как в случае дискретной величины. Замечание. Если плотность распределения непрерывной случайной величины определяется двумя неизвестными параметрами и , то функция правдоподобия является функцией двух независимых аргументов и : (7.6) Как для дискретных распределений, так и для непрерывных точку максимума логарифмической функции распределения аргумента можно искать через необходимое условие экстремума: 1. найти производную ; 2. приравнять производную нулю и найти критическую точку — корень полученного уравнения (его называют уравнением правдоподобия); 3. найти вторую производную ; если вторая производная при отрицательна, то – точка максимума [6] Найденную точку максимума принимают в качестве оценки максимального правдоподобия параметра . Метод максимального правдоподобия имеет ряд достоинств: его оценки, вообще говоря, состоятельны (но они могут быть смещенными), распределены асимптотически нормально (при больших значениях приближенно нормально) и имеют наименьшую дисперсию по сравнению с другими асимптотически нормальными оценками; если для оцениваемого параметра существует эффективная оценка , то уравнение правдоподобия имеет единственное решение ; этот метод наиболее полно использует данные выборки об оцениваемом параметре, поэтому он особенно полезен в случае малых выборок. Недостаток метода состоит в том, что он часто требует сложных вычислений. Практическая часть 1. Оценка параметра экспоненциального распределения Рассматривается пример поиска методом максимального правдоподобия оценки параметра экспоненциального распределения случайной величины, для которой функция плотности имеет вид (7.7) К характеристикам экспоненциального распределения относятся математическое ожидание и дисперсия : (7.8) (7.9) Замечание. Во встроенных функциях MATLAB параметром экспоненциального распределения является математическое ожидание случайной величины. Возможная программная реализация точечной оценки параметра экспоненциального распределения: clear,clc,close all %%% Проверка на закрытие диалоговых окон try global h11 close(h11); end try global n11 close(n11); end try global v11 close(v11) end %% ВВОД ТЕОРЕТИЧЕСКОГО ПАРАМЕТРА РАСПРЕДЕЛЕНИЯ options.Resize = 'on'; options.WindowStyle = 'modal'; %%'normal'; options.Interpreter = 'tex'; P1 = inputdlg({'\bfВвод параметра:......................................................'},... sprintf('Теоретическая величина параметра'),1,{'1.23'},options); %% ПРЕОБРАЗОВАНИЕ К СТРОКОВОЙ ПЕРЕМЕННОЙ P2 = char(P1); %% ПРЕОБРАЗОВАНИЕ К ЧИСЛУ С ДВОЙНОЙ ТОЧНОСТЬЮ P0 = str2num(P2); %% КОНТРОЛЬ ВВОДА ПАРАМЕТРА if isempty(P0) h11 = errordlg('Параметр должен быть действительным положительным числом!','Ошибка ввода'); return end %% КОНТРОЛЬ ВВОДА ПАРАМЕТРА global h11 if P0 <= 0 | isreal(P0) | isfinite(P0) h11 = errordlg('Параметр должен быть конечным действительным положительным числом!','Ошибка ввода'); return end % ВВОД ЧИСЛА ПРОГОНОВ ПРОГРАММЫ n1 = inputdlg({'\bfВвод числа прогонов программы..........................'},... 'Число прогонов программы',1,{'10'}, options); % ПРЕОБРАЗОВАНИЕ К ЧИСЛОВОЙ ПЕРЕМЕННОЙ n = str2num(char(n1)); %% Контроль ввода цифр if isempty(n) global n11 n11 = errordlg('Число прогонов программы должно быть целым положительным числом!', 'Ошибка ввода'); return end if isreal(n) | isfinite(n) global n11 n11 = errordlg('Число прогонов программы должно быть целым положительным числом!', 'Ошибка ввода'); return end %% Контроль целого положительного числа циклов if n <= 0 | n = round(n) global n11 n11 = errordlg('Число прогонов программы должно быть целым положительным числом!', 'Ошибка ввода'); return end % ВВОД ЧИСЛА ИЗМЕРЕНИЙ СЛУЧАЙНОЙ ВЕЛИЧИНЫ v1 = inputdlg({'\bfВвод числа измерений случайной величины...................................'},... 'Число измерений случайной величины',1,{'1234'}, options); % ПРЕОБРАЗОВАНИЕ К ЧИСЛОВОЙ ПЕРЕМЕННОЙ v = str2num(char(v1)); if isempty(v) global v11 v11 = errordlg('Число измерений должно быть положительным целым числом!','Ошибка ввода'); return end if isreal(v) | isfinite(v) global v11 v11 = errordlg('Число измерений должно быть положительным целым числом!','Ошибка ввода'); return end % КОНТРОЛЬ ЦЕЛОГО ЧИСЛА ИЗМЕРЕНИЙ % СЛУЧАЙНОЙ ВЕЛИЧИНЫ if v <= 0 | v = round(v) global v11 v11 = errordlg('Число измерений должно быть положительным целым числом!','Ошибка ввода'); return end syms m k = 0; %% ЦИКЛ ЗАДАННОГО ЧИСЛА ПРОГОНОВ ПРОГРАММЫ for I = 1:n k=k+1; %% ФОРМИРОВАНИЕ ЧИСЛА ИЗМЕРЕНИЙ СЛУЧАЙНОЙ ВЕЛИЧИНЫ t = exprnd(1/P0,v,1); %% ФОРМИРОВАНИЕ ФУНКЦИИ МАКСИМАЛЬНОГО %% ПРАВДОПОДОБИЯ L = m^(length(t))*exp(-m*sum(t)); %% ЛОГАРИФМИЧЕСКАЯ ФУНКЦИЯ МАКСИМАЛЬНОГО %% ПРАВДОПОДОБИЯ Lg = log(L); %% ДИФФЕРЕНЦИРОВАНИЕ dLg = diff(Lg,m); %% ПРЕОБРАЗОВАНИЕ СИМВОЛЬНОЙ ПЕРЕМЕННОЙ К СТРОКОВОЙ dLg = char(dLg); %% РЕШЕНИЕ УРАВНЕНИЯ ОТНОСИТЕЛЬНО ОЦЕНИВАЕМОГО %% ПАРАМЕТРА as1(k) = double(solve(dLg)); %% УСРЕДНЕНИЕ ОЦЕНИВАЕМОГО ПАРАМЕТРА as(k) = mean(as1); end %% ОКОНЧАНИЕ ЦИКЛА ЗАДАННОГО ЧИСЛА ПРОГОНОВ ПРОГРАММЫ mcp = mean(as); %% ВЫВОД РЕЗУЛЬТАТОВ В КОМАНДНОЕ ОКНО fprintf('\n\t%s%g\n \t%s%g\n','Теоретический параметр: ',P0,... 'Оценка параметра: ', mcp) fprintf('\tОтносительная погрешность: %g%s\n',abs(P0-mcp)/P0*100,'%') %% ГРАФИЧЕСКИЕ ПОСТРОЕНИЯ figure(1) %% set(gcf,'position',[a(3)/90,a(3)/20,a(3)/2.1,a(4)/2]) plot(1:n,as1,'r:','linew',2),grid off,hold on, plot(1:n,as,'linew',2), title(sprintf('%s%g','\bfТеоретический параметр\fontsize{12} \lambda\fontsize{10} = ',P0)) xlabel('\bf Количество циклов'), ylabel('\bf Эмпирический параметр\fontsize{14} \lambda'), legend('\bf Измеряемая величина\fontsize{12} \lambda',... '\bf Средняя величина\fontsize{12} \lambda'), set(gcf,'color','w') %% ПОСТРОЕНИЕ ТЕОРЕТИЧЕСКОЙ И ЭМПИРИЧЕСКОЙ %% ФУНКЦИИ ПЛОТНОСТИ t = 0 : 0.1 : 4; y1 = P0*exp(-P0*t); %exppdf(t,1/P0); % встроенная функция y2 = mcp*exp(-mcp*t); %exppdf(t,1/mcp); figure(2) plot(t, y1, 'r', 'linew',2), hold on plot(t, y2, 'bo', 'linew',2) grid off legend('\bf Теоретическая функция плотности (PDF)',... '\bf Эмпирическая функция плотности'), text(t(end)/3,2/3*max(max([y1,y2])),['\bf',... sprintf('Теоретический параметр: %g\n Эмпирический параметр: %g',P0,mcp)]) xlabel('\bf Случайная величина'), ylabel('\bf Функция плотности'), set(gcf,'color','w') Задание 1 1. Видоизмените программу так, чтобы параметры задачи вводились в одном диалоговом окне 2. В соответствии с номером компьютера задайте следующие значения параметра: № 1: ; № 2: ; № 3: ; № 4: ; № 5: ; № 6: ; № 7: ; № 8: ; № 9: ; № 10: 3. Рассчитайте оценку параметра при следующих объемах выборок (в соответствии с номером компьютера): № 1: n = 200; № 2: n = 300; № 3: n = 400; № 4: n = 500; № 5: n = 600; № 6: n = 700; № 7: n = 800; № 8: n = 900; № 9: n = 1000; № 10: n = 2000; Число прогонов программы выберите по равномерному закону из следующих интервалов (в соответствии с номером компьютера): № 1: (10-19); № 2: (20-29); № 3: (30-39); № 4: (40-49); № 5 (50-59); № 6: (60-69); № 7: (70-79); № 8: (80-89); № 9: (90-99); № 10: (100-110). |