Перейти к содержанию

Центральная Предельная Теорема


nikellanjilo

Рекомендуемые сообщения

Доброго времени суток, уважаемые форумчане.

Вопрос состоит в следующем - мне нужно по ЦПТ получить нормальное распределение. Я решил сделать сделать это по ЦПТ (возможно как-то еще можно).

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

Собственно вопрос. У меня есть уже сумма из 12 или n слабозависимых величин, какую мне нужно сделать над ними операцию, чтобы получить свой колокол с нужным матожиданием и дисперсией.

Собственно - матожидание понятно, просто сумма: матожидание+(выражение) , но что мне нужно сделать в выражении чтобы значения укладывались в заданное мною СКО.

Ссылка на ЦПТ в википедии ====>.

https://ru.wikipedia.org/wiki/%D0%A6%D0%B5%D0%BD%D1%82%D1%80%D0%B0%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D1%82%D0%B5%D0%BE%D1%80%D0%B5%D0%BC%D0%B0

Ссылка на комментарий
Поделиться на другие сайты

Просто посчитай получающуюся дисперсию. Затем умножь числа на 2 и посчитай снова. И тебе станет ясно на сколько надо умножать, чтобы получить требуемую дисперсию.

Ссылка на комментарий
Поделиться на другие сайты

То есть если поэтапно.

1. Я считаю сумму всех значений, делю на количество - получаю среднее значение (чтобы потом найти дисперсию),

2. Затем нахожу дисперсию каждой величины

3. Нахожу дисперсию суммарную

4. Проделываю снова все для 2хЗНАЧЕНИЙ

5. Нахожу нужный коэффициент, на который буду домножать, чтобы значения укладывались в СКО

Так?

Ссылка на комментарий
Поделиться на другие сайты

Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650

Инженеры КОМПЭЛ провели сравнительное тестирование аккумуляторов EVE и Samsung популярного для бытовых и индустриальных применений типоразмера 18650. 

Для теста были выбраны аккумуляторы литий-никельмарганцевой системы: по два образца одного наименования каждого производителя – и протестированы на двух значениях тока разряда: 0,5 А и 2,5 А. Испытания проводились в нормальных условиях на электронной нагрузке EBD-USB от ZKEtech, а зарядка осуществлялась от лабораторного источника питания в режиме CC+CV в соответствии с рекомендациями в даташите на определенную модель. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Эм... проще так:

У тебя есть набор случайных чисел, допустим 1000 штук в массиве noise. Выполни в Matlab или Octave функцию mean(noise) - получишь матожиданее, выполни std(noise) получишь СКО (соответственно std(noise)^2 - это дисперсия).

Это чтобы не запутаться в вычислениях.

Затем умножь массив noise на 2 и повтори вычисления матожидания и дисперсии.

P.S. 1000 значений может быть мало, возьми миллион.

Вот пример

octave:8> n=normrnd(1,5,1000000,1);
octave:9> mean(n)
ans = 1.0031
octave:10> std(n)
ans = 5.0054
octave:11> std(n*2)
ans =  10.011

В первой строке создаётся одномерный массив из миллиона элементов с матожиданием 1 и СКО (sigma) 5. Вычисления mean и std довольно точны.

Если умножим числа на 2, то и СКО увеличится в два раза, а дисперсия в 4 раза.

Изменено пользователем Vascom
Ссылка на комментарий
Поделиться на другие сайты

Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. 

Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств. Подробнее параметры и результаты тестов новой серии PLM по ссылке.

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

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

может это поможет?

http://www.microchip.su/showthread.php?t=4487&page=43

посты 1074-1077

Ссылка на комментарий
Поделиться на другие сайты

Литиевые батарейки и аккумуляторы от мирового лидера  EVE в Компэл

Компания Компэл, официальный дистрибьютор EVE Energy, бренда №1 по производству химических источников тока (ХИТ) в мире, предлагает продукцию EVE как со склада, так и под заказ. Компания EVE широко известна в странах Европы, Америки и Юго-Восточной Азии уже более 20 лет. Недавно EVE была объявлена поставщиком новых аккумуляторных элементов круглого формата для электрических моделей «нового класса» компании BMW.

Продукция EVE предназначена для самого широкого спектра применений – от бытового до промышленного. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Ну можно (нужно) промоделировать всё это в симуляторе перед программированием ПЛИС.

Мы же не знаем конкретную твою задачу. Например нужно ли тебе менять матожидание и дисперсию в процессе работы.

Ты начинай делать, показывай свой код, verilog. И в процессе всё станет понятно, поможем где надо.

Ссылка на комментарий
Поделиться на другие сайты

module gauss(
input [7:0] MO,
input [7:0] CKO,
input CLK,
output reg [7:0] GAUS,
output reg [7:0] CH,
output reg [7:0] SUMMER
);
reg [7:0] change = 8'd12;
wire feed = change[7]^change[5]^change[4]^change[3];
reg [7:0] count=8'd0;
reg [7:0] sum = 8'd0;
always @(posedge CLK)
begin
change[0]<=feed;
change[7:1]<=change[6:0];
if (count<12)
begin
 count<=count+1;
 sum<=$signed(sum)+$signed(change);
end
else
begin
 count<=0;
 sum<=0;
 SUMMER<=$signed(sum);
 CH<=$signed(change);
 GAUS<=$signed(MO)+(($signed(sum)*$signed(CKO))/144);	
end

end
endmodule

По-сути:

1. Делаю методом Фебоначи на сдвиговом регистре с линейной обратной связью рандом,

2. По ЦПТ - считаю сумму 12 элементов,

3. Перевожу значения чтобы получилось нормальное распределение

Но получается бячное что-то...

Ты начинай делать, показывай свой код, verilog. И в процессе всё станет понятно, поможем где надо.

Собственно вот так :thank_you2: :thank_you2:

Ссылка на комментарий
Поделиться на другие сайты

Основная проблема - переполнение регистра sum. Увеличь его разрядность и всё станет лучше.

Я тут переписал твой код чтобы проще и понятнее было.

Сам модуль http://paste.fedorap...215922/15779614

И тестбенч для его запуска http://paste.fedorap...215923/01578031

Получаемое распределение

post-164632-0-81944900-1430158014.png

Конечно не чистый гаусс, но и метод генерации у тебя очень простой.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...