Метастабильность
2011-05-04 01:55![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Сырые, только что освежеванные мысли.
Явление метастабильности хорошо известно в электронных схемах. Арбитр — электронное устройство, которое вычисляет, грубо говоря, по какой из входных линий сигнал пришел первым. В различных моделях арбитров возникает ситуация, когда схема приходит в неустойчивое состояние. Неустойчивое состояние разрешается (во всяком случае, инженер старается сделать схему такой, чтобы оно разрешалось). Однако (в моделях, опять же) оказывается, что построить арбитр, который гарантированно разрешает конфликт, невозможно: для любого арбитра случится такая ситуация, что схема не придет в определенное состояние ни за какое конечное время.
В частности, в [1] доказывается, что в аналоговой модели любой цифровой цепи арбитра метастабильность непременно возникает. Авторы статьи [2] идут еще дальше: в цифровой модели цепи, т. е. состоящей из логических элементов и проводов, свободный от метастабильности арбитр тоже невозможен. Небольшое ограничение, накладываемое в этой работе на цепь, состоит в том, что никакой провод не соединяет выход логического элемента с его же входом. Однако, это ограничение не очень сильно, и, в конце концов, не меняет дела: из двух свойств, потребных для отсутствия метастабильности, без этого ограничения одно все равно невыполнимо.
Насколько важна метастабильность на практике? Известно, что первые многопроцессорные вычислительные машины (а это было до того, как явление было исследовано математически) страдали от проблем с арбитражем. В современных системах минимизируется вероятность входа арбитра в метастабильную область. Например, в [3] показывается, что определенная схема арбитра имеет среднее время между ошибками арбитража, превышающее 10200 лет. Само собой, вероятность эта ничтожна, чтобы иметь практические последствия — дело даже не в том, что это на может произойти, а в том, что отказы по другим причинам в любом практическом устройстве имеют вполне ощутимые вероятности.
Итак, метастабильность — непреодолимое свойство как реальных электронных цепей, так и их моделей, и аналоговых, и цифровых. Вероятность метастабильного состояния существенно (экспоненциально, как я понимаю) повышается с ростом числа независимых сигналов и с понижением быстродействия элемента сети. Вы уже догадываетесь, к чему я клоню. Мозг обрабатывает огромное число асинхронных сигналов — каждый нерв содержит многие тысячи волокон — и обрабатывает эти сигналы в нейронах с быстродействием порядка единиц-десятков миллисекунд. Здесь не будет немыслимым предположение о том, что метастабильность повсеместно присутствует в нервной системе даже простых существ, и что, возможно, она является существенным фактором в ее деятельности.
С другой стороны, обычные нейронные сети, во всяком случае, их вычислительно-модельном изводе, совершенно синхронны. Все вычисления в них ведутся дискретным образом: сперва вычисляются «новые» значения параметров сети на основании «старых», а затем, следующим шагом, «новые» значения деляются «старыми». Я не силен в этой области — вполне вероятно, что не все модели таковы.
В то же время, метастабильнось в вычислительной модели — а именно в теории акторов — тоже изучается. Весьма интересны в этой области работы Карла Хьюита (Carl Hewitt). Он полагает, что в асинхронной модели отсутствует глобальное состояние, то есть, вести речь о нем бессмысленно. Возвращаясь к арбитражу и принимая эту точку зрения, можно сказать, что о времени появления двух сигналов нельзя сказать, какой из них пришел раньше. Это рассуждение, на первый взгляд, противоречит интуиции, но, если задуматься, находится в русле системного подхода: во внутренней жизни, во внутреннем мире системы решение о том, какой сигнал пришел первым, иногда принять невозможно (в силу неизбежности метастабильности) [доб. — значит, во внутреннем языке системы возможно выражение случая, когда ни один из них не пришел раньше, т. е. утверждения «сигнал А пришел раньше» и «сигнал Б пришел раньше» не комплементарны.]
Интересно соотнести это рассуждение с некоторыми философскими рассуждениями, в которых участвует mental state, глобальное физическое состояние всего мозга. Модель мозговых вычислений, учитывающая метастабильность, вероятно, не обладает глобальным состоянием. Я еще не совсем сжился с этой мыслью, поэтому пока развивать ее не буду, хотя мне, само собой, интересно, что вы об этом слышали.
Пока копаю в сторону исследований метастабильности в биологически правдоподобных вычислительных моделях нервной системы. Интересно, что вы об этом слышали. Вопрос у́же, чем нелинейная динамика вообще — здесь наработки огромны; мне хочется подумать над этом вопросом именно в терминах метастабильного поведения системы множества связанных агентов-акторов.
_________________________________
1. Palais R, Lamport L. On the glitch phenomenon. Technical Report CA-7611-0811, Massachusetts Computer Associates, Mass. 1976.
2. Anderson J, Gouda M. A New Explanation of the Glitch Phenomenon. Acta Informatica, Vol. 28, No. 4, April 1991.
3. Ginosar R. Fourteen Ways to Fool Your Synchronizer. Proc. of the Ninth International Symposium on Asynchronous Circuits and Systems, 2003.
Явление метастабильности хорошо известно в электронных схемах. Арбитр — электронное устройство, которое вычисляет, грубо говоря, по какой из входных линий сигнал пришел первым. В различных моделях арбитров возникает ситуация, когда схема приходит в неустойчивое состояние. Неустойчивое состояние разрешается (во всяком случае, инженер старается сделать схему такой, чтобы оно разрешалось). Однако (в моделях, опять же) оказывается, что построить арбитр, который гарантированно разрешает конфликт, невозможно: для любого арбитра случится такая ситуация, что схема не придет в определенное состояние ни за какое конечное время.
В частности, в [1] доказывается, что в аналоговой модели любой цифровой цепи арбитра метастабильность непременно возникает. Авторы статьи [2] идут еще дальше: в цифровой модели цепи, т. е. состоящей из логических элементов и проводов, свободный от метастабильности арбитр тоже невозможен. Небольшое ограничение, накладываемое в этой работе на цепь, состоит в том, что никакой провод не соединяет выход логического элемента с его же входом. Однако, это ограничение не очень сильно, и, в конце концов, не меняет дела: из двух свойств, потребных для отсутствия метастабильности, без этого ограничения одно все равно невыполнимо.
Насколько важна метастабильность на практике? Известно, что первые многопроцессорные вычислительные машины (а это было до того, как явление было исследовано математически) страдали от проблем с арбитражем. В современных системах минимизируется вероятность входа арбитра в метастабильную область. Например, в [3] показывается, что определенная схема арбитра имеет среднее время между ошибками арбитража, превышающее 10200 лет. Само собой, вероятность эта ничтожна, чтобы иметь практические последствия — дело даже не в том, что это на может произойти, а в том, что отказы по другим причинам в любом практическом устройстве имеют вполне ощутимые вероятности.
Итак, метастабильность — непреодолимое свойство как реальных электронных цепей, так и их моделей, и аналоговых, и цифровых. Вероятность метастабильного состояния существенно (экспоненциально, как я понимаю) повышается с ростом числа независимых сигналов и с понижением быстродействия элемента сети. Вы уже догадываетесь, к чему я клоню. Мозг обрабатывает огромное число асинхронных сигналов — каждый нерв содержит многие тысячи волокон — и обрабатывает эти сигналы в нейронах с быстродействием порядка единиц-десятков миллисекунд. Здесь не будет немыслимым предположение о том, что метастабильность повсеместно присутствует в нервной системе даже простых существ, и что, возможно, она является существенным фактором в ее деятельности.
С другой стороны, обычные нейронные сети, во всяком случае, их вычислительно-модельном изводе, совершенно синхронны. Все вычисления в них ведутся дискретным образом: сперва вычисляются «новые» значения параметров сети на основании «старых», а затем, следующим шагом, «новые» значения деляются «старыми». Я не силен в этой области — вполне вероятно, что не все модели таковы.
В то же время, метастабильнось в вычислительной модели — а именно в теории акторов — тоже изучается. Весьма интересны в этой области работы Карла Хьюита (Carl Hewitt). Он полагает, что в асинхронной модели отсутствует глобальное состояние, то есть, вести речь о нем бессмысленно. Возвращаясь к арбитражу и принимая эту точку зрения, можно сказать, что о времени появления двух сигналов нельзя сказать, какой из них пришел раньше. Это рассуждение, на первый взгляд, противоречит интуиции, но, если задуматься, находится в русле системного подхода: во внутренней жизни, во внутреннем мире системы решение о том, какой сигнал пришел первым, иногда принять невозможно (в силу неизбежности метастабильности) [доб. — значит, во внутреннем языке системы возможно выражение случая, когда ни один из них не пришел раньше, т. е. утверждения «сигнал А пришел раньше» и «сигнал Б пришел раньше» не комплементарны.]
Интересно соотнести это рассуждение с некоторыми философскими рассуждениями, в которых участвует mental state, глобальное физическое состояние всего мозга. Модель мозговых вычислений, учитывающая метастабильность, вероятно, не обладает глобальным состоянием. Я еще не совсем сжился с этой мыслью, поэтому пока развивать ее не буду, хотя мне, само собой, интересно, что вы об этом слышали.
Пока копаю в сторону исследований метастабильности в биологически правдоподобных вычислительных моделях нервной системы. Интересно, что вы об этом слышали. Вопрос у́же, чем нелинейная динамика вообще — здесь наработки огромны; мне хочется подумать над этом вопросом именно в терминах метастабильного поведения системы множества связанных агентов-акторов.
_________________________________
1. Palais R, Lamport L. On the glitch phenomenon. Technical Report CA-7611-0811, Massachusetts Computer Associates, Mass. 1976.
2. Anderson J, Gouda M. A New Explanation of the Glitch Phenomenon. Acta Informatica, Vol. 28, No. 4, April 1991.
3. Ginosar R. Fourteen Ways to Fool Your Synchronizer. Proc. of the Ninth International Symposium on Asynchronous Circuits and Systems, 2003.
Такие посты про "неалгоритмичность" нам по нраву
2011-05-04 09:28 (UTC)(no subject)
2011-05-04 09:56 (UTC)У меня есть только дилетантский комментарий относительно этого: "ограничение, накладываемое в этой работе на цепь, состоит в том, что никакой провод не соединяет выход логического элемента с его же входом". В "мозговых" системах как раз возвратные связи вполне часты, насколько я понимаю.
(no subject)
2011-05-04 10:06 (UTC)(no subject)
2011-05-04 10:25 (UTC)Там вот что оказывается:
Definition: An arbiter is called delay-bounded iff each of its initialized histories is finite. An arbiter is called stable iff in each of its initialized histories the value of one external output remains unchanged. An arbiter is called glitch-free iff it is both delay-bounded and stable; otherwise it is called glitch-prone...
The feedback restriction is actually not needed to prove the nonexistence of stable arbiters... The proof that delay-bounded arbiters do not exist is another matter. In fact, as we now show, if the feedback restriction is removed from our definition of a circuit, then a delay-bounded arbiter exists.
(no subject)
2011-05-04 10:09 (UTC)Просто уточнить — я не сомневаюсь, просто не знаю — бывает непосредственно закольцованный нейрон, т. е. синапс между аксоном и дендритом одного нейрона?
Ограничение есть только в «цифровой» модели Андерсона-Гауды. В «аналоговой» модели его нет, там вместо него ограничение на время задержки. Оно, мне кажется, biologically plausible — у нейрона есть минимальный интервал между срабатываниями, время, когда он не реагирует на входные сигналы после выходного импульса, так ведь?
(no subject)
2011-05-04 11:06 (UTC)Да, конечено, у нейрона есть т.н. рефрактерный период - время,когда он не может разрядиться. Эта характеристика у разных нейронов разная, так что и задержки разные.
(no subject)
2011-05-04 09:57 (UTC)Это я не понял. Во-первых, почему вероятность _повышается_ с понижением быстродействия? Интуитивно кажется, что будет в точности наоборот. (САПРы для разработки схем указывают на потенциальные источники нестабильности (например, говорит, что среднее время до наступления метастабильности меньше 10^8 лет); а если плохо развелось, то снижение тактовой как правило лечит.)
Во-вторых, с ростом сложности системы ситуация деградирует не экспоненциально, а вроде бы линейно. Если считать наступление метастабильного состояния невосстановимым отказом, то можно говорить о времени наработки на отказ. При некоторых предположениях можно считать, что отказы элементов имеют экспоненциальное распределение (то есть считаем, что элементы "не стареют" — вероятность получить отказ в течение этого часа такая же, как и в течение следующего часа), а сами элементы отказывают независимо друг от друга. Тогда время наработки на отказ всей системы растет _линейно_ по количеству элементов. (Я совсем недавно про это думал, когда пытался оценить пределы роста в области HPC.)
(no subject)
2011-05-04 10:16 (UTC)Насчет второго — просто не знаю. Я не до конца еще разобрался в этом. Посмотрите статью [2], если интересно. Там метастабильность выражается в порядке перебора элементов. Мне кажется, что число метастабильных вариантов может расти вообще как факториал от общего числа элементов — так что предположение об экспоненциальности здесь, возможно, даже консервативно. Но это рассуждение, сами видите, очень поверхностное, а глубже я не анализировал.
Доб. забыл: http://www.cs.unc.edu/~anderson/papers/acta91.pdf
(no subject)
2011-05-04 11:35 (UTC)Известно, что реальные ослы с ней успешно справляются.
(no subject)
2011-05-04 11:54 (UTC)(no subject)
2011-05-05 05:50 (UTC)Т.е. внести в схемы генератор случайных чисел (может быть, квантовый).
(no subject)
2011-05-05 11:42 (UTC)(no subject)
2011-05-15 21:19 (UTC)Уверен, что так оно и есть на самом деле.
(no subject)
2011-05-04 15:56 (UTC)(no subject)
2011-05-04 18:10 (UTC)(no subject)
2011-05-04 19:26 (UTC)(no subject)
2011-05-04 17:03 (UTC)Лет 10 назад я интересовался вопросом, в чём могут быть преимущества вычислительной системы с динамическим хаосом. Ответ получился такой: если интересует способность производить воспроизводимые вычисления, то хаос не нужен. Но если проблема арбитра весьма серьёзна, то там хаос как раз может пригодиться. Метастабильных состояний в хаосе уйма, но аттрактор всегда от них убегает, а сколь угодно малый шум их убивает.
(no subject)
2011-05-04 18:10 (UTC)(no subject)
2011-05-04 19:03 (UTC)поэтому мне было бы крайне интересно понять доказательство для дискретного/цифрового случая - ибо результат мне кажется контр-интуитивен. к сожалению, понять доказательство Андерсона я не смог :(
не могли бы вы его пересказать "in layman terms", каким-нибудь более понятным образом, чем это сделано в оригинальной работе?
(no subject)
2011-05-05 02:05 (UTC)(no subject)
2011-05-04 19:16 (UTC)Вроде-бы, проблема "арбитража" там подавлена как класс.
Но подробностей уже не помню
(no subject)
2011-05-05 05:02 (UTC)(no subject)
2011-05-04 19:42 (UTC)Существует же полно случаев, когда физически разделенные по времени сигналы воспринимаются как единое целое. Иногда это всякого рода временные иллюзии, иногда это часть нормального процесса, типа распознавания речи. Ну и понятие "одновременности" в нашем языке тоже пристутсвует.
Или не об этом речь?
(no subject)
2011-05-05 05:05 (UTC)(no subject)
2011-05-05 08:47 (UTC)Если есть, то не достаточно ли естественного шума, чтобы вывести систему из метастабильного состояния?
(no subject)
2011-05-05 10:28 (UTC)Шума, конечно, достаточно — ведь метастабильная область это всегда репульсор, противоположность аттрактору, траектория динамического квазиравновесия, но только, в отличие от аттрактора, неустойчивого. Система выходит из него сама по себе. На шум лучше смотреть как на часть системы, если уж о системном подходе говорить. Но мне кажется, что в системе масштабов и медлительности нервной системы метастабильные области должны быть столь обширны, что система может бродить по ним в фазовом пространстве очень долго.
(no subject)
2011-05-05 19:35 (UTC)(no subject)
2011-05-05 21:07 (UTC)