ermouth: (Default)
[personal profile] ermouth

Выложил на гитхаб библиотечку ermouth/calc, которая за последние 10 лет сэкономила мне кучу денег и времени.

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

Иногда известна дискретная матрица цен, прайс-лист, и нужно быстро посчитать промежуточные значения. Например вот по печати журналов (скриншотик с гитхаба):

Снимок экрана 2015-04-18 в 14.14.10

Фишка в том, что в большинстве отраслей народного хозяйства ценообразование – линейная комбинация нескольких параметров. А коль скоро она линейная комбинация, её можно более-менее точно восстановить, зная всего несколько значений.

Библиотечка позволяет скармливать ей прайсы с несколькими колонками и строками – тогда интерполятор будет… эммм… кусочно-билинейной формой, или как это правильно назвать?

Я с помощь этой библиотеки оперативно подбирал подрядчиков. У меня были наборы опорных точек для разных типографий и выбор между ними делал робот.

Нафига это нужно?

Обычно запрос цен в типографию занимает несколько часов – это если повезёт, а иногда и больше суток. А бюджет прикинуть надо вот прямо сейчас как правило.

Аналогично с доставкой. Аналогично с оптимизацией соотношения риск/маржа. Да сплошь и рядом в самом деле.

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

Снимок экрана 2015-04-18 в 13.26.17Применимость в UI

Интерполировать можно и по одной оси. Пример такого отображения – ползунок от 1 до 1000 шириной в 100 пикселей.

Хорошо бы, чтобы первые 10 пикселей цифры шли через 1, потом через 2, потом через 5, 10 и 25. То-есть чтобы дискретность повышалась при увеличении числа.

Это получается например так http://s3-eu-west-1.amazonaws.com/cdn.cloudwall.me/demos/calc-slider.html

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

Клиент даёт опорные точку, которые считает их экономист, они вставляются в калькулятор табличкой – а сайт делает всё остальное. Промежуточные значения интерполируются.

Ну и тизер в конце. Вообще, билинейная форма – это (0,2)-тензор. Но про тензоры в народном хозяйстве я в другой раз расскажу, да.

Profile

ermouth: (Default)
ermouth

November 2021

S M T W T F S
 123456
78910111213
14151617181920
21 222324252627
282930    

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated May. 24th, 2025 06:51 pm
Powered by Dreamwidth Studios