Рубрика «Анализ и проектирование систем» - 26

Эксперимент VTrade. Часть 3: Книга ордеров. Обработка и хранение торговой информации - 1

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

Читать полностью »

Цифро-аналоговое и смешанное моделирование в PADS Professional - 1

Одной из полезных функций, включенных в PADS Professional, является встроенный инструмент моделирования аналоговых смешанных сигналов (AMS), который позволяет моделировать ваши схемотехнические проекты с использованием моделей SPICE и VHDL-AMS. Возможность использования обоих вариантов моделей позволяет выполнять более гибкую и точную проверку сложных мехатронных систем. Выполняя моделирование до начала этапа компоновки, трассировки или производства, вы сможете гарантировать, что ваши схемотехнические решения будут работать так как вы задумывали, исключив при этом проблемы, связанные с их эксплуатационными характеристиками. В рамках этой статьи мы спроектируем и смоделируем схему генератора с использованием моделей SPICE и VHDL-AMS. Затем мы рассмотрим, как использовать интегрированные функции AMS для моделирования уже существующих схем.
Все самое интересное под катом
Цифро-аналоговое и смешанное моделирование в PADS Professional - 2
Читать полностью »

Моделирование работы реальной ТЭЦ для оптимизации режимов: пар и математика - 1

Есть большая ТЭЦ. Работает как обычно: жжёт газ, вырабатывает тепло для отопления домов и электричество для общей сети. Первая задача — отопление. Вторая — продать всё выработанное электричество на оптовом рынке. Иногда ещё в мороз при ясном небе появляется снег, но это побочный эффект работы градирен.

Средняя ТЭЦ состоит из пары десятков турбин и котлов. Если точно известны необходимые объёмы выработки электроэнергии и тепла, то задача сводится к минимизации затрат на топливо. В этом случае расчёт сводится к выбору состава и процента загрузки турбин и котлов для достижения максимально высокого КПД работы оборудования. КПД турбин и котлов сильно зависит от типа оборудования, времени работы без ремонта, режима работы и много чего ещё. Есть и другая задача, когда при известных ценах на электричество и объёмах тепла нужно решить, сколько выработать и продать электроэнергии для того, чтобы получить максимальную прибыль от работы на оптовом рынке. Тогда фактор оптимизации — прибыль и КПД оборудования — имеет гораздо меньшее значение. Результатом может быть режим, когда оборудование работает абсолютно неэффективно, но весь выработанный объём электроэнергии можно продать с максимальной маржой.

В теории всё это давно понятно и красиво звучит. Проблема — как это сделать на практике. Мы начали имитационное моделирование работы каждой единицы оборудования и всей станции в целом. Пришли на ТЭЦ и начали собирать параметры всех узлов, замеряя их реальные характеристики и оценивая работу в разных режимах. На их основе мы создавали точные модели для имитации работы каждой единицы оборудования и использовали их для оптимизационных расчётов. Забегая вперёд, скажу, что мы выиграли порядка 4 % реальной эффективности просто за счёт математики.Читать полностью »

В IT здоровый проект — это система или сервис, который, с одной стороны, качественный, то есть соответствует требованиям и нравится пользователям. С другой стороны, приносит прибыль, потому что бизнес всегда на самом деле хочет зарабатывать деньги. Без связки качества и бизнеса ничего путного не выйдет.

Метрики — индикаторы здоровья проекта - 1

Под катом Руслан Остропольский (RusOstropolsky) расскажет всё о метриках, которые являются индикаторами здоровья IT-систем. Разберет, какие бывают метрики, как они меняются по мере развития проекта, какие в каком проекте лучше применять. Объяснит, как качество и бизнес помогают друг другу с точки зрения метрик и зачем нужна эта коллаборация.
Читать полностью »

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

Существует несколько способов организации параллельного аудита:

  1. с использованием криптографии
  2. с использованием бумажного подтверждения
  3. с использованием аудиоконтроля
  4. или даже технологии двойной записи (на электронный носитель и бумагу).

Читать полностью »

Никто (почти) не знает, что такое авторизация - 1

За время работы архитектором в проектах внедрения IdM я проанализировал десятки реализаций механизмов авторизации как во внутренних решениях компаний, так и в коммерческих продуктах, и могу утверждать, что практически везде при наличии относительно сложных требований они сделаны не правильно или, как минимум, не оптимально. Причиной, на мой взгляд, является низкое внимание и заказчика и разработчиков к данному аспекту на начальных этапах и недостаточная оценка влияния требований. Это косвенно подтверждает повсеместное неправильное использование термина: когда я вижу словосочетание «двухфакторная авторизация», у меня начинаются боли чуть ниже спины. Ради интереса мы проанализировали первые 100 статей на Хабре в выдаче по запросу «авторизация», результат получился неутешительный, боли было много:
Читать полностью »

Анализ данных блокчейн-голосования 2019 года в Московскую Городскую Думу

Мне посчастливилось участвовать в написании доклада, посвященного блокчейн-голосованию в МГД 2019 года в составе команды Романа Юнемана, и в этой статье я подробно расскажу о части связанной с анализом данных.

Несколько слов об исходных данных. Изначально ко мне в руки попал файл выгрузки из блокчейна. Уже потом, когда я сделал первичный анализ, я вышел на контакт с командой Романа Юнемана, в моём распоряжении оказались свидетельские показания наблюдателей, которые присутствовали на "избирательном участке" и фотографировали мониторы с данными о ходе голосования.

Читать полностью »

Повесть об Октопусе - 1

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

Практически с самого начала работы Юлы у нас была система плоских полей, которая обеспечивала возможность уточнения запроса. То есть в форме создания и поиска товара были доступны простые select-поля, которые позволяли сохранять товары с дополнительными параметрами, а потом искать их.

По мере развития и покорения новых вершин, Юле понадобилась новая система, которая позволила бы создавать деревья полей, с ручным вводом, выбором значений и даже получением новых полей в зависимости от ранее выбранных вариантов. И в качестве апофеоза требовалось создать простую систему управления всем этим через панель администратора.
Читать полностью »

Индексируем миллиарды текстовых векторов - 1

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

О структуре параллельных вычислений или доводы против оператора «Go» - 1

Каждый язык, поддерживающий параллельные (конкурентные, асинхронные) вычисления, нуждается в способе запуска кода параллельно. Вот примеры из разных API:

go myfunc();                                // Golang

pthread_create(&thread_id, NULL, &myfunc);  /* C with POSIX threads */

spawn(modulename, myfuncname, [])           % Erlang

threading.Thread(target=myfunc).start()     # Python with threads

asyncio.create_task(myfunc())               # Python with asyncio

Есть много вариантов нотации и терминологии, но одна семантика — запустить myfunc параллельно основной программе и продолжить родительский поток выполнения (англ. "Control Flow")

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js