hochk

hochk

Будни побуждают быть буддой
Пикабушник
31К рейтинг 906 подписчиков 41 подписка 44 поста 25 в горячем
Награды:
10 лет на Пикабу За найденных котиков самый сохраняемый пост недели
236

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

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


Дело в том, что атомы несовершенны. И они, стремясь к гармонии, ищут того, с кем они это могут сделать. Звучит поразительно, но на деле всё так и есть, а теперь подробней.

Для начала давайте посмотрим, как устроен атом. Он довольно сильно похож на солнечную систему. Внутри у него массивное ядро, а вокруг летают относительно маленькие электроны. Поподробней рассмотрим самый простой атом во вселенной – атом водорода. Ядро у него в подавляющем большинстве случаев представляет обычный протон. Массивную положительно заряженную частицу. А электрончик заряжен отрицательно, вспомнив что разноимённо заряженные частицы притягиваются, понимаем почему электрон вокруг протона крутится, он попросту притягивается кулоновскими силами.


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

Такие атомы одно и того же элемента которые отличаются только массами называются крутым словом – изотоп. Обычно для них не придумывают отдельных названий, просто говорят уран 235 или уран 238. Но для водорода сделали исключения и все три его возможных изотопа имеют свои имена, протий – одинокий протон, дейтерий – протон + нейтрон, и тритий – протон + два нейтрона.


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


Для водорода это 1,00794. Атомная масса чистого протона + электрон немного меньше. Разница получается от того, что в природе есть изотопы. Взяли миллион атомов взвесили их, но не в килограммах, а в относительных атомных массах, которая равна кстати 1/12 массы изотопа углерода С12, а потом результат разделили на миллион и получили 1,00794. Другими словами, это число сумма масс изотопов, умноженных на их процентное содержание на земле.


Теперь подробней об атомах. Электроны крутятся вокруг ядра, но не где захотят, а только на особых орбитах, которые называются энергетические орбитали. И вот здесь начинается самое интересное. Орбитали представляют собой концентрические сферы, т.е одна внутри другой, как матрёшки, а внутри есть ещё такая штука как подуровень. И у каждого подуровня есть максимальное количество атомов, которые он может уместить внутри, также есть определённые правила заполнения. Если атом имеет полностью завершённую внешнюю орбиталь, то он – совершенный. Ему вообще ничего не нужно, он и сам по себе крутой. Он вообще не будет участвовать в химических реакциях (ну или делает это крайне неохотно). В химии такие атомы называют – благородными, или инертными. Это, например гелий, неон аргон.


Остальным атомам, которые имеют незавершённые подуровни энергетических орбиталей, тоже хочется совершенства, и они начинают взаимодействовать друг с другом. Самый простой пример может нам показать атом тот же атом водорода, у которого вокруг ядра болтается одинокий электрон. Его внешняя энергетическая орбиталь может вместить два, а потому он несовершенен. И он ходит вокруг, ищет такого же бедолагу, с которым можно задружится. При встрече с другим атомом водорода, они соединяются. Их электроны теперь не принадлежат одному, а одновременно обоим атомам, и вроде теперь на энергетической орбитали каждого из них по два электрона. Они теперь счастливы. Они теперь не атомы, вместе они стали молекулой. Это молекула довольно гармонична и каждый атом участник обладает одинаковыми правами, потому что тянет к себе электрон с одинаковой силой. Такая связь атомов называется ковалентная неполярная.


Немного более сложный пример с атомом кислорода и водорода. Кислород имеет полностью заполненную внутреннюю орбиталь два из двух электронов, и не до конца заполненную внешнюю, шесть из восьми электронов. Чтобы стать полностью совершенным, ему либо нужно отобрать у кого-нибудь два электрона, либо раздать 6. Представьте если бы у нас издали указ, о том что квартиры дают тем семьям у кого либо два ребёнка либо 10. А у вас их 8, конечно проще взять ещё двух чем раздать своих шестерых. Поэтому атом кислорода начинает искать атомы водорода с одним ребёнком, и понятно, что ему нужно два таких атома. Втроём они образуют такую шведскую семью, в которой 10 детей - электронов. И снова три атома образуют новую молекулу, новое вещество, вы его конечно узнали — это вода. Теперь атом кислорода имеет 8 электронов на внешней орбитали, а каждый из атомов водорода по два. В этой молекуле не всё так радужно как в первом примере, дело в том что кислород гораздо сильнее тянет к себе электроны. Он такая яжмать, которая собирает электроны вокруг себя, а атомы водорода, приходят к ним только на выходные. Этот вид связи называется ковалентная полярная.

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


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


В целом желание атомов завершить свою орбиталь и образует всё многообразие химических реакций, дальше частности.


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

Показать полностью
169

5 фактов что мы живем в компьютерной игре.

Всем привет. Так получилось что с недавнего времени я инди разработчик. Пишу игру. А когда готовлю на кухне смотрю всякие научно-популярные видео о квантовой механике, пока чищу картошку. И вот я заметил ряд очень уж похожих фич, в нашей реальности, и упрощений которые позволяют себе разработчики во время написания игр, которыми я бы и хотел поделится. А для тех кому лень читать, даже видео запилил. вот ссылка кому лень читать https://www.youtube.com/watch?v=UC4_3Y_5YA8


Факт №1. Наш мир состоит из пикселей.

Как и в любой компьютерной игре, наш мир состоит из мельчайших кусочков пространства, называемых планковской длиной. Она жуть какая маленькая, и равна 1,6⋅10−35. Если честно, то когда количество нулей после запятой больше чем три-четыре штуки, я уже с трудом понимаю о чем идёт речь, а тут их 35. Но почему именно эта величина? Дело в том что было научно доказано, что за пределами этой величины, перестают работать законы физики, и ничего измерить или посмотреть там уже нельзя. Ну вот, например есть у вас электрон, вы теоретически можете подвинуть его на планковскую длину, а на половину её значения ну никак не передвинете. Это минимальный шаг в нашей вселенной. Т.е. фактически наша вселенная не непрерывная, а дискретная, т.е. состоит из пикселей.


Факт №2. Волновая функция.

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


Факт №3. В нашем мире существует принцип неопределённости.

Он не позволяет точно определять скорость и положение маленьких объектов. Точно можно либо измерить координаты. Либо скорость. Но не то и другое одновременно. С позиции обычной логики, это вообще не понятно, но вот если думать о том, что наш мир — это игровой движок, то становится всё ясно. Это сделано для упрощения расчётов. Зачем разработчику обсчитывать действие частицы с точность до планковской длинны. Когда это расчеты можно значительно снизить, и на уровне микромира внести такую штуку как неопределённость.


Факт №4. Трёхмерность мира.

Экспериментально показано что количество пространственных измерений в нашей вселенной больше, чем три, но мы можем передвигаться лишь в трёх. Например, некоторые уравнения квантовой механики, прекрасно ведут себя если считать количество пространственных измерений равным 4, а вот когда из становится три, то все выкладки рушатся. Но самое интересное это с теорией струн. Теорией, которая на данный момент наиболее точно описывает строение мира и вселенной. Она работает аж с 10-ю пространственными измерениями. Т.е. частицы, где-то там, на своём микроуровне, летают в 10 пространственных измерениях. И все уравнения прекрасно решаются, а если измерений три, то ничего не решается.


Факт №4. Трёхмерность мира.

Экспериментально показано что количество пространственных измерений в нашей вселенной больше, чем три, но мы можем передвигаться лишь в трёх. Например, некоторые уравнения квантовой механики, прекрасно ведут себя если считать количество пространственных измерений равным 4, а вот когда из становится три, то все выкладки рушатся. Но самое интересное это с теорией струн. Теорией, которая на данный момент наиболее точно описывает строение мира и вселенной. Она работает аж с 10-ю пространственными измерениями. Т.е. частицы, где-то там, на своём микроуровне, летают в 10 пространственных измерениях. И все уравнения прекрасно решаются, а если измерений три, то ничего не решается.

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

Предположим, вы прямо сегодня решили написать компьютерную игру, и используете для этого один из многих современных игровых движков. Почти все из них позволяют создавать как двумерные так и трёхмерные игры. Свой проект вы решили написать в двух измерениях с видом сверху. Т.е. шар у вас будет кругом, а куб -квадратом, а персонажи смогут передвигаться, только вперёд, назад, влево и вправо. Но никак не вверх или вниз, вы ограничиваете это программно. И вот тут самое интересное. Многие операторы в современных движках имеют только трёхмерный вариант. Ну действительно зачем, например вводить разные операторы для расчета расстояния между двумя объектами в 2D и 3D. Ведь можно просто в двумерном мире считать, что третья координата у обоих объектов равна нулю, и мы получим в точности оператор для двумерного мира.

Далее вы свою игру заселили существами под управлением нейросети, и они начали там развиваться. Спустя несколько циклов развития, они начали осознавать себя и изучать окружающий мир. И вот они обнаруживают что на очень низких уровнях строения их мира (вашей игры), действуют не двумерные законы, а трёхмерные. И действительно, движок то у нас изначально трёхмерный, просто мы урезали часть его возможностей. Существа не понимают, что это такое, они не могут пойти вверх, они ограничены вашими правилами. Их мир это одна из миллиардов плоскостей которые могут быть в трёхмерной игре, но вы как автор решили оставить только одну.

Замечаете закономерность? Мы – человечество, сейчас понимаем, что на низших уровнях строения нашей вселенной действуют законы десятимерного мира. Т.е. наша вселенная — это трёхмерная модель, написанная на десятимерном движке!


5. Наблюдатель своим присутствием меняет физическую реальность.

Да это правда. Я коснулся этого во втором пункте, теперь расшифрую. Для физиков как заноза в одном месте представляется такая вещь как наблюдатель. Никто не может понять почему так, но это незыблемый и самый непонятный факт физической реальности. Когда вы просто смотрите на объекты микромира – они изменяются. Самый просто и яркий эксперимент, подтверждающий это, это знаменитый двущелевой эксперимент. Суть его в том, что электрон ведёт себя по-разному когда мы на него смотрим, и когда не смотрим. Представите себе узкую щель, сквозь которую может пролететь электрон. А за щелью – экран, на котором видно в какое место попал электрон. Если щель одна, то мы увидим яркую полосу по центру, это следы от столкновения электронов с экраном. А когда их две, то ожидаемо увидеть две ярких полосы, но в реальности этого не происходит, в реальности мы видим картину которую оставляют волны – интерференционную картину. Довольно неожиданно, что электрон будучи частицей ведёт себя как волна. Учёным стало интересно как так происходит, они поставили датчик возле одной из щелей, чтобы узнать где же он на самом деле пролетает, и после этого, т.е. когда мы точно знаем где он пролетает, полос сразу становится две, как и подобает обычной частице. Это означает что, когда мы точно знаем где частица, она ведёт себя иначе чем тогда, когда мы не знаем где она.

Только подумайте электрон – это не частица, которую можно потрогать или посмотреть, это просто облако вероятности. А точка в это области – это не вероятность того, что электрон находится в этой области, а вероятность что мы его найдём там если будем искать! Почувствуйте разницу в предыдущем предложении, лично мне от неё становится страшно.

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

Эйнштейн при всей масштабности взглядов до последнего не верил в это, и спорил с Нильсом Бором, бросаясь такими словами «Вы действительно считаете, что Луна существует только когда вы на неё смотрите?» На что Бор ему ответил «Попробуйте убедить меня в обратном».


Все эти факты – косвенные, они лишь намекают нам о том что наш мир - вполне вероятно -компьютерная симуляция. Единственным точным и 100%-ым доказательством того, что мы в игре, было бы явление пользователя. Ну например если бы один из пользователей взял под контроль аватар в игре(любого из нас), и стал совершать разные непотребства, ну там мертвых воскрешать, производить еду и вино из ничего, сам бы воскрес. В общем читер. Но у нас с вами такого уже давненько не было, так что остаётся лишь анализировать косвенные признаки, которые тем не менее очень хорошо подтверждают данную теорию.


А теперь выводы. Если мы действительно с вами персонажи игры, то у меня для вас плохие новости. Мы не пользователи. Мы лишь НПС или в лучшем случае игроки под управлением пользователей. И этому тоже есть подтверждение.

Всё дело в том что наш мозг – это громадная нейросеть. И в этой нейросети сигналы идут от одного нейрона к другому через аксоны и синапсы. Так вот есть точное расчёты которые показывают, что ион кальция двигаясь по аксону, может не активировать следующий нейрон попросту в силу принципа неопределённости Гейзенберга, даже если для этого были все предпосылки. Расшифрую на человеческий язык. Действие нейросети - это результат работы громадного количества нейронов приводящих к принятию решений. Допустим у вас есть некая делима, и два варианта её решения. А и Б. Все ваши доводы выкладки и желания склоняются в сторону решения А. Нейросеть полностью обработала и выдаёт свой результат – решение А, но результат не считывается. Потому что ион кальция, который его переносил превратился в облако вероятностей и ускакал неведомо куда. А вам только остаётся принять решение Б, а потом жить с этим. Пойти на работу строителем, хотя всю жизнь мечтали быть поваром. Купить квартиру в Омске, вместо дачи на Филиппинах. Сделать предложение Люське, а не Светке и так далее.

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

Показать полностью

То чувства когда комментарии о приложении "Пикабу" читать интересней чем само пикабу.

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

Показать полностью 3
3

Бунт ради бунта?

Доброго времени суток всем бунтующим. Я на пикабу лет почти с самого начала (так сейчас модно говорить). Зарегистрировался почти пять лет назад. Пикабу для меня это развлекательный ресурс. Я не прихожу сюда "гореть". Это сразу видно по количеству лайков и дизлайков в моём профиле. Но на этот раз я всё таки не смог остаться в стороне. У меня подгорает. Но проблема в том что я толком не знаю отчего горит. Просто может мы стали теми "кому раньше кока-кола была вкуснее". но суть поста не в этом. Все кричат что стало плохо и что пикабу скатился. Но пока просто возмущаются и не просят никаких конкретных действий. вот например пост, собрал 10 000 лайков, и автор призывает не заходить на пикабу. чтобы... чтобы что? Я так и не понял чего добивается автор. Что должны сделать модераторы и админы чтобы не скатится в бездну маилГруп?

Так же призыв не посещать пикабу сутки... ну довольно спорный момент. А вот что я реально увидел так это данный коммент:

Я посмотрел на рейтинг этого приложения. И сколько людей его лайкнуло. И что же видим

17000 оценивших. Т.е. если реально каждый из бунтующих, оценит приложение в один бал, то последствия для приложения будут плачевны. И может тогда администрация пойдёт на переговоры. Я думаю что очевидный лидер этого движения -- @Uspeli , он и должен вести переговоры от имени пикабушников. Тем более он просился в модераторы. Если он получит эту должность, для меня это будет олицетворением справедливости, а он мостом между бездушными админами и добросовестным сообществом.


Я думаю что конфликт будет исчерпан если @Uspeli , во первых восстановят из перманентного бана, а во вторых возьмут на должность модератора. А он уже с высоты своей должности снова всех попросить поставить адекватные оченки приложению. Я понимаю что ящик пандоры открывается в одну сторону, но мы ведь с вами пикабушники, и большинство из нас держит слово. Лично я обещаю изменить свой голос о приложении после выполнения данных требований администрации.


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

Показать полностью 1
604

Новые возможности игрового движка

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

18

Дауншифтинг. Начало.

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


Итак, у кого из нас никогда не было идеи всё бросить и свалить куда подальше. Наверно у каждого за редким исключением, или у того, кто недавно это сделал. Я работал в крупной компании более 10 лет. До этого преподавателем, до этого учителем, до этого универ, школа, садик, а чем я занимался до садика, я не помню. Но я точно помню, что после универа, я постоянно работал. У меня не было ни длительных перерывов в работе, ни долгих больничных. Офис каждый день. Нет вы не думайте, что у меня тяжелая работа была или что я жалуюсь, напротив мне нравилось даже. Но всё началось с банального разговора о том, кто бы чем занимался если бы у него было достаточно времени и денег. Кто то желал путешествовать, кто то делать поделки, а я сказал что хотел бы написать свою игру. Т.к. сам тот ещё геймер. Ну и наш начальник говорит: «А что тебе мешает? Пиши». И я очень сильно задумался над этим. А действительно что мне мешает бросить всё на хер, и заниматься тем, чем бы мне действительно хотелось. Обдумав всё как следует, я взял отпуск на месяц за свой счет, и попробовал заниматься разработкой игры. И мне понравилось! Наверно ничего не было интересней для меня, чем это занятие. Тогда я решился на увольнение. Ну вот не прям сразу решился, конечно. Пару недель я ходил мрачнее тучи, потому что было очень страшно. Я никогда в своей жизни не увольнялся до этого. Только переходил на другую работу. Я считаю себя довольно отважным, но это сделать было на самом деле страшно. Когда озвучил начальнику, то она повела себя довольно неожиданно: предложила работать 4 дня в неделю вместо стандартных пяти (знает как меня приманить). Опять же подумав, я понял, что это от лукавого и всё же уволился. (потом были ещё более выгодные предложения, с работой программистом вахтой и т.п.)


После этого по всем правилам настоящих дауншифтеров я уехал в деревню. Деревня находится в сосновом бору и носит, неоригинальное для себя название – Боровуха. Картошку я не выращиваю)) живём с женой в свободной квартире, тёщиных друзей. Совсем рядом лес и озеро, часто гуляем там с женой. Ну а теперь, собственно, о главных страхах, плюсах и минусах подобного решения.


Итак начну со страхов. Первый страх – это просто поменять в корне свою жизнь, сорваться с привычного места. Потерять всех близких друзей, остаться без работы. Это одновременно и прельщает, и пугает. Ведь по китайской поговорке «не дай Бог тебе жить во время перемен». Работы была отличная, страшно не найти ей достойную замену в случае, когда кончатся деньги. Страшно разочароваться в принятом решении. Страшно заново налаживать социальные связи и искать друзей. Но главный страх – банально остаться без денег. Быть может для людей, которые время от времени меняют работу, это и вовсе не страх, но я подчеркну, что в свои 35, я ни разу не увольнялся.


Теперь к сладкому: плюсы подобной жизни.

- Главный для меня плюс – это то, что я не тороплюсь больше жить. Раньше для меня жизнь была дискретной, от пятницы до пятницы. Ходишь как зомби неделю. Пятница – выдох, а вечер воскресенья, самый грустный момент в жизни. Для меня больше нет пятниц, я всегда радуюсь вечеру, потому что завтра будет ещё один день.

- Я выспался. Наверно за последние много лет я на самом деле стал высыпаться. Потому что на работе я был как мокрая соль – не высыпался. Работая, ты постоянно стараешься украсть у себя немного времени от сна. Посмотреть ещё одну серию черного зеркала вместо сна, поиграть ещё пол часика после 12 вместо сна и т.д. Сейчас мне можно ложиться спать вовремя и просыпаться вовремя. Потому что у меня есть время.

- Я занимаюсь тем, чем мне на самом деле нравится. Я программирую, в среднем, по 10-12 часов в сутки и совершенно от этого не устаю. А если устаю, то могу не программировать, а заняться тем, что нравится, но мне нравится программировать.

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

- На меня гораздо сложнее повлиять внешними обстоятельствами, я стал гораздо более автономен и не переживаю от того, что рубль упадёт. Какая мне теперь разница, мне всё равно никто не платит.


Минусы. Оффтоп. Большинство самоубийств, по статистике приходятся на третью неделю января. Психологи объясняют это тем, что на новый год, человек даёт себе обещания, он думает, что с нового года всё изменится, жизнь изменится. А жизнь не меняется. Две недели достаточно чтобы понять это и нарушить обещания данные самому себе. Остаётся один путь – в петлю.


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

- Средства на существование. Мы с женой пользуемся накоплениями, да и она фрилансер, поэтому нам пока хватает. Но страшно если она совсем устанет от фриланса, а я так и не успею выпустить игру, или если игра окажется полностью провальной (что не исключено). Мы с ней не требовательны, и много у нас не уходит, но всё равно деньги нужны. Хотя в жизни в деревне есть свои плюсы. Можно совсем не дорого питаться овощами с грядок местного населения.

- я не могу больше питаться в маке))) да, и это печально. Не то чтобы я прям фанат, но эта мысль даёт полностью противоположный эффект от мысли о том, что я могу пойти гулять. Я и раньше не часто туда захаживал, но я мог себе это позволить сделать в любой день. Хоть каждый день по нескольку раз. Теперь я понимаю, что кофе из мака больше не для меня. И от этого печально. Реально очень грустно от этого.

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


Подведу итоги. Я дауншифтер 3 месяца. Почти два месяца занял переезд и обустройство на новом месте, так что «стажа» у меня маловато. Итого, месяц я полностью предоставлен сам себе. Я не чокнулся, не захотел вернуться на работу, и я гораздо более счастливый нежели раньше. Я встретил новых знакомых, и надеюсь, что некоторые из них станут друзьями. Опять же круг общения теперь ты выбираешь сам. Он не завязан на коллегах, и может быть таким, каким сам захочешь. В целом я доволен решением, и с тоской понимаю, что нужно было сделать это раньше. Тем более что рынок удалённого труда сейчас только ширится. Для тех кому интересно что именно я делаю, прошу в комментарии)))))

Показать полностью
586

Научился сам – научи других. Или нейросеть + генетический алгоритм самообучения.

Итак, друзья, я работаю офисным планктоном. Пишу отчеты SQL + VBA, и много другой буздушной лабуды. Но дух интересного программирования не выдавить из себя будничной работой, и я решил создать паука, который передвигает лапками под управлением нейросети. Поняв, что паука мне пока не осилить, я решил снизить амбиции до инфузории туфельки, ну или на крайняк до амёбы. Ок, чтобы не заморачиваться сильно решил всё писать на юнити. Установил,  и понял что С# и VBA довольно отличаются друг от друга. Пару недель убил на изучение основ, ещё столько же чтобы написать скучные скрипты загрузки/генерации мозгов и клонирования объектов.

А потом для меня началась настоящая магия. Сейчас я вам покажу, что имею в виду:

Может для вас это и непонятная хрень, но для меня это 20 маленьких агентов под управлением нейросети. Сейчас объясняю что происходит на этой гифке. По центру белый чувак – это Адам, он вообще полноценный, только без мозгов. Точнее в нём есть мозги, но нет души, а душой для наших малышей будет вес связей между синапсами нейросети. Мы создаем 20 клонов Адама с рандомным цветом и для каждого из них создаем цель его жизни – его вальхалу, то куда он должен прибыть. Эффективность нашего малыша мы и будем оценивать по тому, настолько близко за время своей жизни он в среднем был от своей цели (последняя, кстати, имеет такой же цвет как и он сам). Каждый агент не будет знать ничего об этом мире, кроме того где именно расположена его цель, ну и пару фактов о себе (свою скорость, тангенциальное и нормальное ускорение, касту, вероисповедание, социальный статус)

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

иии… магия…

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

Да, этот чувак явно знает, чего хочет в этой жизни! Пускай он не может поворачивать вправо, зато влево поворачивать у него прекрасно получается.

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

Итак, что мы будем делать. Мы будем запускать эпохи, каждая по 1 минуте. Наши малыши будут развлекаться, а потом мы их всех убьем нахер, а затем мы сменим эпоху, позволив самым лучшим оставить потомство. О да, детка! Дай мне вставить свою единичку между твоих ноликов. За малышами будет постоянно бдеть беспристрастная фитнес функция, оценивая интеллектуальные способности каждого из них. А в конце эпохи самый ушлый засунет случайную часть своего мозга в менее разумного паренька (на самом деле всё чуть сложнее, но суть вы уловили).

Эпохи идут так медленно… ускорим ка время в 5 раз. 12 секунд может для вас и не продолжительный период, а для моих малышей это вся жизнь. После обмена генами, чуваки начинают вести себя странно, вот вам пара примеров:

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

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

ну и мой любимый

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

Ещё пару эпох спустя. Как бы ни радужна была жизнь маленьких агентов, примерно каждая 5-я популяция спускается в бездну разврата и слабоумия. Их гены вырождаются, и возврата из этой бездны уже нет. Вот вам печальный пример такой популяции

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

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

Примерно 20 поколений спустя, популяция приходит к своему локальному максимуму – т.е. она уже не развивается, хотя все её особи имеют довольно высокий уровень интеллекта. Вот вам две эпохи из жизни такой популяции

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

Попробуем поэкспериментировать с такой популяцией. Передвинем их таргеты на непостижимое ранее их мозгу расстояние - 500 единиц координатной сетки.

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

Понравилось? Тогда отправим их в другое место

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

Наблюдая за ними я каждый раз думаю что вот ещё пара поколений и кто-нибудь из них научится управлять событиями на звуковой карте и крикнет мне сквозь экран монитора:

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

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


Вот и всё что я хотел вам рассказать. Спасибо что дочитали))))

Параметры нейросети:

кол-во входов: 6.

кол-во выходов: 4.

кол-во внутренних слоёв: бессовестный один слой.

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

Неожиданный поворот в комментариях)))

Показать полностью 8
Отличная работа, все прочитано!