Pull to refresh

Comments 44

«Разработка алгоритмов – это новая область знаний.», по- моему уже давно не новая.
И вообще о чём статья? :)
В нашей команде возникло ощущение, что то, что мы делаем, не очень понятно. Поэтому мы решили попытаться как-то объяснить.
А заодно и посмотреть, какая будет реакция и какие вопросы, ну и поменять описание соответственно, если необходимо.
Я сначала пропустил Ваш вопрос, а теперь вижу, что надо ответить по существу. Постараюсь ответить кратко, хотя это и трудно.
Понимаете, все те алгоритмы, которые используются сегодня — их ведь почти никогда не «разрабатывают». Их копируют из того или иного источника. Кстати, и источников ведь этих не много, думаю, что книги Кнута хорошо так закрывают 50% всех алгоритмов, которыми люди обычно пользуются.
Часто этого достаточно, и у меня нет никаких претензий. Но так уж оказалось, что на свете много фирм, которые делают почти индентичные продукты и страдают из-за этого. К примеру, уже много лет наши клиенты участвуют в тендерах Nokia на комлекты программного обеспечения к их телефонным камерам. И, знаете, в чем проблема? Все эти компании-участники делают практически одинаковые решения. А сумма лота — миллиард долларов и выше. Вот тут и оказывается, что небольшое улучшение качества может качнуть весы в ту или другую сторону. А как добиться этого улучшения, если в каждой компании штат R&D за сто человек, и все, что написано в этой области, они уже давно прочитали?
Здесь требуется что-то новое. Вот это я и называю «разработка алгоритмов».
Первое что приходит в голову после этих слов: если Ваши клиенты уже много лет участвуют и у них все одинаковое и тд — чем же вы им помогли? То есть вы говорите что несете «знание» но тут же говорите что ваши клиенты как бы ничего от вас особо и не поимели…
О простом сложно тоже показатель не оптимальности алгоритмов…
«Алгоритмы» так или иначе разрабатывались да не теми всеми кто их использует — это естественно, а их родоначальниками, либо они вырабатывались то есть образовывались и обрастали мясом изначально не целенаправленно.
Вы немогли бы привести примеры ваших удачных «решений» естественно в контексте.
Ну что Вы рассчитываете услышать? Что мы изобрели антигравитатор?
Благодаря нашим решениям одна компания избежала банкротства, еще несколько заметно поправили свое финансовое положение. В остальных случаях результатом было преодоление отдельных технологических трудностей, пусть не таких масштабных, но важных для развития продуктов этих компаний.
Обращаю Ваше внимание, что мы только весной 2007 года открылись.

Насчет примеров — посмотрите, пожалуйста, отзывы клиентов на нашем сайте. Правда, мы собираем отзывы от клиентов, которые уже закончили с нами работать (т.е. текущие проекты там не отражены). Самые интересные примеры я не могу рассказать, так как вся работа проходит с очень серьезными договорами о неразглашении. Но я планирую выложить позже здесь в блог несколько примеров наших работ.
Как раз хотел зайти в самом начале на ваш сайт но не нашел у вас в профайле оного.
да, нам уже сказали, что в профайле сайт не отражается. завтра решим эту проблему со службой поддержки
www.gil-algorithms.com
Как-то искал алгоритм нахождения простых чисел на интервале. В интернете все одно и то же — сводится к перебору и делению. Придумал свой (понятное дело мат аппарат известный — каноническое разложение числа, теория делимости, книжечка основы теории чисел), рвал жопу :) т.к. в высшей математике не силен и совсем не математик… получил удовлетворение глубокое в итоге и скорость вычислений бОльшую:) Я к тому, что если я все правильно понял работа у вас сложная и чертовски интересная… Желая успеха…
*желаю, пардон, успеха :)
Много слов, ценной инфы — нет вообще. Имя засветили, да. Но начинать стоит с того, что осталось в «Продолжение следует, если будет заинтересованность».
А что было бы Вам интересно? Всего ведь сразу не расскажешь. Разумеется, мы начали вести этот блог, чтобы «засветить имя» и привлечь внимание к вакансии, которую мы опубликовали.
С другой стороны, Хабрахабр — интересное сообщество, и мы хотели бы быть полезными. Мне кажется, нам есть что рассказать, только вот не вполне понятно, что именно из всего этого наиболее интересно.
>Одновременно с этим я сокращал ненужные элементы, и в результате план решения задачи, которым я руководствуюсь, оказался довольно простым и коротким.
Для начала — об этом.

А вообще — если читаешь это интересное сообщество, то понятно, что тут интересно. Истории из жизни, как минимум. Как удалось решить такую-то задачу. Или не удалось. И т. п.
Извините, но мне не хочется отвечать Вам по личным причинам.
Не могу пока понять, что именно меня напрягает, возможно Ваш тон, а может что-то еще — не знаю. Надеюсь, без обид.
А меня вот пост напряг, поэтому я и пишу эти комменты. Ведь можно было по делу написать что-то. Хотя бы то, что написано в комменте habrahabr.ru/company/gilalgorithms/blog/67468/#comment_1907902. Уже этот список проделанных работ — интересен.
Присоединюсь к тому, что написал samlowry — Вы говорите интересные вещи
Другое дело, что большинство людей СИЛЬНО НЕДООЦЕНИВАЮТ потенциал современной науки и современных алгоритмов (сильно выходящих за пределы ВУЗовской программы). Проблема в том, что очень узок мостик между, скажем, публикациями в IEEE и конкретным инженером, который столкнулся с той или иной проблемой.

или
Оказывается, что а разных областях IT уже видны следы стагнации, и таки да есть смысл пользоваться математикой сложнее 7-9го класса. Не обязательно, конечно, но стоит, если хочется выделитсья среди конкурентов.

с которыми я, допустим, по большей части согласен — но хочется увидеть как все реализуется в реальной жизни — что то вроде «вот была проблема, вот мы нашли способ оптимизировать используемый алгоритм (или придумали свой), вот какой получился результат». Больше конкретики скажем так :)
Или например — если у вас есть какой либо алгоритм (или усовершенствование уже существующего), которым вам не жалко поделиться с сообществом — его обсудить было бы интересно и поучительно (сам бы с удовольствием бы принял участие в таком обсуждении — я тоже, в общем, занимаюсь алгоритмами — хоть и не совсем таким как вы, но все же).
Обсуждать конкретные алгоритмы нам нельзя, это коммерческие разработки. При этом я буду невероятно рад принять в обсуждении любой алгоритмической темы, которую Вы предложите. Думаю, это может быть интересно.
Как я писал, у нас есть методика, которую мы обкатываем уже несколько лет, и до сих пор она давала очень хорошие результаты. Во время семинаров, которые мы иногда организуем, мы решаем те задачи, которые предлагают участники — большинство из них работают в хай-тек R&D фирмах. И часто мы находили вместе «прорывы» буквально в процессе обсуждения.

Список наших проектов за последнее время:
— нахождение общих точек в аэрофотоснимках меняющихся пейзажей (например, деревьев, сфотографированных в разное время суток, на ветру и т.п.)
— обработка изображения капли пота, попавшей на тестовую пластинку, с целью определения содержание глюкозы
— разработка алгоритма, восстанавливающего трехмерную сцену по стереоизображению, полученным с двух камер, в режиме реального времени (кроме этого, скорость всех вычислений была оптимизирована в 15 раз, и это уже после того, как над этой задаче поработали серьезные программисты)
— восстановление изображения, полученного с помощью четырехлинзовой камеры (новое направление в технологии, по заказу Kodak)
— создание алгоритмов обработки изображения в цифровом фотоаппарате
— распознавание кровеносных сосудов по ультразвуковой картинке, полученной от нескольких пьезо кристалов, в режиме реального времени (в этой задаче используются сложные модели шумов)
— решение проблемы интеграции чипа EDOF (цифровой авто-фокус) в сотовые телефоны. В телефоне для этого нет места — необходимая функциональность и вычисления были перераспределены по уже имеющимся в телефоне другим чипам (на эту технологию получен патент)
— создание нового алгоритма коррекции белого баланса изображения (на эту технологию получен патент)

Кроме этого, мы занимались финансовой математикой, сжатием и передачей видео через сети 3G, моделированием почвенных слоев.

Вообще, мы всегда отталкиваемся от задачи клиента. Может быть, это неправильно, но мы пока не ведем собственных независимых разработок; работаем только на заказ.
Конечно жаль, что Вы не можете вдаваться в подробности выполненных проектов — судя по перечисленным примерам ваша компания занимается очень интересными вещами.
Ну что же — прочесть о Вашей методике решения сложных задач (упомянутой в посте) тоже будет очень интересно.

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

Вы меня ставите в немного сложное положение :) — я уже достаточно давно на Хабре не пишу вообще, только читаю — просто Ваша теме мне показалась неожиданно интересной.
Ну допустим — для определения круга тем: как я вижу из перечисленных проектов вы много и углубленно занимаетесь алгоритмами обработки изображений — а задачей распознавание образов (в широком смысле) вы занимались?
Распознаванием образов в широком смысле мы не занимались, только каких-то конкретных объектов. Однако специфика нашего метода в том, что мы не продаем себя как эксперты в той или другой теме. Мы умеем быстро «включаться» в любую алгоритмическую область, для этого у нас есть ряд подходов:
— сканирование патентов, статей в этой области
— есть большая сеть заштатных консультантов, которые с нами сотрудничают (в том числе профессора известных мировых университетов)
— наши собственные наработки, готовые алгоритмические «кубики», из мы все чаще строим решение, вместо того, чтобы разрабатывать его с нуля

В принципе, эта тема мне знакома и интересна. Если Вы считаете, что к ней будет интерес, я бы тогда написал отдельный пост про эти методы (только ближе к вечеру, сейчас мне надо уехать)
В принципе, эта тема мне знакома и интересна. Если Вы считаете, что к ней будет интерес, я бы тогда написал отдельный пост про эти методы (только ближе к вечеру, сейчас мне надо уехать)


Я думаю — кроме того, что эта тема сама по себе интересная, она внесла бы ту необходимую долю конкретики в происходящий здесь разговор о «умных» алгоритмах и их возможном применении.
И да — если Вы напишите по поводу этих вещей пост — постараюсь принять участие в обсуждении, поскольку эта тема и для меня — интересная и знакомая.
Напишу немного позже, просто не успел сегодня
>> — сканирование патентов, статей в этой области
А если находится подходящий запатентованный метод, то вы просто связываетесь с его владельцами, или все же делаете самостоятельно, на его основе, еще более подходящий метод?
Мы ведь не самостоятельно работаем, а консультируем другие фирмы. Они решают.

Обычно мы разрабатываем что-то новое, это наш принцип. Но, разумеется, лучше отталкиваться от того, что известно, и только потом начинать творить.
То, чем занимается Gil Algorithms — очень интересно, тем более что я с подобным еще не сталкивался. Учитывая, что вы не единственные — то это, для меня, новый рынок, который может потом и меня задеть. Соответственно мне интересны его законы. :)
К примеру перефразируя предыдущую провокацию ^_^: мне было бы интересно узнать как обычно ведут себя заказчики когда вы обнаруживаете, что проблема уже имеет решение, за лицензирование которого необходимы постоянные отчисления (учитывая, что вы, как я понял, работаете за фиксированную цену).
А патент ваш или заказчиков? Если ваш — почему не можете обсуждать? В общих чертах алгоритм в патенте описан.
Вы разрабатываете алгоритмы, так?
Если да, то где вы взяли столько крутых математиков чтобы их придумывать и серьёздных программистов чтобы их оптимально реализовывать?
а сколько по вашему требуется для этого крутых математиков и серьезных программистов?
а) мы тщательно ищем и благополучно находим, б) у нас есть методика (о ней написано в теме поста), которая позволяет качественно повысить изначальный уровень специалиста — мы применяем ее внутри компании, это наше ноу-хау
Думаю много, причём высококлассных, наверное тех, кто побеждает в соревнованиях ACM или на TopCoder, тех кто защищает кандидатские и докторские работы по алгоритмам.

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

и, нет, вы не правы, наличие кандидатской и докторской не равно таланту и «крутизне». очень часто это только внешний показатель социальной успешности либо желания человека двигаться в общем потоке. как и правильно написанное СиВи — ничего не говорит относительно крутизны кандидата, а только об его умениях выгодно себя подать.
ОК, не хочу с вами спорить.
Просто я бы предпочёл видеть программный код, реализающий алгоритмы, чтобы я лично по нему мог оценить уровень профессионализма тех людей кто его реализовал. А если мне приносят чёрный ящик и говорят, что там сверхкрутые алгоритмы, реализованные мега профессионалами из «компанией без имени» (!), я буду очень предвзято относиться к продукту. Извините, ничего личного.
Да нет, все в порядке. Просто для разных людей разные доказательства профессионализма. К тому же Вы создаете странные иерархические отношения, в которых я должен ДОКАЗЫВАТЬ Вам что-то, а Вы будете судить меня и решать. Ради чего? Чтобы Вы поставили мне плюсик в карму? :)

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

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

Примеры удачных работ мы уже приводили. Наши резюме при желании можно найти; не совсем хочется их светить, но, в принципе, вся информация есть на www.linkedin.com, на который есть ссылки из наших профайлов здесь на Хабре.

Ну и как Вы думаете, стали бы компании покупать наши услуги, если бы они не были убеждены в нашем профессионализме? Они ведь платят живые деньги…
Ну хотя бы ради того, чтобы когда меня спрашивали: «кто такое сможет написать?» я бы сразу отвечал: «ребята из algorithmist точно смогут!»

По поводу профессионализма, я лично считаю так: если у меня много денег и мне важно качество, то обращусь к какой-нибудь компании уровня IBM, если же денег нет и я (мы) сами не в силах реализовать что-то, тогда я уже будут искать альтернативные пути решения. При поиске компаний, который будут реализовывать мой (наш) проект, я прежде всего буду ориентироваться на отзывы друзей, коллег, жителей хабры, рсдн и т.д. А уже потом буду читать про сотрудников, методики и клиентов отдельно взятой компании.
здравствуйте, я пока пишу от имени своего коллеги Алгоритмиста (который вернется вечером и сам примет участие в беседе). поэтому он, возможно, меня поправит и\или дополнит
к тому же мне не хочется играть в статусные игры, вообще по жизни и здесь в частности. но если говорить о фактах — одна очень большая и известная в мире компания силами отдела из 10 человек, которым руководит наш близкий друг и один из самых талантливых алгоритмистов в мире (это по поводу уровня разработок), в течение 2х лет разрабатывала… скажем — РЕШАЛА некую проблему. 2 года, 10 человек, каждый день по 8 часов.
мы решили эту же проблему за меньше чем год силами ОДНОГО алгоритмиста и ОДНОГО кодера. наше решение было представлено этой весной на выставке в Барселоне и оценено до степени, что компанию-нашего клиента предложили купить ТОЛЬКО из-за этого решения.
давайте сравним 2 года, 10 человек * 8 часов в день против 9 месяцев и 2х человек part-time.
а ведь в хай-тек (и вы, я надеюсь, это знаете) каждый лишний месяц разработок — это огромные финансовые потери вплоть до полного банкротства компании… что особенно важно для небольших компаний-стартапов
что же касается денег — мы ни разу не сталкивались с ситуацией, когда бы стоимость была значимым фактором. значимый фактор — время, надежность, качество.
что же касается отзывов — полностью согласна. наша работа полностью построена на системе «из рук в руки», хотя сейчас мы развиваем и другие направления.

Отличная фразы: «к тому же мне не хочется играть в статусные игры, вообще по жизни и здесь в частности.» буду использовать при первой же возможности, она универсально подойдёт к любому диалогу. :)
В вашем сообщение одни общие слова: один алгоритмист, один кодер, один из самых талантиливых, одна большая и известная и т.д., извините конечно но на конкретику и на факты это не очень похоже. Да, и к чему все эти цифры и весенняя выставка в Барселоне (лично я знаю всего лишь про одну выставку там, и то потому что мой коллега там был)?
Про систему «из рук в руки» не слышал ни разу и мне не очень понятно о чём это.
p.s. Прошу прощения за весь этот флейм, но мне искренне хотелось понять кто вы и как работаете, благо сам занимался в университетские годы разработкой алгоритмов. Может быть я чего-то не понимаю, а может быть у вас просто вместо спичрайтеров, тексты пишут люди далёкие от коммуникаций с людьми.
На этом я умываю руки. Если будут новые сообщения о вашей работе, почитаю с удовольствием. Спасибо.
у нас должны быть спичрайтеры? на хабрхабре? я учту на будущее))
в моем тексте достаточно информации для неформального общения на неформальном сайте. я же не клиентов здесь ищу))))) у меня немножко другие цели))
вам нужны фамилии, имена, контактные данные, стоимость контрактов, детальная информация о наших разработках? с удовольствием поделимся — пишите нам на сайт, представляйтесь и мы продолжим наше общение))))
заходите вечером, мой коллега обещал открыть более специализированный топик. ждем вас))
Спасибо за замечания. По итогами обсуждения мы действительно поняли, что наш имидж не совсем тот, как нам бы хотелось.
Уже наметили некоторые планы по изменению этой ситуации.

«Из рук в руки» — это когда одна фирма, которой понравилось, говорит об этом всем своим партнерам и знакомым. Так и происходит.
Большие компании — практически 100% самые не инициативные, самые не инновационные и отставшие от рынка. Причем это случается настолько регулярно, что я подозреваю, в этом есть что-то от законов мироздания.
К сожалению, исключений я не видел.
Согласен с вами полностью, но скорее это не законы мироздания, это законы экономики.
UFO just landed and posted this here
Да, конечно. Во-первых есть прекрасные алгоритмы подавления шумов в изображении, давайте я эту тему тоже вечером освещу отдельным постом. Мне эта тема очень интересна.
Во-вторых, есть целая отрасль математики, которая умеет распознавать сигнал даже в случае, когда амплитуда шума намного превосходит величину сигнала (кстати, принято считать, что если шум больше сигнала, то сигнал выделить нельзя; кажется я даже в каком-то учебнике это читал, так что это распространенное заблуждение).
В-третьих, если вы точно знаете шрифт и надпись, то можно построить конкретный фильтр, который только на нее реагирует (грубо, конволюция с этой надписью), и такому фильтру вообще будет наплевать на шум, посколько он учитывает сразу сотни пикселей. Понятно, что надпись может быть разного масштаба, немного под углом и т.п., кроме того могут вляить оптические аберрации на краю изображения и другие причины, но для этого просто создается более «умный» фильтр.

В этом случае я бы просто предложил улучшить качество вашего алгоритма шумоподавления, поскольку в чистой картинке, как я понял, Вы надпись распознавать уже умеете.
UFO just landed and posted this here
В целом, да. Напишу сегодня про «шумодавы», если успею. Есть некоторые, которые даже восстанавливают стертую информацию. Особенно с буквами они хорошо работают.
Правда, к сожалению, самые крутые из них proprietary, но и public есть хорошие.
UFO just landed and posted this here
Sign up to leave a comment.