Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Помогите оценить количество итераций... / 10 сообщений из 10, страница 1 из 1
09.03.2006, 11:02
    #33588970
Rafael
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите оценить количество итераций...
необходимых для заполнения заданной области значениями с заданной вероятностью при использовании случайного алгоритма заполнения.
Перечитал - сам нифига не понял...
Есть короче область с площадью S.
Генерируем random координаты x и y - по этим координатам заполняем ячейку области.
Так вот скока таких итераций понадобится что-бы с заданной вероятностью заполниния P заполнить область?
...
Рейтинг: 0 / 0
09.03.2006, 11:14
    #33589017
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите оценить количество итераций...
случайные координаты генерятся в каком диапазоне и с каким распределением? покрывает ли этот диапазон полностью исходную область?
границы оласти всегда проходят по границе ячеек?
...
Рейтинг: 0 / 0
09.03.2006, 11:52
    #33589180
Rafael
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите оценить количество итераций...
ну как это распределение называется по которому генерятся значения функции - нормальное кажется
да
да
...
Рейтинг: 0 / 0
09.03.2006, 12:06
    #33589251
Rafael
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите оценить количество итераций...
Ну вот что у меня получилось
P - вероятность попадания следующей точки в пустую ячейку
i - кол-во итераций
M - суммарное количество промахов

P = 100-M/i*100

в принципе это то что нужно - но это применимо в процессе работы алгоритма, а как оценить количество необходимых итераций перед началом работы алгоритма
...
Рейтинг: 0 / 0
09.03.2006, 12:21
    #33589328
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите оценить количество итераций...
Rafaelну как это распределение называется по которому генерятся значения функции - нормальное кажется
так нормальное или равномерное?
...
Рейтинг: 0 / 0
09.03.2006, 12:26
    #33589352
Rafael
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите оценить количество итераций...
во всех языках програмирования есть функция выдающая случайные значения - вот ответ на твой вопрос...
Какое она выдаёт распределение? Я не знаю.
...
Рейтинг: 0 / 0
09.03.2006, 12:37
    #33589411
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите оценить количество итераций...
Rafaelво всех языках програмирования есть функция выдающая случайные значения - вот ответ на твой вопрос...
Какое она выдаёт распределение? Я не знаю.
это равномерное
...
Рейтинг: 0 / 0
10.03.2006, 02:11
    #33591365
mikhail_n
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите оценить количество итераций...
Не собираюсь решать здесь поставленную задачу полностью, но постараюсь дать общую идею. Прежде всего, давайте составим простейшую возможную модель процесса: пусть у нас есть квадрат размером N на N ячеек и пусть процесс заполнения состоит в произвольном закарашивании ячеек. При этом, если следующая ячейка выбирается случайным образом, могут произойти два события: повторное закрашивание уже закрашенной ячейки и закрашивание новой ячейки. Всего у нас будет, очевидно, N*N ячеек, примем для простоты что площадь каждой равна 1, соответственно площадь всей области N*N.

1.Вероятность закрашивания незакрашенной ячейки на первом шаге всегда 1.
2.Вероятность закрашивания незакрашенной ячейки если на предыдущих шагах уже закрашено k из N**2 ячеек 1 - k/N**2, вероятность повторного закрашивания уже закрашенной ячейки k/N**2
3.Существует, вообще говоря, бесконечно много способов закрасить всю область за бесконечное число шагов. самый постой и наименнее вероятный - это закрасить всю область за N**2 шагов. Он может реализоваться если на каждом шаге мы всё время попадаем на незакрашенную клетку. Вероятность такого процесса:

p(N*N) = 1*(1-1/N**2)*(1-2/N**2)*(1-3/N**2)*.......*1/N**2

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

p(N*N + 1) = p(N*N)*(N*N - 1)/2

Подчеркну, это вероятность закраски области за N*N + 1 шагов.

5.Следующий шаг - две осечки. Вероятность такого события будет

p(N*N + 2) = p(N*N)*Sum(все возможные перстановки из 2 по N*N - 1 элементов 1/N**2, 2/N**2, 3/N**2, ....., (N**2-1)/N**2)

и т.д. Очевидна рекурсивная зависимость - вероятность будет стремиться к единице по мере увеличения числа шагов/осечек.
...
Рейтинг: 0 / 0
10.03.2006, 10:06
    #33591761
softwarer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите оценить количество итераций...
mikhail_nПрежде всего, давайте составим простейшую возможную модель процесса: пусть у нас есть квадрат размером N на N ячеек
У меня есть ощущение (не доказывал, ибо лениво), что эта задача эквивалентна одномерной (закраска прямой 1..N, где N - количество ячеек в фигуре). Для квадрата это почти очевидно, для произвольной фигуры.. есть ощущение.
...
Рейтинг: 0 / 0
10.03.2006, 18:49
    #33593757
mikhail_n
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите оценить количество итераций...
Конечно, однако афтарр просил заполнять двумерное многообразие, а ни одномерное, - отсюда и моя аналогия. С математической точки зрения Вы правы, однако как я заметил эта точка зрения не очень то популярна на sql.ru....:-)
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Помогите оценить количество итераций... / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]