» Материалы за Декабрь 2017 года » Страница 10

 

Пробуем q-learning на вкус, повесть в трех частях

Автор: admin от 27-12-2017, 08:45, посмотрело: 63

Эта статья — небольшая заметка о реализации алгоритма q-learning для управления агентом в стохастическом окружении. Первая часть статьи будет посвящена созданию окружения для проведения симуляций — мини-игр на поле nxn, в которых агент должен как можно дольше продержаться на удалении от противников, движущихся случайным образом. Задача противников, соответственно, его настигнуть. Очки начисляются за каждый ход, проведенный агентом в симуляции. Вторая часть статьи затронет основы q-learning алгоритма и его имплементацию. В третьей части попробуем поменять параметры, которые определяют восприятие окружения агентом. Проанализируем влияние этих параметров на результативность его игры. Акцент я специально сместил в сторону использования минимального количества сторонних модулей. Цель — прикоснуться к самой сути алгоритма, так сказать потрогать руками. Для реализации будем использовать только «pure» python 3.



Пробуем q-learning на вкус, повесть в трех частях

Категория: Информационная безопасность

 

Очередной конкурс по этичному хакингу «Эшелонированная оборона 2017»

Автор: admin от 27-12-2017, 08:45, посмотрело: 99

Очередной конкурс по этичному хакингу «Эшелонированная оборона 2017»

Будущим специалистам по информационной безопасности нужно постоянно наращивать новые знания и опыт, и группа компаний «Эшелон» предоставляет такую возможность молодым специалистам, организуя конкурс «Эшелонированная оборона 2017».



Конкурс традиционно проводится среди студентов и аспирантов ведущих вузов России и стран ближнего зарубежья. В этом году участникам конкурса предлагаются два задания: тестирование защищенности ИТ-инфраструктуры (penetration test) и аудит безопасности кода. Победят те участники, кто обнаружит больше всего уязвимостей, соберет все токены и подготовит самый детальный отчет с подробными рекомендациями по устранению уязвимостей.

Категория: Информационная безопасность

 

Поиск под капотом Глава 1. Сетевой паук

Автор: admin от 27-12-2017, 08:15, посмотрело: 78

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



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



Поиск под капотом Глава 1. Сетевой паук

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



Первый шаг — это сбор данных (или, как его еще называют, краулинг).

Категория: Информационная безопасность » Криптография

 

Объяснение SNARKs. Сопряжения эллиптических кривых (перевод)

Автор: admin от 27-12-2017, 08:15, посмотрело: 81

Привет, Хабр! Представляю вашему вниманию перевод статей блога ZCash, в которых рассказывается о механизме работы системы доказательств с нулевым разглашением SNARKs, применяемых в криптовалюте ZCash (и не только).



Источник



Предыдущие статьи:



Часть 1: Объяснение SNARKs. Гомоморфное скрытие и слепое вычисление полиномов (перевод)

Часть 2: Объяснение SNARKs. Знание о принятом коэффициенте и достоверное слепое вычисление полиномов (перевод)

Часть 3: Объяснение SNARKs. От вычислений к многочленам, протокол Пиноккио и сопряжение эллиптических кривых (перевод)

Категория: Информационная безопасность » Криптография

 

Создание дистрибутивов для разных операционных систем в Java 9 и 10

Автор: admin от 27-12-2017, 08:05, посмотрело: 109

В статье рассказывается о построении полноценных дистрибутивов для Windows, macOS и Linux стандартными средствами Java 9 и 10.



Дополняет ранее опубликованную статью об уменьшении размера дистрибутива, делая акцент не на модульности, а на особенностях создания дистрибутива для разных операционных систем.



Перечисляются произошедшие с Java 9 изменения. Описывается последовательность шагов, выполняемых скриптом сборки, с указанием мест, где возможно изменение поведения и настройка. Приводится история со счастливым финалом преодоления особенностей и ошибок, появившихся в Java 9.



Создание дистрибутивов для разных операционных систем в Java 9 и 10

Категория: Программирование

 

Сборка и дeплой приложений в Kubernetes с помощью dapp и GitLab CI

Автор: admin от 27-12-2017, 08:05, посмотрело: 104

Сборка и дeплой приложений в Kubernetes с помощью dapp и GitLab CI


В предыдущих статьях о dapp было рассказано про сборку приложений и про запуск в Minikube. При этом dapp запускался локально на машине разработчика. Однако инструмент задумывался для поддержки процессов непрерывной интеграции (CI) и сами мы используем его в основном в связке с GitLab. Чем dapp помогает в процессах CI/CD?

Категория: Программирование

 

Разработка мобильных игр — тернистый путь падавана

Автор: admin от 26-12-2017, 22:05, посмотрело: 78

Разработка мобильных игр — тернистый путь падавана
Картинка здесь эта потому лишь, что «Звездных воин» фанат я, и телефон тут есть еще

Доброго времени суток. Меня зовут Александр, я фронтенд-разработчик в небольшой компании, но речь в статье пойдет о моем хобби, если его можно так назвать – разработка мобильных игр. Хочу поведать историю моего знакомства и дальнейшего погружения в эту область и поделиться опытом с теми, кто хочет себя попробовать в качестве инди-разработчика, но сомневается. Также интересно узнать мнение опытных разработчиков по поводу тех идей, которые я пытался реализовать. Начну, пожалуй, издалека.

Категория: Веб-разработка, Android, iOS

 

Шпаргалки Java программиста 10: Lombok

Автор: admin от 26-12-2017, 21:55, посмотрело: 97

Шпаргалки Java программиста 10: Lombok



Lombok — проект по добавлению дополнительной функциональности в Java c помощью изменения исходного кода перед Java компиляцией.



По сути, проект Lombok позволяет избавиться от многословности Java в большинстве случаев и перестать писать огромные простыни кода из гетеров, сеттеров, equals, hashcode и toString (да их обычно генерит IDE, но читать и менять все равно приходится программисту), в результате Java становиться почти такой же краткой как Kotlin, Scala или C#.



Что особенно радует, Lombok очень прост и легок в добавлении к вашему проекту. Если вам, как и мне, нравится принцип KISS, то советую посмотреть на Lombok.



Так же рекомендую, посмотреть на другие статьи цикла, например последную шпаргалку по Java SE8
Интересно?

Категория: Операционные системы » Windows

 

Почему мне кажется, что студентов учат ООП неправильно

Автор: admin от 26-12-2017, 21:55, посмотрело: 87

Когда я учился в университете мне довольно тяжело было понять ООП (Объектно-ориентированное программирование), сейчас я понимаю, что просто нас учили ООП на не совсем ясных и правильных аналогиях и вообще, кажется, сами преподаватели не совсем понимали, в чем же суть ООП.



Почему мне кажется, что студентов учат ООП неправильно



Вспомните, классические аналогии ООП, вот есть класс Домашние любимцы с методами «голос» и «есть», от него мы наследуем Кошку и Собаку и все хорошо.



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



Мы уже запутались, но Вовочка спрашивает: «а где в этом зоопарке статические методы, интерфейсы, абстрактные классы и чем отличается объект класса от самого класса?». Объяснить, несомненно, можно, но сложно. Понять, еще сложнее.



Или другой классический пример, вот есть прямоугольник, от которого так и хочется унаследовать квадрат (ну по логике, квадрат это частный случай прямоугольника), но у прямоугольника есть длина и ширина, а у квадрата только одна сторона. Что-то тут тоже запутано.



Теперь подумаем как объяснить ООП лучше?

Категория: Операционные системы » Windows

 

Обновляемые смарт-контракты в сети Ethereum

Автор: admin от 26-12-2017, 21:55, посмотрело: 185

Мотивация



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



Популярные причины необходимости обновления




  • Ошибки в коде

  • Изменение бизнес требований

  • Принятие предложений сообщества об изменении работы контракта



Описание технического решения



Реализация требуемого функционала — обновление кода, планируется через разделение кода на составляющие:




  • Данные — смарт-контракты без логики и предоставляющие исключительно пространство для хранения данных;

  • Бизнес-логика — смарт-контракты описывающие логику извлечения данных из хранилища и их изменения;

  • Входные точки — иммутабельные контракты ведут учет обновления бизнес-логики и предоставляют конечному пользователю ссылку на актуальный контракт бизнес-логики
  • Категория: Операционные системы » Windows