美文网首页程序员
简明爱情动力学

简明爱情动力学

作者: 圣_狒司机 | 来源:发表于2018-01-19 14:28 被阅读96次

概述

简明爱情动力学讲述孤立两人爱情系统随时间演化的情况,没有第三者,没有两人体系外的干扰因素,两个人在爱情系统中的行为纯粹依赖自身性质和对方的行为而变化,这样看来,简明爱情动力学是刨除了家庭的(丈母娘,小姨子。。。)、社会的(房价、景气、科技。。。)和随机外来的等等因素,若要加上这些因素,系统复杂度会爆炸性增长。
a 对b 的爱情和 b对a的爱情分别设为 x(t) ,y(t) , x 和 y 为正的时候即是相爱,为负的时候即是厌恶。
动力学方程为:
x' = ax+by
y' = cx+dy
a,b,c,d 可以理解为 a 自身对爱情的坚持、a的行为受b影响的程度,和b受a影响的程度,和b自身对爱情的坚持。
比如说a为正,b为正,那么a是一个对爱坚持的人;也是一个刚正,投桃报李、以牙还牙的人,即受到正面的爱情,他会回报爱情,受到不爱的表示,他会马上走开,同样不爱对方。
若a为负,b为负,那么a是一个对无法爱坚持的人,随着时间他对自身的爱情观扪心自问,“值得么不值得么?”,最终放弃坚持;他也是一很作的人,对方对他无好感,他爱的越热烈,对方已经爱上他,他却越被爱越要放弃。
c、d 同理。

动力学分析

由动力学参数方程得到简明图示解:
from matplotlib import pyplot as plt
import numpy as np

a, b, c, d= 0, 0.5, 0.5, 0
strat_time, end_time, dt = 0,100,0.01

def drow_steps():
steps= []
x, y= 100np.random.randn(),100np.random.randn()
for t in np.arange(strat_time, end_time, dt):
x += (ax +by )dt
y += (c
x +dy )dt
steps.append((x,y))
plt.scatter(x,y)
X,Y = zip(*steps)
plt.plot(X,Y)

for i in range(20):
drow_steps()
plt.show()
每种状况按随机初始值模拟20次。

.情况一:毫无主见的两人,如同动物般你对我好我就对你好,你对我不好我就厌恶你

a, b, c, d= 0, 0.5, 0.5, 0


如同动物般你对我好我就对你好,你对我不好我就厌恶你

结果为随时间增长两人要么相爱,要么相憎,爱憎只决定于初始的那一瞬间。

.情况二:毫无主见的两人, 一人追求;另一人很作,你爱我时我不爱你,你不爱我了,我反而越来越爱你

a, b, c, d= 0, 0.5, -0.5, 0


一人追求;另一人很作

结果为两人在爱憎之路上耗尽一生永远循环,不过这个循环至少有个好处就是至少有1/4的时间是彼此相爱的。

.情况三:中国式,双方都不信有什么天成地久的爱情,无非是你回报我,我回报你而已。

a, b, c, d= -0.5, 0.5, 0.5, -0.5


中国式

这种情况有种诡异的稳定性,最终收敛于彼此回报的满足点?我为此专门模拟了40次。

.情况四:士兵与小公主,两人都相信爱情(不过内容理解是截然不同的),士兵是刚毅的投桃报李型,小公主是你追我就躲,你不爱了,我却爱上了的镜像性格(作?)。

a, b, c, d= 0.5, 0.5, -0.5, 0.5


士兵与小公主

可以看出结果是发散而未知的,不过这种情况放大了结果与初始值有很大不同,甚至是反转,所以士兵与小公主的故事一般都很长。

相关文章

网友评论

    本文标题:简明爱情动力学

    本文链接:https://www.haomeiwen.com/subject/fwpinxtx.html