Помогите найти подходы к решению задачи

Serab

Буду говорить довольно абстрактно, но постараюсь описать как можно понятнее.
Имеется несколько продуктов, которые некоторым образом обрабатывают входные файлы и получают на их основе некоторую информацию.
Имеется возможность измерять время обработки этих файлов, а так же некоторую абстрактную величину качества обработки.
Возможно дополнительным показателем является размер результирующих файлов.
Естественно, каждый из продуктов обладает возможностью настройки параметров производимых процессов. Параметров очень много, причем для каждого из продуктов они свои. Тут необходим какой-то подход к перебору этих параметров, чтобы добиться разного баланса скорость/качество/размер результирующих файлов.
Необходимо корректно поставить задачу сравнения "крутости" продуктов между собой. Допустим для простоты необходимо как-то сравнить два продукта.
Результат надо получить как качественный (графики, диаграммы это необходимо, так и количественный (тут я точно не знаю, нужны какие-нибудь более четкие понятия из математики, которых я не знаю).
Подчеркну, что цель — создать автоматизированную систему, которая настраивается один раз и может производить указанное сравнение на различных наборах исходных файлов, без дальнейшего участия человека.
Что можно почитать по этой теме? Куда копать? Какие вообще идеи?

Dasar

какой порядок запусков успеется сделаться за то время, которое выделяется на сравнение?

Serab

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

Dasar

Не понял вопрос, можешь перефразировать? Я сегодня работаю, голова уже не варит к вечеру.
т.е. вот эта автоматизированная система сколько реально сможет сделать запусков исследуемых программ?
если это какой-нибудь 3d-рендеринг который выполняется неделю, то получается в лучшем случае можно успеть пару раз запустить, тогда тебе ничего кроме метода тыка не поможет.
если же у тебя время одного прогона 1 наносекунда, компов под рукой 100 штук и время на исследование месяц, то тебя может и полный перебор устроить.

Serab

А, ок. Естественно, у меня нечно среднее. Т.е. на обработку одного файла с одним набором параметров одной из программ уходит около 20-30 секунд, скажем. В первом приближении машина одна, не кластер, но можно пробить систему помощнее, если это сулит хорошие результаты.
Интересует в первую очередь литература по математическим методам такой штуки, либо статьи, в которых подобные подходы разрабатывались.

Serab

Хотя я по сути ничего и не уточнил. 30 секунд 30ю секундами, но разновидностей этих файлов довольно много (штук 50) и самих тестируемых процессов тоже около 10. Вот как-то так.
Т.е. на проверку результатов с одним набором параметров уходит где-то 30 * 50 * 10 = 15000 сек, около 4 часов Да, жесть.

karkar

Вот пример похожего сравнения, может наведет на мысли:
http://www.compression.ru/video/codec_comparison/mpeg-4_avc_...

Serab

спасибо, к вечеру посмотрю, когда время будет.

Ivan8209

Слишком отвлечённо. У тебя дискретная многомерная визуализация?
Оптимизация?
---
"Истина всегда конкретна."

Serab

У тебя дискретная многомерная визуализация?
Ты же понимаешь как это бывает: каждое слово в отдельности понимаю, а все вместе — нет.
По сути наверное связано с оптимизацией эксперимента. Дай ссылку (совет) на что-нибудь базовое по этой теме для начала.

Serab

Я не знаю как это называется, но: я получаю точки (время,качество,размер, ?). Точки зависят от параметров, причем заметно. Необходимо как можно больше выяснить об общей получающейся картине.
Я могу сам придумать «что-нибудь этакое», но хочется почитать для начала умных людей.

Ivan8209

Если ты можешь нарисовать это в декартовых координатах,
то можешь смотреть статистические методы. По словам
типа "ранжирование" или "обработка данных эксперимента."
Я примерно отвлечённо понимаю, что ты хочешь, но это настолько же
примерно, насколько и отвлечённо.
---
"Истина всегда конкретна."

Ivan8209

Бывает ещё кластерный анализ.
---
...Я работаю...

Serab

Спасибо. Да, в декартовых координатах, естеcтвенно могу отобразить. Теперь я хотя бы знаю ключевые слова.
Можешь еще посоветовать где по ним искать конкретную информацию? Может книгу знаешь? Или ресурс в инете, где можно найти нормальную литературу/статьи?

Ivan8209

Спроси у кого-нибудь, кто этим занимается:
news:sci.stat.edu
news:sci.stat.consult
---
"Everybody's talking about gagism, tagism,
Shagism, dragism, madism,
Ragism, tagism, botulism, thisism, thatism..."

123anna

От балды придумать несколько функционалов для разных гипотетических задач
Например, Ф1 = 100 * качество - время; Ф2 = качество - 100 * время - (swap > 1 Тб ? 1 : 0)
Потом для каждого фунцкционала Ф№
для каждой испытуемой проги найти ее параметры, которые дают максимум Ф№
Это уже готовый график "пригодность разных прог для решения задачи №"
Еще можно пакет тестовых материалов сделать разный для разных задач.

zvezzda

Обычно порядок решения таких задач следующий:
1. Выбирается самый крутой продукт по мнению начальника или клиента и остальные сортируются в порядке лажовости по критериям клиента/начальника (для правильности этого процесса нужны долгие разговоры "о постановке задачи" и обширное тех задание!). Если продуктов много - делается одна явная ошибка в сортировке: чтобы товарищ имел возможность продемонстрировать силу своего ума
2. придумывается некий наукообразный алгоритм обработки, дающий найденный выше результат.
3. Придумывается ебическое обоснование алгоритма.
Делается все именно в таком порядке, а не наоборот!
Почему так? а это из-за метода оценки результата. Как обычно оценивают:
1. Первое впечатление (самое важное) - хуйня или не очень?
2. Посмотрим на результаты повнимательней - хуйня или не очень?
3. Ну если не впадлу зададим пару вопросов из разряда: "откуда вы это высрали? наше компания давно работает на рынке и не имеет таких данных!" на что ответ один - "Ну это же мой хлеб! Как я могу рассказывать!?!?"
PS Побольше утвердительных предложений! НИ одной фразы "я думаю"!
PPS Покупайте наши маркетинговые исследования! =)

zvezzda

Оценивать будут по внешним признакам, в детали никто вдаваться не будет - не для этого делегировали тебе задачу.
Главное при презентации результата свести к формальному минимуму труды заказчика по совершению выбора. НЕЛЬЗЯ давать пространный отчет с указанием кучи нюансов. Выбор заказчика должен быть сведен к формальности. Фактически в отчете уже должен быть сделан выбор и к нему "сбоку" прицеплены еще два варианта - чтобы заказчик не особо утруждался, но при этом делал выбор (а не выглядел идиотом тупо соглашаясь с результатами).

karkar

google: "многофакторный эксперимент".

Serab

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

okis

Как я понимаю, тебе нужно решить 2 подзадачи:
a. минимальными усилиями собрать информацию о зависимостях от входных параметров.
b. по полученной информации минимизировать набор входных параметров.
Для b есть разные методы оптимизации, на вскидку многокритериальная оптимизация подходит, а вот как на первом этапе варьировать параметры запуска — вопрос. Можно предположить какую-то природу зависимости (чем точнее, тем больше надо будет запусков) и проверять согласно ней.

Serab

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

Ivan8209

> Но вот хотелось бы не перебирать все возможные комбинации
> параметров, но при этом получить хорошее представление о
> возможностях продуктов и сравнить их.
Есть аналогия в обработке данных эксперимента --- "sampling".
Доп. к. с.: латинские квадраты ("latin squares").
---
"Курс истинно физической химии"

VitMix

Когда мой друг (с техническим образованием) покупал квартиру, он доверил окончательный выбор варианта (вариантов было где-то штук 5) своей жене (с гуманитарным образоманием).
Жена (без подсказки!) поступила следующим образом. Она выписала примерно 10 критериев оценки квартиры (размер, расстояние до леса, этаж, на сколько сторон выходят окна и т.п. и для каждого критерия оценила его важность (по десятибальной шкале). Далее, она каждую квартиру оценила по каждому критерию. Причём максимальная оценка по каждому критерию была равна важности этого критерия. Ну то есть если критерий имел важность 3, то квартира по этому критерию оценивалась по шкале от 1 до 3, а если критерий имел важность 8, то для оценки по нему использовалась шкала от 1 до 8. Далее она просуммировала оценки по каждой квартире. Квартира, набравшая больше всего баллов, была объявлена победителем.
Мой друг посмотрел, какую квартиру выбрала жена, сказал, что она ему не нравится, потому что дом старый, и купил другую: ту, которая понравилась.
Оставить комментарий
Имя или ник:
Комментарий: