Задачка

Все, что вы хотели знать о программизме, но боялись спросить.
Аватара пользователя
aissp
Маньяк
Сообщения: 2710
Зарегистрирован: 07 ноя 2005, 09:51

Сообщение aissp »

чужим кодом навеяло 8)
Аватара пользователя
Garik
Завсегдатай
Сообщения: 480
Зарегистрирован: 02 ноя 2006, 21:03
Откуда: Киев->Торонто->куда глаза глядят

Сообщение Garik »

ветер меняется хоть порой и резко, но не с бесконечным ускорением, поэтому я думаю, что надо начинать с рекуррентного расчета корреляционной функции, ну и выбрать уже шаг квантования как двойную верхнюю частоту Фурье спектра. потом уже плясать с методами интерполяции, оптимизацией шага квантования для минимизации ошибки. параметром можно задать обьем той гадости, которая оседает. а влажность, давление и ветер считать случайными величинами. думаю что нужно статистические методы подключать, а не аналитику.
Аватара пользователя
Garik
Завсегдатай
Сообщения: 480
Зарегистрирован: 02 ноя 2006, 21:03
Откуда: Киев->Торонто->куда глаза глядят

Сообщение Garik »

disregard предыдущий пост,тк это будет пересчитываться до седых волос. с утра пришла мысль использовать стандартную технику использования рекурсивных полиномов в скользящем окне, которая применяется в задачах обнаружения обьектов на видеоизображениях. Если рассматривать целевое (загрязненное) поле как аналог полутонового изображения, то это будет выглядеть где-то так. Имеется большое поле (n,n) (ну например 256х256 точек на изображении). Выбирается базис полинома и из его коэффициентов получается матрица (N,N) (например, 11х11). Рассчитываешь значение полинома, ну например в верхнем левом углу поля (напр.[0,5],[0,5]). "Сдвигаешь" окно на один столбец вправо, (те рекурсивно вычисляешь полином удаляя левый столбец значений и добавляя правый). За счет того что в каждом отсчете поля вычисляется не вся матрица, а а только один столбец, то получается довольно быстро. Но вот только два но: 1) в первом положении окно будет считаться конечно же дольше, чем на всех остальных за счет того что нужно окно, а не столбец считать; 2) краевые еффекты, поскольку все краевые элементы (в данном случае ([0-4], [0-4] и так все по периметру) не будут охвачены. но опять же если предоложить корреляционную функцию с каким-то спектром, то можно использовать всякие предположения (ну, например, симметрии значений или в крайнем положении окна или еще чего.

http://www.ipsi.smr.ru/research/publica ... O29205.pdf
Аватара пользователя
aissp
Маньяк
Сообщения: 2710
Зарегистрирован: 07 ноя 2005, 09:51

Сообщение aissp »

Да не Гарик, проблемы трохи в другом. Представь что у тебя есть изображение 256 на 256. На изображении представлен Джордж Буш душащий Саддама Хуссейна. Из всего изображения тебе задан только кончик носа саддамки - ты смогешь востановить изображение? Если да то с какой точностью. Продолжим далее, тебе заданы кончик носа саддамки кочик указательного пальца буша, кончик его левого уха и кусочек гамбургера. Все размером по одному пикселю - что теперь? Итак на квадратном листе бумаге размером метр на метр тебе заданы 25 точек разбросанных как богу на душу положено. Дальше ты етот лист расчерчиваешь на квадратики, для каждого квадратика ты должен определить (для его центра) значение функции и стандартное отклонение. Естественно ето стандартное отклонение будет зависить от размера квадрата (от размера пикселя). Например, ты береш квадратик размером с весь лист, и аппроксимируешь значение функции средним значением от 25 данных тебе точек, и отклонение считаешь по ним же. То что я до сих пор говорил ето стандартная задача. Теперь рассмотрим дальше, функция у тебя векторная - то есть для каждой точку области определения функции соотвествуют ну скажем 2 числа - проекции вектора. Как счиатать отклоенеие в данном случае. Ну и пойдем дальше посокольку по получившейся сетке необходимо моделировать и у тебя задан еще такт времени, то тебе его необходимо выбрать тоже, естественно чтобы задача сходилась он должен зависеть от размера ячейки. Поетому я грустно гляжу на фурье спектры и скользящие окна.

Ну и совсем общий ответ - рещается задача типа задачи теплопроводности (параболического типа) - спектры Фурье тут просто не работают поскольку никогда не являлись собственными функциями параболических уравнений. От такое имхо :(
Аватара пользователя
Garik
Завсегдатай
Сообщения: 480
Зарегистрирован: 02 ноя 2006, 21:03
Откуда: Киев->Торонто->куда глаза глядят

Сообщение Garik »

Фурье и рекурсиные полиномы - две разные оперы. решай сам свои уравнения с бумажными квадратиками и шпионами. только ножницами и терпением надолго запасись. судя по той "постановке" задаче и последующим рассуждениям ты очень далек от ее решения.
Аватара пользователя
aissp
Маньяк
Сообщения: 2710
Зарегистрирован: 07 ноя 2005, 09:51

Сообщение aissp »

Не просек про ножницы и бумагу, наверное ето шутка юмора была такая? О том что я далек я тоже в курсе, тут ты америку не открыл вроде. Да и задача была поставлена изначально формализовано, остальное было выдано только для иллюстрации, чтобы было понятно откуда ноги растут.

Еще раз, задача построить сеточную аппроксимацию вектор функции, обосновать размер ячейки сетки и ошибку. На входе значения функции в хаотически разбросанных точках. Как связана данная постановка с твоими рассуждениями - я не могу понять.

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

Более того, я даже не предлагал подумать, мне казалосс что задачка более менее стандартная а значит есть стандартные методы ее решения, как например есть более менее стандартные алгоритмы аппроксимации обычной (не вектор ) функции заданной в хаотически разбросанных точках (рельеф так обрабатывается). Проблема в том что тут функция векторная и как в етом случае считать оценивать отклоенения я не очень себе представляю. Вот воПСЧем то и фсе :)
Аватара пользователя
Garik
Завсегдатай
Сообщения: 480
Зарегистрирован: 02 ноя 2006, 21:03
Откуда: Киев->Торонто->куда глаза глядят

Сообщение Garik »

ладно, проехали. я когда работал в Самаре у нас там шибко вумный дядя был по фамилии Сергеев и он как раз занимался задачами цифровой обработки изображений, в том числе много было задач по обнаружению/распознаванию. Представь себе обработать в реал-тайме видео изображение со спутника немалых размеров. Так вот он как раз и предложил и использовал широко эту технику. А обрабатывать все изображение довольно муторно и долго. Ты читал ссылку на статью или нет? Если в каждой точке у тебя посчитана функция, то классифицировать потом коэффициенты и построить по ним сетку будет я думаю легче.
Аватара пользователя
aissp
Маньяк
Сообщения: 2710
Зарегистрирован: 07 ноя 2005, 09:51

Сообщение aissp »

ок погляжу
Аватара пользователя
Azazello
Житель
Сообщения: 769
Зарегистрирован: 16 янв 2007, 04:31

Сообщение Azazello »

Мне кажется, что aissp в корне-то прав - общая задача стоит о решение некого частного случая уравнения переноса (что-то типа уравнения переноса массы). При этом, все члены более-менее ясны, вопрос что делать с конвекционным членом - векторным полем скоростей ветра, а именно, из каких соображений получить значение скорости ветра в точке, где нет метеостанции... Тут я порылся немного - http://www-paoc.mit.edu/labweb/notes/chap7.pdf (и соседние главы) - посмотрите, aissp.
Аватара пользователя
Garik
Завсегдатай
Сообщения: 480
Зарегистрирован: 02 ноя 2006, 21:03
Откуда: Киев->Торонто->куда глаза глядят

Сообщение Garik »

а никто и не спорит, все только предлагают и решать-то все равно ему в конечном итоге каким методом лучше и сколько времени на это уйдет.
Аватара пользователя
aissp
Маньяк
Сообщения: 2710
Зарегистрирован: 07 ноя 2005, 09:51

Сообщение aissp »

Ох :) проглядеть было интересно, но я далек от мысли ходить таким путем :) территория довольно мала скажем 50 на 200 км, мне кажется что на таких расстояниях ветер можно счиатать как данный от бога и забить на всю его физику, я в смысле что если в точке (x,y) задан ветерок, то для того чтобы посчитать что будет в точке (x_1, y_1) не надо моделировать атмосферу (я просто с етим не справлюсь :)) а достаточно просто аппроксимировать функцию.

Ладушки всем спасибо, так спросил из интереса. 8) лана бум действовать дедовскими методами а там поглядим чего выйдеть :)
Аватара пользователя
Azazello
Житель
Сообщения: 769
Зарегистрирован: 16 янв 2007, 04:31

Сообщение Azazello »

aissp писал(а):лана бум действовать дедовскими методами а там поглядим чего выйдеть :)
aissp, так на чём Вы в итоге остановились? Что-то типа двумерной экстраполяции как в обработке изображений с какими-то весовыми коэффициентами-функциями расстояния от заданного значения до неизвестной точки? Если так, то из каких соображений Вы получили коэффициенты? Типа, длина корреляции и так далее. В двух словах? А то, "поматросили - и бросили" ;)...
Аватара пользователя
aissp
Маньяк
Сообщения: 2710
Зарегистрирован: 07 ноя 2005, 09:51

Сообщение aissp »

Да я подумал что неинтересно уже. Раз интересно, рассказываю:
1. Задать дискретные значения скоростей и направлений (8 направлений (N, NE E, SE, ...) , 6 типов скоростей - 0 <2, <4<6 <8 >8)/
2. Для каждой метеостанции получить гистограмму вероятностей за год (она же функция рампределения).
3. Для кажой точки сетки получить оценку функции распрделения обычным кригингом
4. Провести иммитационное моделирования где направления ветра при переходе из клетки в клетку менялось случаным образом согласно распределению
5. полученный результат усреднить и посчитать дисперсию для каждой клетки
6. закончить работу.

От такие дела. 8)
Аватара пользователя
Azazello
Житель
Сообщения: 769
Зарегистрирован: 16 янв 2007, 04:31

Сообщение Azazello »

Понятно ;)...
Ответить