суббота, 10 марта 2012 г.

Снижение издержек для мобильности

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

С точки зрения самоорганизации мы можем влиять на данную мобильность.

Иллюстрация в экономике

Работа 1937-го года, от Рональда Коуза, за которую он получил в 1991-м году Нобелевскую премию по экономике. В двух словах, суть работы и результата таковы. В обществе имеются связи/институты/зависимости, которые работают, изменяются, возникают/исчезают со временем. Например если мы привыкли покупать хлеб в соседнем магазине, то это сформированная связь. Аналогично связи это если мы знаем куда звонить в случае пожара; если у завода есть сложившееся и известное множество заказчиков; если люди знают, что есть дядя Вася, хорошо делающий ремонт, а Вася знает где и как брать стройматериалы, а у его поставщиков есть много клиентов и т.д.. Таким образом, когда функционирует экономика, большое значение имеют такого рода общественные связи, и, если их разрушить, то новые восстановятся не так быстро, а в течение этого времени будет паралич, убытки и разрушения. Поэтому с одной стороны, опасно все сразу менять, с другой стороны, менять желательно постепенно, с третьей стороны, менять иногда приходится, и что же тогда в этом случае делать?

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

Рассмотрение как системы

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

Это могут быть глобальные и оченьвидные перемены (смена места работы, переезд на новую квартиру, выйгрыш миллиона $ в лотерею, изменение числа родственников, …), так и малые и не совсем заметные (поиск новых партнеров, появление новой информации, изменения сознания под новую реальность, …).

Способы повышения мобильности

Снижение издержек

Для большого числа уже нам известных операций нам требуется какое-то время и стоимость. Если мы снижаем эти составляющие, то это снижает издержки в целом. Это можно сделать, если вложиться в инфраструктуру: повысить степень доступа к информации (скорость, время обращения, объемы хранения, — компьютер/блокнот/интернет всегда под рукой и с достаточным каналом/ручкой/кнопками), тжс по системам коммуникации (доступ к телефону, почте + e-почте, знание иностранного языка, …), к системам транспорта (авто, велосипед, удаленное присутствие, …). Люди, которые отказываются от Интернета, авто, телефона, … — понижают свою мобильность. Им сложнее выполнить практически любые операции по изменению своего состояния.

Увеличение доступных связей

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

Уменьшение зависимости от различных факторов

В силу каких-либо обстоятельств мы зависимы от множества вещей. Если подъем строго в 6:00, а отбой в 23:00, то это уже зависимость. Также если покупаем балабулечки строго в одном месте, не будем разбирать чайник до истечения гарантии, обязаны выполнить deadline, … Чаще всего такого рода зависимости приносят плюшки и не обременительны, и, по-моему, редко могут быть принесены в жертву для мобильности.

Вывод

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


четверг, 8 марта 2012 г.

Самоорганизация оперативной памяти

Для всех, кто более-менее сталкивался с вычислительной техникой, известно, что компьютеры производительнее, если они в своем распоряжении имеют более большие ресурсы памяти. Не важно какой — оперативной, внешнего диска, размер кэша, … Если приложению необходимы ресурсы, то система их предоставляет. Если памяти хватает, то найти непрерывный участок памяти проще. Если нужной памяти не хватает, то начинаются проблемы (вида расширения свопа или невозможности выполнения операции). Для решения есть два основных пути: расширение памяти и изменение организации работы. Здесь пойдет речь о применении этих двух способов на более высоком уровне абстракции, только уже понятном обычным пользователям.

Представление рабочего процесса и ресурсов

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

Т.о. наглядное представление — есть область где могут находится предметы, и ими мы манипулируем.

В каких случаях операции происходят быстрее?

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

Здесь выделю три основных критерия:

Общий объем оперативной памяти
Чем больше оперативная память, тем лучше. Лучше иметь более большой стол, больше ОЗУ на компьютере, и ещё два монитора вместо одного, уметь держать большее число понятий в голове.
Объем занятой памяти
Чем меньше занята память, тем лучше. Меньше предметов на столе, меньше лишних мыслей о чем-то, меньше директорий-файлов на диске, …
Меньшая фрагментация памяти
Лучше, когда предметы, которые находятся на столе, находятся рядом друг с другом, нежели разбросаны по всему столу. В таких случаях быстрее можно найти нужное место для новых предметов, легче управлять оперативными вещами (с которыми прямо сейчас работаем).

Что же можно сделать для улучшения?

Выгрузка после выполнения задачи

Закончили задачу — освободите оперативную память. Предметы на столе должны быть убраны, посуда в раковине помыта, вещи повешены в шкаф или отправлены в ящик для стирки, игрушки поставлены на полку, окна в браузере — закрыты.

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

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

Очистка перед выполнением задачи

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

Перед новой когнитивной задачей мозг лучше освободить от того, что есть.

Перед работой за письменным столом убрать по возможности все лишнее.

Cброс в более медленную память

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

Расширение памяти

Простой, но ресурсоемкий способ. Больше стол, больше монитор, больше шкаф, … Способ действительно прост, но в ряде случаев требует ресурсов ($) или усилий (времени на поддержания состояния), при этом мы ещё зачастую ограничены (дотянуться до всех предметов на бесконечно большом письменном столе сложно). Расширить оперативную память мозга можно например с помощью N-back, но это требует большого количества времени, сил и организации себя.

Разделение задачи на подзадачи

Принцип известен и прост. Если можно разбить задачу на две более малые, то их лучше сделать отдельно. Здесь же получается, что для подзадачи зачастую требуется меньше памяти, поэтому мы берем задачу A, разбиваем на B и C, загружаем в память B, решаем, освобождаем память, загружаем C, решаем, освобождаем.