Pull to refresh
3
0
Send message

Построение локальной карты проходимости робота

Reading time 6 min
Views 9.3K
Привет, Хабр!

В этой публикации мне бы хотелось рассказать о том, как я строила локальную карту проходимости для робота. Данная задача была необходима как для повышения навыков в программировании и освоении датчиков, так и для последующего внедрения собственных алгоритмов в работу реальных роботов на таких робототехнических соренованиях, как «Робокросс» и «Робофест».
Читать дальше →
Total votes 33: ↑31 and ↓2 +29
Comments 21

Создание «искусственной жизни» на компьютере

Reading time 10 min
Views 108K
Всем привет. В статье хочу описать свой эксперимент по созданию «искусственной жизни» на компьютере.

Как это выглядит?

картинка кликабельна

На компьютере создаётся виртуальная среда со своими правилами и выпускается первая простейшая живность. Буду называть их ботами. Боты могут погибнуть или выжить и дать потомство. Потомок может слегка отличаться от предка.

Ну а дальше за работу принимается эволюция и естественный отбор.

А мне остаётся только наблюдать за развитием мира.

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

Поведением ботов управляет код, записанный в них.

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

Внутреннее устройство кода — это самое интересное в проекте.

Код должен быть простым и выдерживать различные модификации (случайное изменение любого элемента в коде) над собой без синтаксических ошибок.
Читать дальше →
Total votes 214: ↑210 and ↓4 +206
Comments 393

Как исправить офис открытого типа: правила библиотеки

Reading time 5 min
Views 28K

Такие офисы обычно ужасны, но есть варианты


Об авторе: Джейсон Фрайд — основатель и исполнительный директор Basecamp



На прошлой неделе DHH [создатель Ruby on Rails, основатель и технический директор Basecamp — прим. пер.] разнёс в пух и прах открытые офисы. Он прав. Но погодите, ведь мы сами работаем в офисе такого типа. И мы проделали достойную работу, чтобы улучшить ситуацию. Может, есть смысл поделиться опытом.
Читать дальше →
Total votes 72: ↑68 and ↓4 +64
Comments 121

Сборник демографических рассказов в одной карте

Reading time 2 min
Views 16K

fig0


В свежем номере журнала The Lancet опубликована моя статья — любопытная карта и небольшое к ней пояснение. Решил рассказать об этом на Хабре, поскольку есть надежда, что реализованный способ визуализации данных может пригодиться еще кому-то.


Kashnitsky, I., & Schöley, J. (2018). Regional population structures at a glance. The Lancet, 392(10143), 209–210. https://doi.org/10.1016/S0140-6736(18)31194-2

Собственно, вот карта в высоком разрешении (кликабельно).


fig1


Карту можно воспроизвести точь-в-точь за несколько минут, код на гитхабе.


Данные создают цвета

Читать дальше →
Total votes 75: ↑74 and ↓1 +73
Comments 40

Дети на заказ в ближайшее время? Совет по этике в Великобритании разрешил генную инженерию человеческих эмбрионов

Reading time 2 min
Views 55K


Улучшенные дети могут стать реальными после того, как влиятельная группа учёных пришла к выводу, что «морально допустимо» генетически изменять человеческие эмбрионы.

В новом докладе, который открывает двери к изменению закона, Nuffield Council on Bioethics сказали, что редактирование ДНК может стать вариантом для родителей, желающих «влиять на генетические характеристики своего ребёнка».
Читать дальше →
Total votes 81: ↑73 and ↓8 +65
Comments 1104

Приверженцы технологии CRISPR выступают за уравнительный доступ к редактированию генов

Reading time 4 min
Views 10K

Журналист, директор компании и имам заходят в комнату. Это не анекдот, а очередной день на конференции CrisprCon.

Два дня в начале июня 2018 сотни учёных, представителей индустрии и чиновников из здравоохранения со всего мира заполняли амфитеатр Бостонского мирового торгового центра, чтобы ознакомиться с возможностями новой любимой игрушки биологов для редактирования ДНК: CRISPR. Темы были противоречивыми – от этики экспериментов на себе, проводимых биохакерами, до возможности создания глобальных надзорных органов. Частенько в комнатах наступала ошеломлённая тишина. Но в этом и был смысл конференции – CrisprCon специально задумали так, чтобы вывести людей из зоны комфорта.

«Я буду говорить по поводу того, о чём все молчат», — сказал Антонио Косме, городской фермер и общественный организатор из Детройта, вошедший в экспертную группу второй ежегодной конференции, посвящённой большим этическим вопросам CRISPR, с целью побеседовать о справедливом доступе к технологиям редактирования генов. Он имел в виду результаты опроса аудитории, появившиеся перед этим в облаке тегов на экране за его спиной, один из которых был больше остальных: «евгеника».
Читать дальше →
Total votes 34: ↑27 and ↓7 +20
Comments 90

Delphi и C++Builder Community Edition

Reading time 1 min
Views 45K
image

Случилось то, чего мы все так долго ждали. Embarcadero представила новую редакцию Delphi и C++ Builder: Delphi Community Edition и C++ Builder Community Edition. Новая редакция предназначена для индивидуальных разработчиков, студентов, стартапов и некоммерческих организаций.
Читать дальше →
Total votes 66: ↑62 and ↓4 +58
Comments 262

Дверь, которая с нами здоровается по именам и открывает только сотрудникам отдела

Reading time 7 min
Views 24K

У нас была пара дней промежутка между большими проектами, и мы решили поиздеваться над дверью руководителя подразделения. Just for fun. Потому что дроны нас в лицо уже узнают — чем дверь-то хуже?

На момент старта IT-проекта у нас уже была накладная панель, напечатанная на 3D-принтере. За два дня из железа, готовых библиотек и какой-то матери мы сделали прототип устройства, которое учитывает сотрудников или позволяет проверять, что человек прошёл через турникет именно по своему пропуску.

Никаких денег. Мы использовали только опенсорс.

Вы можете повторить это минут за 15–20 с нашим скриптом.
Читать дальше →
Total votes 54: ↑54 and ↓0 +54
Comments 42

Создание следов на снегу в Unreal Engine 4

Reading time 12 min
Views 26K

Если вы играете в современные AAA-игры, то могли заметить тенденцию использования покрытых снегом ландшафтов. Например, они есть в Horizon Zero Dawn, Rise of the Tomb Raider и God of War. Во всех этих играх у снега есть важная особенность: на нём можно оставлять следы!

Благодаря такому взаимодействию с окружением усиливается погружение игрока в игру. Оно делает окружение более реалистичным, и будем честными — это просто интересно. Зачем тратить долгие часы на создание любопытных механик, если можно просто позволить игроку упасть на землю и делать снежных ангелов?

В этом туториале вы научитесь следующему:

  • Создавать следы с помощью захвата сцены для маскировки объектов, близких к земле
  • Использовать маску с материалом ландшафта, чтобы создавать деформируемый снег
  • Для оптимизации отображать следы на снегу только рядом с игроком
Читать дальше →
Total votes 36: ↑36 and ↓0 +36
Comments 10

Лайфхаки изготовления двухслойных плат (ЛУТ)

Reading time 8 min
Views 60K

Потребность делать железо периодически возникает у многих технарей. Иногда задача позволяет нафигачить всё проводами на макетке, а иногда, к сожалению, нужно нечто посерьёзнее. Вот и меня однажды настигла потребность делать печатные платы… Лазерно-утюжная технология кустарного изготовления плат по началу сильно отталкивает своей рандомностью (на чём печатать, как греть, с какой силой давить, как отдирать, и т.д.), но друзья поделились опытом, и оказалось, что это действительно не так уж сложно. ЛУТ бесспорно дешевле любого другого варианта, и (внезапно) вполне подходит для двухслойных плат.


Кому интересно посложнее, подороже и поточнее, можно делать фоторезистом, но наша методика (основным элементом которой является особая бумага) позволяет стабильно прорабатывать шины 0.3/0.3 мм, так что в нашем сообществе бытует мнение что тян фоторезисты не нужны.


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


Под катом я поделюсь детерминированной методикой изготовления двухслойных печатных плат по технологии ЛУТ с различными резервными схемами на случай косяков. От идеи до включения. Будем работать с KiCad, Inkscape, наждачкой, утюгом, персульфатом аммония и гравёром.


Total votes 50: ↑50 and ↓0 +50
Comments 152

Метапрограммирование в JavaScript

Reading time 17 min
Views 23K
Метапрограммирование — вид программирования, связанный с созданием программ, которые порождают другие программы как результат своей работы, либо программ, которые меняют себя во время выполнения. (Википедия)

Говоря более простым языком, метапрограммированием в рамках JavaScript можно считать механизмы, позволяющие анализировать и менять программу в режиме реального времени в зависимости от каких-либо действий. И, скорее всего, вы так или иначе используете их при написании скриптов каждый день.

Total votes 41: ↑38 and ↓3 +35
Comments 16

Свидетельства, по нескольку десятилетий обманывавшие учёных

Reading time 4 min
Views 48K


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

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

Обычно учёные при сборе свидетельств делают предсказания чего-либо, и смотрят, насколько они оказались правы. Проблемы случаются, когда предсказания оказываются правильными, а теория, использовавшаяся для их создания, оказывается неправильной. Предсказания, кажущиеся особенно рискованными, и оказавшиеся правильными, кажутся очень убедительными свидетельствами, как часто подчёркивали Карл Поппер и другие философы науки. Но история показывает, что даже очень убедительные свидетельства могут обмануть нас.
Читать дальше →
Total votes 88: ↑78 and ↓10 +68
Comments 91

Создатель игры while True: learn() о программировании в геймдеве, проблемах с VR и симуляции ML

Reading time 22 min
Views 45K


Несколько лет назад мне казалось, что Олег Чумаков (тогда еще из Nival) был самым известным программистом геймдева. Постоянно выступал, проводил Gamesjam, был частым гостем подкаста Как делают игры.

С появлением на рынке VR, Олег возглавил в компании новое подразделение — NivalVR. Но вы все знаете, с виртуальной реальностью что-то пошло не так, как хотелось.

Я на долгое время отвлекся от геймдева, а взглянув снова, увидел — у команды Олега дела стали только интереснее. Теперь она называется Luden.io и их симулятор специалиста по машинному обучению while True: learn() стал хитом в своей нише, вокруг него творится куча крутых историй.

Мы поговорили с Олегом, но я не смог выбрать только одну тему — слишком уж насыщен и разнообразен был его путь. А чтобы программист говорил о программировании не боясь быть непонятым, беседу поддержал мой друг, коллега и опытный разработчик fillpackart.
Total votes 87: ↑84 and ↓3 +81
Comments 40

Что случилось с парадоксом Ферми

Reading time 4 min
Views 42K
Парадокс Ферми заключается в том, что вероятность возникновения внеземной цивилизации обычно оценивается довольно высоко, а признаков её существования что-то не видать. Недавно на arxiv появился препринт Сандерса с соавторами «Dissolving the Fermi paradox», который уже успели интерпретировать как отмену этого парадокса (правда), пустую болтовню в отсутствие данных (скорее правда, но верно для парадокса Ферми вообще, а не только для этой статьи), и как доказательство несуществования инопланетян и/или низкого L (неправда). В этой статье попробуем разобраться, что в препринте содержится на самом деле.

Читать дальше →
Total votes 61: ↑60 and ↓1 +59
Comments 774

Настолка для обучения основам электрических цепей. Почему бы и нет?

Reading time 2 min
Views 26K


Ранее я уже писал, как делал «электрический» конструктор из… картона. Увы проект пока так и остается на стадии прототипа, не перерастая в промышленный «физический» вид и ждет своего времени (и инвестора).

Но я решил пойти дальше — раз уж начали делать из картона, доведем ситуацию до ее логического завершения — сделаем полностью картонную настольную игру, но с электрическим сеттингом и обучающим эффектом. Вариантов было много — начиная от простой «ходилки» и заканчивая амитрешем с зомби с движением электронов и злобными короткими замыканиями и вздувшимися конденсаторами.
Читать дальше →
Total votes 54: ↑54 and ↓0 +54
Comments 32

Моё участие в разработке Uncharted 4

Reading time 9 min
Views 31K

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

Итак, приступаем:

Система постов


Прежде чем начать, я хотел бы рассказать о использованной у NPC системе постов. Я не работал над ядром логики этой системы, а помогал писать клиентский код, который её использовал.

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

Total votes 55: ↑52 and ↓3 +49
Comments 34

Эмоции формируют используемый нами язык; но второй язык помогает их обойти

Reading time 4 min
Views 18K


Недавно на шоссе меня подрезал таксист. Я без промедления выпалил в адрес этого бедолаги набор ругательств. Что меня удивило, так это то, что все эти слова были на испанском. Мне, как человеку, выросшему в англоязычной среде, а испанский выучившему во взрослом возрасте, английский должен был быть более доступным. Однако же я проклинал этого незнакомца на испанском языке с мексиканским акцентом, показывая соответствующие жесты руками.

Большинство людей знакомы с ощущением того, как в подобных ситуациях эмоции берут верх над разумом, но почему часто настолько проще выпустить пар при помощи неродного языка? Большая часть людей, изучающих иностранный язык, сможет порадоваться тому, что всякие запретные темы при помощи второго языка довольно легко поднимать, и более того, это даже бывает весело. И если я не буду ругаться по-английски в присутствии моей бабушки, то по-испански я ругаюсь, как Тони Монтана.

И, между прочим, существует научное объяснение тому, почему мы часто гораздо легче отстраняемся от эмоций, используя иностранный язык. Кроме того, что из-за этой отстранённости нам легче говорить всякие непотребства, недавние исследования показали, что она может изменять и наше восприятие морали.
Читать дальше →
Total votes 21: ↑20 and ↓1 +19
Comments 11

Рассказ студентки: о минусах итальянского ИТ-образования, пасте и жизни с миланской старушкой

Reading time 8 min
Views 20K
Альмира Муртазина, бакалавр 3 курса Университета Иннополис, изучала искусственный интеллект и теорию игр в Миланском техническом университете по программе обмена. Девушка рассказала, как попутно с учёбой она покорила Альпы и насколько схожи популярные стереотипы об итальянцах с действительностью.

image
Читать дальше →
Total votes 37: ↑29 and ↓8 +21
Comments 24

Введение в смарт-контракты. Их потенциальные и реальные ограничения

Reading time 21 min
Views 18K


Это, пожалуй, самая интересная статья о перспективах применения смарт-контрактов в деловой практике, которая мне попадалась (правда, попадалось их не так уж много). Она написана юристами и опубликована в конце мая на сайте Гарварда. Хоть и на примере США, текст раскрывает такие вопросы как применение законодательства к сделкам на смарт-контрактах, проблему понимания сторонами кода, проблему оракулов, риски и другие.


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

Читать дальше →
Total votes 35: ↑28 and ↓7 +21
Comments 2

Гик-снайпер или как сделать «зоркий глаз»

Reading time 5 min
Views 45K
Пригласили меня как-то на стрельбище с использованием высокоточного оружия (по простому — снайперкой пострелять). Это стрельба из ружья, которое поражает цели на довольно больших расстояниях, например, на километр. Отстреляв свои первые три пульки мне захотелось посмотреть, куда же я все-таки попал. Мишень находится очень далеко и отверстия от попадания в прицел не видны. Единственным возможным решением оказалось — двигаться к мишени и посмотреть все попадания непосредственно на месте.

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



Внимание, под катом много фотографий!
Как это было
Total votes 64: ↑64 and ↓0 +64
Comments 166

Information

Rating
Does not participate
Registered
Activity