• Проблемы эгоистов: дорожные пробки и парадокс Браеса

    • Перевод

    Строительство более широких дорог может ухудшить ситуацию с дорожным движением. Обычно этот контринтуитивный и контрпродуктивный результат объясняют следующим образом: чем больше дороги, тем более крупные торговые центры они привлекают, что в свою очередь привлекает больше автомобилей. Но это ещё не вся история. В 1960-х Дитрих Браес обнаружил теоретическую конфигурацию дорог, в которой строительство новой соединительной дороги может замедлить движение каждого, даже если количество машин остаётся постоянным. И наоборот, закрытие одной дороги в сети Браеса позволит всем добираться домой быстрее. Такое явление настолько странно, что заслуживает собственного определения — «Парадокс Браеса».

    Несколько лет назад Джоел Коэн сказал мне, что парадокс Браеса может стать хорошей темой для моей колонки в «Computing Science». Я засомневался. Опубликовано уже немало обсуждений этого парадокса, в том числе потрясающие статьи самого Коэна, а также книга Тима Рафгардена (обзор которой я написал для American Scientist). Я не считал, что смогу добавить что-то новое к дискуссии.

    Однако недавно я начал рассматривать задачу визуализации парадокса Браеса — представлении его таким образом, чтобы мы могли наблюдать отдельные автомобили, едущие через дорожную сеть, а не просто вычислять средние скорости и время в пути. Возможность поэкспериментировать с моделью — понажимать рычаги и кнопки, попробовать разные алгоритмы маршрутизации — может привести к более чёткому пониманию того, почему хорошо информированные и имеющие собственный интерес водители могут выбирать маршрут, который в результате тормозит всех.
    Читать дальше →
  • Лучшая архитектура на базе Docker и Kubernetes — миф или реальность?

      Как изменился мир разработки ПО в эпоху Docker и Kubernetes? Можно ли построить архитектуру один раз и навсегда на базе этих технологий? Возможно ли унифицировать процессы разработки и интеграции, когда все "упаковано" в контейнеры? Какие требования предъявляются таким решениям? Какие ограничения несут они с собой? Упростят ли они жизнь простым разработчикам или сделают её тяжелее?



      Пришло время ответить на все эти и не только эти вопросы! (В тексте и оригинальных иллюстрациях)

      Читать дальше →
    • Двадцать лет с юзкейсами: выжимаем практический опыт

        У нас в QIWI регулярно проводятся встречи аналитиков и проектных менеджеров, где мы рассказываем друг другу о своем опыте, делимся знаниями и полезными приемами. На одной из таких встреч я рассказал о методике Use Case и о своем опыте работы с ней. Рассказ был встречен на ура, и я решил поделиться им с хабрасообществом.



        Я буду использовать разговорное «юзкейс» вместо неуклюжей кальки «прецедент использования». Надеюсь, уважаемая публика меня за это простит.
        Читать дальше →
        • +19
        • 3,3k
        • 2
      • Создание параметрических объектов базы в nanoCAD Механика

        • Tutorial


        В nanoCAD Механика существует база стандартных изделий, многие элементы которой являются параметрическими объектами и связаны между собой определенными зависимостями. Эти зависимости определяются теми стандартами, в рамках которых исполняются элементы.


        Параметрическим объектом является элемент с управляемой через параметры геометрией.


        Модуль Мастер объектов в nanoCAD Механика позволяет создавать объекты, параметры которых связаны определенными зависимостями не только внутри объекта, но и с параметрами других объектов базы. Это обеспечивает возможность генерировать через параметры различные исполнения или типы одного и того же объекта, а также управлять многокомпонентными сборками, создавая различные вариации одного узла или изделия в целом.


        Предлагаемая серия практических материалов описывает некоторые возможности работы модуля параметризации в nanoCAD Механика и может служить кратким учебным пособием по созданию параметрических элементов.

        Читать дальше →
      • Моделирование автопилота на авиасимуляторе

          Можно ли использовать продольно расположенный полупроводниковый гироскоп, который измеряет угловую скорость разворота самолета, для удержания крена? Проверим это на авиасимуляторе с внешним автопилотом. А также хотелось бы проверить алгоритмы управления самолетом. Такую возможность предоставляет авиасимулятор XPLANE.



          Рис.1


          Почему именно XPLANE? Он позволяет выводить данные с датчиков симулируемого самолета

          Читать дальше →
          • +14
          • 2,9k
          • 1
        • Рассуждения вокруг системотехники и комментарии к «Ричард Хэмминг: Глава 28. Системная Инженерия»



            Попытался прокомментировать статью Ричард Хэмминг: Глава 28. Системная Инженерия» через свое понимание проблем «системной инженерии» и с учетом «современности», а также связанных или даже частично дублирующих ее EA \ BPM.

            Выдержки из оригинала показаны цитатами, из других источников – курсивом. Плюс рассуждения вокруг системотехники.

            Системная инженерия или Systems engineering (SE) – также давно известное направление, как и BPM (Business Process Management) и EA (Enterprise Architecture). Найти, где заканчивается SE и начинаются ЕА и ВРМ – сложно. Уж очень все эти три направления «по-развивались», особенно в маркетинговой плоскости.

            Любое проектирование «большого и сложного» — должно базироваться на SE. Проектирование предприятия (а это и есть сложная система), описание архитектуры предприятия – это не SE? В стандартах SE часто употребляется и «предприятие» и «архитектура». Выделяют даже отдельное направление Enterprise Systems Engineering (ESE)
            Читать дальше →
          • AdBlock похитил этот баннер, но баннеры не зубы — отрастут

            Подробнее
            Реклама
          • События, процессы и сервисы: современный подход к автоматизации бизнес-процессов

            • Перевод


            Краткое содержание


            • Использование событийной (event-driven) архитектуры для уменьшения связанности — весьма популярная идея при проектировании микросервисов.
            • Событийная бизнес-логика хорошо подходит для децентрализованных данных и решения проблем сквозной функциональности. Однако, не стоит выстраивать сложные цепочки по передаче событий из сервиса в сервис. Координация сервисов с помощью команд, а не событий — позволяет еще сильнее их развязать.
            • ESB (Enterprise Service Bus, в контексте статьи — "умная шина" — прим.перев.) плохо сочетается с микросервисной архитектурой. Предпочтительнее использовать простые каналы передачи данных и умных клиентов (smart endpoints, dumb pipes). Но, не отказывайтесь от сервиса-координатора других сервисов только лишь из опасений получить один богоподобный сервис: бизнес-логике все равно нужен дом.
            • Workflow engines прошлого были, в основном, вендоро-зависимы. Так называемые "zero-code" решения — на практике оборачивались сущим кошмаром для разработчиков. В настоящее время есть легковесные и простые средства управления workflow, многие из них — с открытым исходным кодом.
            • Не тратьте время на написание своих собственных конечных автоматов. Напротив, используйте готовые решения во избежание сложностей.
            Читать дальше →
          • Amazon MTurk и Emotion Miner: краудсорсинг, большие данные, эмоциональные технологии

              Давайте зададимся вопросом: в какой мере краудсорсинговые инструменты востребованы в сфере эмоциональных (и нейрокогнитивных) технологий? Каким образом можно собирать, размечать и предварительно обрабатывать большие объемы данных, опираясь на ресурсы толпы? В качестве показательных кейсов обсудим платформу Amazon MTurk и, в приложении к эмоциональной проблематике, проект лаборатории Neurodata LabEmotion Miner.

              image
              Читать дальше →
            • Проекционное моделирование. Тезисы для начинающих

                Введение


                Допустим, что перед нами поставлена задача создания информационной системы, в которой каждый желающий может зарегистрироваться, чтобы создавать в ней модели своих представлений о реальном мире или воображаемых мирах. К этой задаче добавим следующие условия:


                1. Любой объект может стать частью конструкции (результат процесса синтеза), или быть разделенным на части (результат процесса анализа). При этом синтез и анализ можно делать разными способами. Это значит, что один и тот же объект может стать частью разных конструкций, или объект может быть поделен на части множеством способов.
                2. Один и тот же объект может быть интерпретирован по-разному.
                3. Любая модель может быть расширена с учетом смены точки зрения.
                4. Мы не рассматриваем представления, созданные искусственным интеллектом и языки, созданные им для описания этих представлений. Мы не рассматриваем математические изощрения типа бутылки Клейна, или фракталов.
                Читать дальше →
              • Альтернативная архитектура СУБД и подход к разработке приложений

                Я расскажу о технологической платформе, пригодной для создания информационного ядра системы или приложения. Платформа содержит простой высокоуровневый конструктор модели данных и базовый интерфейс для работы с ней, поддерживает ролевую модель доступа, эмулятор запросов SQL (CRUD), API, а также дает возможность загружать произвольные рабочие места — элементы UI — и наполнять их данными.

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

                Здесь вы можете собрать веб-приложение, не изучая язык программирования: мы оперируем только бизнес-терминами и формулами, не сложнее, чем в MS Excel. Безусловно, понимание принципов работы баз данных поможет вам разработать более живучий, масштабный и богатый функционалом продукт, но этот сервис не требует специфических знаний для простых решений, которые составляют, навскидку, не меньше 80% прикладной разработки (например, кустарной и всего, что сейчас работает в Экселе).
                Ну-ну, продолжай
              Самое читаемое
              Интересные публикации