Теория магии: пространство свойств

в 15:06, , рубрики: game development, магический движок, магия, теория магии, метки: , ,

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

Свойства

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

Возражение мышлению

Пусть дано множество M. Обозначим через U множество всех подмножеств M. Будем называть U универсумом, а M – порождающим множеством.
Независимые свойства
Пусть так же задано множество S операторов s<U,R,R> = f. В угловых скобках указаны множества из которых действует оператор, и, как обычно, R – множество действительных чисел. То есть s(u,t,y) = f, где u принадлежит U, t и y принадлежат R, f(t) – функция из R в R, причем y = f(t).
Для заданных s и u оператор таким образом определяет семейство функций F[s,u], являющееся областью значений оператора для указанного элемента универсума.
Потребуем еще выполнение следующего условия:
если f0 и f1 принадлежат F, то f0(t0) = f1(t0) => f0(t) = f1(t) при любых t > t0.
Oператор s называется независимым строго детерминированным свойством, а функция f – траекторией. Если s применИм к элементу универсума u[i], то есть область значений s(u[i],t,y) не пуста хотя бы для одной точки (t,y), то говорят, что u[i] обладает свойством s. Стоит обратить внимание, что свойство s эквивалентно векторному полю, когда траектории всюду непрерывны и дифференцируемы.
Зависимые свойства
Значение независимого строго детерминированного свойства в замкнутой системе всегда может быть определено, если известно значение этого свойства в какой-либо точке и тем самым выделена одна из траекторий семейства значений. В отличие от этого для нахождения значения зависимого свойства d требуется знать траектории других свойств, оказывающих влияние на d. Более формально
d(u,t,y,v[0],...,v[n]) = f,
где v[i] = s[i](u)(t), то есть значение в момент времени t текущей траектории i-го свойства элемента u.
Взаимозависимые свойства
В самом общем случае свойства могут быть связаны друг с другом так, что изменение значения какого-нибудь свойства из группы взаимосвязанных свойств будет изменять значения всех остальных свойств. Тогда, зная значения всех свойств группы в некоторый момент времени, мы могли бы определить значения этих свойств в будущем.
Стохастические свойства
Хотя часто будущие значения свойства вполне предсказуемы из значения группы свойств в текущий момент, нам могут встретиться и свойства с вероятностным поведением, последующие значения которых задаются функцией распределения. Во многих практических случаях эволюция стохастических свойсв описывается цепью Маркова с непрерывным временем.
Производные свойства
Говоря о зависимых свойствах, мы подразумевали до сих пор зависимость по существу, в силу объективных причин, иногда проистекающую из скрытых параметров. Эту связь можно назвать объективной или онтологической. С другой стороны, свойство может быть зависимо от другого просто по определению; например, если мы введем понятие двойной массы, равной произведению массы на два, то смысл и зависимость двойной массы от массы не связаны с физическим смыслом последней. Зависимость такого рода мы будем называть синтаксической, а синтаксически зависимые свойства – производными свойствами.

Объект и род

Дон Педро происходит из знатного рода.
Род Хосе – из самых низких.
Умелый маг легко изменит первое и второе.

Доводы в пользу равенства

Определим I как упорядоченную пару <u, S(u)>. Здесь u – элемент универсума, S(u) = {s[0], …, s[n]} – множество всех свойств u.
Пусть задан оператор наблюдения Е(I,t) = (Е[0](s[0])(t), …, E[n](s[n])(t)) = (v[0], …, v[n]).
v[i] принадлежит R и называется наблюдаемым значением i-го свойства в момент времени t.
Пару <I, E> мы будем называть объектом. Так как существует взаимно однозначное соответствие между множеством объектов и множеством элементов универсума, то мы будем свободно использовать выражения “свойства элемента” и “свойства объекта” как взаимозаменяемые.
Произвольное множество свойств называется родом. Рассмотрим род G = {s[0], …, s[n]}. Пусть дан объект Obj такой, что множество его свойств S(Obj) есть надмножество G. Тогда говорят, что Obj – это объект рода G. Свойства же принадлежащие разности S(Obj) G называют дополнительными или акцидентными по отношению к роду G.
Практически род может быть обозначен с помощью применения множественных операций (чаще всего, операции пересечения) над множествами свойств указанных объектов. На этом пути, однако, легко допустить в определение рода второстепенное незначительное свойство. Поэтому, как мы увидим в будущем, при определении истинного имени используется операция нечеткой принадлежности множеству.

Метрика

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

Принципы управления

Областью мгновенных значений (V) свойства называется объединение областей значений всех траекторий этого свойства. Если V не имеет особенностей, то есть любое значение в области достижимо в равной степени, то метрическая функция может быть определена как
[1] r(v0,v1) = k * |v0-v1|,
где v0 и v1 – значения из области V, а k называется консервативностью свойства.
Но в случае краевых особенностей необходимо ввести метрику с их учетом. Так, типичным случаем является асимптотическое ограничение V сверху; примером может служить ограничение максимальной скорости, так же ведут себя и многие характеристики человеческих состояний и способностей: счастья, харизмы, мудрости и т. д. Зададим функцию r следующим образом:
[2] r(v0,v1) = k * |v0 + 1/(max – v0)^n – v1 – 1/(max – v1)^n)|.
Вдали от края, когда 1/(max – v)^n много меньше единицы, функция [2] чрезвычайно близка к функции [1], и это почти совпадение охватывает тем больший интервал, чем больше значение показателя степени n.
Вычисление расстояния для производного свойства
Рассмотрим теперь какое-либо производное свойство s = s(a,b,...), где a,b,… – базовые для s свойства. Превращение s0 → s1 тогда состоит в соответствующих превращениях базовых свойств a0 → a1, b0 → b1, … Причем эти превращения происходят так, чтобы минимизировать использование маны, то есть по минимальному общему пути. Возьмем, например, импульс
p = m*v
в нерелятивистской области. Пусть текущее значение равно p0 = m0*v0. Мы хотим увеличить импульс до p1, что может быть достигнуто изменением скорости или массы, или обоих свойств одновременно. Расстояние вычисляется как
r = k1 * (m – m0) + k2 * (v – v0) = k1 * (p1 / v – m0) + k2 * (v – v0)
Для нахождения минимального расстояния потребуем равенства первой производной нулю:
dr/dv = — k1 * p1 / v^2 + k2 = 0, =>
v = sqrt(p1 * k1 / k2),
m = p1 / v = sqrt(p1 * k2 / k1),
r = k1 * ( sqrt(p1 *k2 / k1) – m0) + k2 * (sqrt(p1 * k1 / k2) – v0) =
= 2 * sqrt(p1 * k1 * k2) – k1 * m0 – k2 * v0.
Разумеется, для субсветовых скоростей мы должны были бы учесть рост массы со скоростью, и вычисление целевых скорости и массы покоя стало бы более сложным. Дополнительно следовало бы принять во внимание и изменение сопротивления объекта в зависимости от состояния, но для простоты и наглядности мы сейчас этим пренебрегли.
Правила превращения

  1. Время превращения равно нулю. Хотя подготовительные и сопутствующие действия могут занять некоторое время, само перемещение из начального в конечное состояние происходит мгновенно.
  2. В результате превращения происходит переход на другую траекторию измененного свойства; последующая естественная эволюция значения свойства идет по этой траектории.
  3. Если результатом магической операции стало полностью неестественное значение, то переход на ближайшую траекторию происходит по линейному закону
    s = s0 + BNV * k * t.
    Коэффициент k – консервативность свойства,
    |BNV| – фундаментальная константа, описывающая скорость возврата на естественную траекторию.
  4. После превращения объект стремится сохранить новое состояние. Происходит это путем циклического повторения автозаклинания корректировки значения свойства, а ману объект поглощает из магического фона по закону
    m = M – (M – m0)/exp(ka*t),
    где m0 – начальное количество накопленной маны,
    M – максимальное количество маны, которое может накопить объект,
    ka – коэффициент скорости поглощения маны, зависящий от плотности магического фона.
    Почему это уравнение имеет такой вид будет объяснено позднее, пока же обратите внимание, что оно подобно кинетическому уравнению химической реакции первого порядка.

Пример: левитация

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

Последнее слово приговоренного к повешению.

Представим себе, что нам необходимо поднять пудовую гирю на высоту 10 метров.

  1. Будем менять высоту с 0 до 10 м. Требуемая мана m ~ k * 10, где k – консервативность высоты.
    Однако тут есть одна сложность. Область пространства, куда перемещается тело, как правило занято хотя бы воздухом. Проблема становится еще очевиднее, если мы попытаемся уменьшить высоту (координату z) тела, стоящего на земле. В подобных случаях действует закон занятого состояния: если состояние, в которое перемещается объект Obj1, занято объектом Obj2, то Obj1 и Obj2 обмениваются состояниями. Этот закон применим не только к телепортации. Допустим, мы собираемся сделать короля из крестьянина, но король (в нашем мире) может быть лишь один. Тогда в результате успеха нашего волшебства король и крестьянин поменяются статусами.
    Теперь обратим внимание, что Obj2 в общем случае больше Obj1, соответственно для компенсации превращения Obj2 потребуется превратить прилегающие к Obj1 объекты. Возникает еще вопрос, считать ли нечто отдельным объектом или частью какой-то группы. Так, например, обстоит дело с одеждой или замкнутым навесным замком на сундуке. Это, однако, предмет отдельного обсуждения; на данный момент важно, что маг должен обеспечить маной всю операцию, состоящую, как мы видели, из нескольких частей.
    В случае простой левитации происходит обмен тела и равного объема воздуха, то есть мана пропорциональна k * r, как мы уже и говорили.
  2. Сразу после магической операции высота гири начинает изменяться по естественной траектории данного свойства h = h0 – v0 * t – g * t^2. Так как v0 = 0, то h = h0 – g * t^2.
  3. Через интервал времени Taq (это одна из универсальных констант, называемая периодом автозаклинания) гиря пытается восстановить высоту h0 с помощью автозаклинания aq. Ману для перемещения она накапливает из фона, как это было указано выше. Если маны оказывается недостаточно, то она вся расходуется для перемещения на высоту h1 < h0.
  4. Гиря опять падает, но начальная скорость теперь больше нуля и увеличивается с каждым повтором автозаклинания, и, следовательно, увеличивается проходимый до коррекции высоты путь.
  5. С каждым повтором aq накапливается усталость (функция от заклинания), в промежутках между повторами она падает. При достижении критического значения цикл автозаклинаний прекращается, и объект переходит в состояние длительной релаксации. Кстати, у мага усталость накапливается аналогично.

Уровни несуществования

Не до конца умершие и немного ожившие –
вот основной материал наблюдений и опытов
специалистов по несуществованию – некромантов.

Рассказы о небытие

Достаточно очевидно, как вычислять расстояние между двумя значениями свойства. Но как мы смогли бы определить расстояние между свойством и его отсутствием? Для прояснения этого вопроса отметим прежде всего, что несуществование не есть нечто вполне отделенное от существования, нечто точечное; призраки, выходцы с того света или из других миров, проступающие иной раз в сумерках, свидетельствует о возможности не существовать в разной степени, с разной, так сказать, интенсивностью.
Соответственно в отношении каждого свойства принято говорить об уровне несуществования, выражая значение свойства комплексным числом, действительная часть которого равна значению свойства, а мнимая определяет уровень несуществования, то есть степень удаленности от нашего мира. Мы считаем – условно, – что, если мнимая часть равна нулю, то объект обладает свойством, и наоборот. Правильнее было бы сказать, конечно, что объект в любом случае всегда обладает всеми возможными свойствами; некоторые свойства лежат в нашем мире, другие же – в параллельных мирах.
Пусть даны два состояния s0 = a0 + i * b0 и s1 = a1 + i * b1. Расстояние между соответствующими мирами вычисляется как Kw * |b0 – b1|, где Kw – еще одна универсальная константа – коэффициент расстояния между параллельными мирами.
В каждом из параллельных миров своя метрика. Известно, например, что существует мир с дискретной метрикой, в котором расстояние между двумя любыми различными состояниями равно единице. Поэтому сложные и энергозатратные превращения часто выполняются через подходящие параллельные пространства. Кроме того, чрезвычайно близкие пространства иногда оказывают влияние друг на друга, перемешиваются друг с другом, и законы такого взаимовлияния и их использование изучаются в курсе некромантии.

Упомянутые вопросы, требующие дальнейшего раскрытия

  1. Оператор наблюдения
  2. Накопление маны
  3. Усталость
  4. Закон занятого состояния
  5. Параллельные миры

Автор: wes

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js