СПИРАЛЬ АРХИМЕДА
Солнечный свет прорвался в комнату, осветив четыре стола, расположенных по её углам.
За каждым из них сидел человек, и все нажимали на кнопки клавиатуры и перемещали компьютерную мышь, вглядываясь в экраны мониторов.
Раздался скрип двери и в комнату вошёл человек в чёрных брюках и таком же пиджаке, под ним виднелась белая рубашка.
Человек шёл уверенным шагом, подняв подбородок кверху и выпрямив спину. Он подошёл к ближнему столу и остановился.
– Павел Никитович… – произнёс человек и сидящий за ближайшем столом отложил компьютерную мышь и повернулся к человеку.
– Добрый день, Степанов Даниил Андреевич. – произнёс Павел и стал ожидать дальнейших указаний.
– Добрый, добрый… – произнёс Даниил и поправил галстук. – Павел, вот какое дело, нужно разработать алгоритм обработки обращений пользователей, ты справишься?
– Что за алгоритм? – спросил Павел и достал из кармана свой блокнот. – Какие требования?
– Что ж, слушай, есть абсцисса с обращениями и ордината с популярностью обращений. – начал Даниил и выставив руки вперёд, сжав их в замок. – В общем алгоритм должен одинаково обрабатывать популярные и непопулярные обращения для максимальной отдачи, берёшься?
– Да, – ответил Павел. – разрешите вернуться к работе.
– Разрешаю. – произнёс Даниил и вышел из комнаты.
– Что ж, – вздохнул Павел и потянувшись, стал набирать текст, вглядываясь в экран монитора. – как бы это сделать?
– Хм, наиболее часто используется алгоритм первый пришёл, первым выполнен. – размышлял Павел, представляя себе очередь в поликлинике.
Вот приходит человек с очередной болячкой, для которой даже необязательно посещать врача, а просто достаточно обычной перекиси водорода и йода или зелёнки. И так двадцать, а то и сто посетителей с такими симптомами или ради справки.
А потом приходит двадцать первый, а то и сто первый с серьёзным заболеванием, где не стоит медлить, например, укус клешня на природе. И он должен отстоять очередь, чтобы получить свои документы.
– Мда, – пробубнил Павел, положив голову на кулак. – так явно не пойдёт.
– Так, а если наоборот? – спросил сам у себя Павел, представляя себя на месте секретаря, разбирающего документы.
Вот приносят стопку документов, он берёт верхний листок, а затем приносят следующую стопку и кладут поверх первой, увеличивая ту в двое.
– Нет, так тоже не пойдёт… – вздохнул Павел, представляя, как этот же секретарь пытается сложить упавшие на пол документы и к нему приходит уборщица, говоря, что в офисе все давно ушли, остались лишь он, она и охранник.
– А, если разложить всё по популярности обращений? – продолжил Павел, на сей раз представив писателя, получающего комментарии: Много описаний. Мало описаний. Герой живой. Герой картонный.
И среди них тонет указание на ошибку с паронимами типа адресант, адресат или ещё хуже логическую или даже историческую ошибки.
– Хотя это ещё и повезёт, если комментарий будет… – пронеслось в голове Павла. – Почему-то люди избегают их писать.
– Нет, нет, нет… – мотал головой Павел. – так тоже не пойдёт.
– А если по длине комментария? – спросил Павел и представил детишек, пишущих букву «ы» тысячи раз, в то время как длина наиболее адекватного комментария обошлась в сотню символов.
– Нет! – закрыл глаза Павел и тяжело вздохнул. – Так тоже не пойдёт, лучше посмотрю, что в интернете есть за графики.
Павел набрал в интернете запрос на тему графики и увидел график прямой, параболы, корня от абсциссы, кубической параболы, гиперболы, модульной прямой.
Затем он увидел графики синусоиды и косинусоиды, графики с ломаной прямой, котангенса и тангенса.
Он даже увидел график границы выживаемости популяции из биологии, но всё это было не то, что ему нужно.
– Нужно начертить графики… – произнёс Павел и положил блокнот на стол и начертил простенькую столбчатую диаграмму с осями количество обращений вместо вертикальной оси ординат и номера обращения вместо горизонтальной абсциссы.
Сначала Павел начертил ломанную, но она совершенно не подходила к поставленной бизнес-задаче.
От тяжести задачи, Павел начал чертить круги в своём блокноте, устав от этого, он вздохнул и собрался начать всё заново, но тут его взгляд упал на получившийся спиралеобразный график.
– Точно! – воскликнул Павел и резко вскочил со своего места, чем отвлёк коллег от их работы.
– Извиняюсь. – обратился Павел к своим коллегам. – Спиралеобразный график, так это же спираль Архимеда, если исхитриться, то можно адаптировать и под обработку обращений.
– Вот правда это займёт некоторые вычислительные мощности, – размышлял Павел. – однако это всё же лучше, чем ничего.
Но это было ещё не самое сложное для Павла, нужно было убедить Даниила в том, что это подходящее решение, а для этого нужно сформулировать предложение и создать swot-анализ, отображающий сильные и слабые стороны, а также угрозы и возможности, делая акцент на сильных сторонах и возможностях, да ещё и предложить способы снижения рисков и борьбу со слабыми сторонами.
– Так, теперь нужно сформулировать точную и по возможности ёмкую мысль для передачи идеи… – размышлял Павел. – Но для этого саму спираль необходимо сдвинуть по обеим осям евклидовых координат… евклидовых… так спираль же в полярных…. Да уж придётся ещё и преобразовывать её из одной системы координат в другую.
– Так… нужно взять исходную задачу… – произнёс Павел – Алгоритм должен одинаково обрабатывать популярные и непопулярные обращения для максимальной отдачи.
– Не обойтись без формулы расстояния между двумя точками. – пробубнил Павел. – Ясно.
– И так… – продолжил Павел. – Предлагаю вам алгоритм вычисления минимального расстояния от точки в спирали Архимеда до точки на столбчатой диаграмме, при этом начальная точка спирали должна находится в верхнем правом квадранте, но вычисляем только в нижних дугах спирали.
– Это, конечно, хорошо для точной формулировки в документах, – вздохнул Павел. – но для представления не годится… да это слово без буквы «я», почему в голову вообще не то лезет?
– Представляю вам алгоритм. – представлял Павел. – Он основан на спирали Архимеда и столбчатой диаграмме.
«Суть такая, идём по спирали, специально смещённой вверх и вправо.
Если точка находится в нижней дуге спирали, то вычисляем расстояние до столбца, иначе идём дальше по спирали.
Записываем пары номер обращения и минимальное расстояние. Обращение с минимальным расстоянием берём в рассмотрение.
Периодически обновляем график, изменяя исходные параметры спирали и идём по кругу заново, чтобы охватить изменившиеся данные».
– Да, – пробубнил Павел. – Наверное, сойдёт, что ж, а теперь swot-анализ.
– Слабые стороны, – начал Павел. – производительность, однако решение выбрать наиболее удачные итерации обновления данных в графике, а также, как не печально это осознавать, консерватизм сотрудником и начальства, но тут лишь методом поощрений возможно решить проблему, а ещё сложность разработки алгоритма.
– Угрозы, – продолжил Павел. – не каждый человек, перенимающий опыт, сможет понять задумку алгоритма.
– А теперь сильные стороны, – зевнул Павел, продолжая записывать себе в блокнот свои мысли. – собственная разработка, среди которых аналогов не наблюдается.
– И, наконец, возможности, – вздохнул Павел. – ну, во-первых, это отечественная разработка, а во-вторых, можно было бы адаптировать к рекламе товаров, как замену ABC-анализа или XYZ-анализа, ведь многие покупатели устали от попадания в топы продаж товаров посредственного качества.
– Да, думаю сойдёт… – произнёс Павел, кивая головой. – А теперь вывод, алгоритм представляет собой прорыв в системе обработки данных, а также позволяет адаптировать его ко многим сферам жизни как физических, так и юридических лиц.
На следующий день, Павел подошёл к Даниилу с готовой презентацией и рассказал обо всём.
– И, наконец, я считаю, что нам стоит заняться активной разработкой данного алгоритма, пока нас не опередил кто-нибудь другой. – произнёс Павел и тяжело вздохнул, ожидая реакции Даниила.
– Идея, конечно, хорошо, но во сколько обойдётся разработка алгоритма? – спросил Даниил, потягиваясь в своём кресле.
– Обойдётся? – уточнил Павел, потирая затылок.
– Да, есть ли у тебя готовое технико-экономическое задание? – спросил Даниил, разминая пальцы.
– Нет… – ответил Павел.
– Ясно… – произнёс Даниил, закатывая глаза. – А как ты собрался отображать спираль на столбчатой диаграмме? Есть ли у тебя готовые библиотеки для этого?
– Я аналитик, – произнёс Павел. – не программист.
– Но ты ведь должен знать о ресурсах компаниях прежде, чем предлагать свои инновации. – произнёс Даниил, вставая с кресло. – Пока ты меня не заинтересовал в этой спирали Архимеда.
Павел тяжело вздохнул и направился к выходу из кабинета своего начальника. С тех пор он не смог придумать ничего лучше, спирали Архимеда, но Даниил отклонял его предложения, а компания так и продолжала обрабатывать обращения по их популярности.