Управление распределенными системами, которые невозможно постоянно наблюдать визуально, обычно ведется через формирование виртуальных моделей таких систем. Моделей, обеспечивающих как выработку управляющих воздействий, так и управление их реализацией. Анализ показывает, что в доинформационную эпоху такие модели формировались в нематериальном виде, на основе логико-аналитических рассуждений управле…
Рассматривается система индексации серверов на базе протокола FTP. В статье описан набор функционала для индексации файлов и поисковой системы. Подробно рассмотрены основные проблемы, встречающиеся при обработке ответов на запросы по протоколу FTP и методы их решения. Несмотря на эволюцию файловых хранилищ, прошедшую за 34 года после создания протокола FTP, проблема индексации остается актуальной …
В статье представлена система имитационного моделирования Айвика (англ. Aivika), где особое внимание уделяется модулю распределенного моделирования, реализующего оптимистичный метод деформации времени. Показано, как в распределенной имитации можно использовать основные парадигмы дискретно-событийного моделирования, в частности, процесс-ориентированную парадигму. Также представлено, как в такой ими…
Рассмотрено применение ранее построенной имитационной модели иерархических битовых индексов к поиску оптимального размера индекса второго уровня. Предложен алгоритм, позволяющий получить хорошее приближение к точке минимума за один прогон модели, без ее многократного выполнения в различных точках поверхности отклика. Основной идеей алгоритма является моделирование специальным образом построенной ф…
Рассматривается задача построения кластеров на неполных данных и их использования для классификации не полностью определённых объектов. Представлен оригинальный подход, определяющий технику решения путём перехода к отысканию максимального независимого множества (максимальной клики) в нечётком графе, для которого кластер как раз и представляет максимальную клику. Не полностью определённый входной о…
Программирование всегда было достаточно сложной задачей. Эта книга поможет вам легко преодолеть возникающие трудности с помощью библиотеки мощных алгоритмов, полностью реализованных в исходном коде Delphi. Вы узнаете, как выбрать способ, наиболее подходящий для решения конкретной задачи, и как добиться максимальной производительности вашего приложения. Рассматриваются типичные и наихудшие случаи р…
В книге изложены важные концепции программирования, которые могут быть с успехом применены для решения многих практических задач. В предлагаемых алгоритмах используются мощные методы, такие как рекурсия, разбиение на части, динамическое распределение памяти и сетевые структуры данных, что поможет вам создавать гибкие и сложные приложения. Подробно рассматриваются важнейшие понятия теории алгоритмо…
Книга, которую вы держите в руках, даст четкое понимание, как именно стоит писать приложения на Python, чтобы не пришлось раз за разом их переделывать и они были удобны для работы. Это наиболее полное и систематичное руководство по Python, в нем разобраны самые популярные подходы для создания легкочитаемого, оптимизированного и поддерживаемого кода. Также приведены примеры применения полученных зн…
Эта книга помогает познакомиться с олимпиадным программированием. Она подробно описывает, как проходят олимпиады, что требуется от участника, в чем их цель, как к ним готовиться. Подробно разобраны базовые темы, трюки и алгоритмы. Спортивное программирование – это самый перспективный интеллектуальный вид спорта, который можно назвать шахматами будущего. Уже сейчас им увлекаются лучшие умы планеты,…
В этой книге, выхода которой с нетерпением ожидало сообщество сторонников гибких методологий разработки программного обеспечения, описывается процесс подготовки требований к разрабатываемой системе, который позволяет экономить время, избавляет от необходимости в переделках и ведет к созданию более совершенных программ. Лучший способ создать программное обеспечение, максимально полно удовлетворяюще…
Более двадцати лет опытные программисты во всем мире использовали книгу Мартина Фаулера Рефакторинг, когда им нужно было улучшить проект существующего кода, повысить удобство сопровождения программного обеспечения или облегчить понимание существующего кода. Это – такое долгожданное – новое издание было полностью обновлено, чтобы отразить важные изменения в области программирования. Второе издание …
Байесовские методы пугают формулами многих «айтишников», но без анализа статистики и вероятностей сейчас не обойтись. Кэмерон Дэвидсон-Пайлон рассказывает о байесовском методе с точки зрения программиста-практика, работающего с многофункциональным языком PyMC и библиотеками NumPy, SciPy и Matplotlib. Раскрывая роль байесовских выводов при А/В-тестировании, выявлении мошенничества и в других насущн…
Статья посвящена возможности повышения резкости изображений, предназначенных для электронных изданий, за счёт использования алгоритмов математической фильтрации. Считается, что обработка изображений специальными фильтрами может повысить их резкость, но в условиях визуального восприятия с экрана электронного устройства применение некоторых фильтров не всегда даёт значительное повышение резкости. Эт…
Даны основные сведения о структурах данных, рассмотрены алгоритмы работы с различными структурами данных. В пособии произведен подбор упражнений для отработки навыков по использованию алгоритмов. Оно адресовано студентам очного и заочного отделений высших учебных заведений, обучающихся по направлениям подготовки: 38.03.05 Бизнес-информатика; 09.03.03 Прикладная информатика; 44.03.05 Педагогическое…
В данной статье рассматриваются прикладные задачи, для решения которых ранее предлагался метод динамического программирования, разработанный Р. Беллманом в середине прошлого века. Этот метод, основанный на принципе оптимальности и вытекающих из него рекуррентных уравнениях, позволил свести решение многих сложных прикладных задач к решению последовательности более простых однотипных задач. К настоя…