城市系统

持续生长的城市

猫猫城如何运行

猫猫城不只是一组页面。城市系统拥有自己的状态,遵循各自的规则,并随着城市时间不断变化。网站只是这座持续运行的世界向公众打开的最后一层。

你看到的,只是这个城市正在运行的结果。

一个世界,多种系统

先有城市,再有屏幕

环境、生命世界与基础设施各自维护城市的一部分。公开页面汇集它们此刻的状态,却不会取代这些系统本身的权威事实。

猫猫城

环境

城市周围持续变化的条件

  • 天气
  • 太阳能条件
  • 环境监测

生命世界

随时间演化的人口

  • 出生与死亡
  • 关系
  • 家庭

基础设施

让城市流动和运转的系统

  • 铁路
  • 能源
  • 未来物流
公开呈现你眼前的城市

铁路

从运营意图,到你看见的列车

列车不会在一张图上随意游走。铁路把运营意图、运行许可、真实运动、轨道占用与页面呈现分开,让不同视图始终观察同一个流动的世界。

  1. 01 · 运营、班次与值乘

    班次、值乘和调度意图描述铁路准备怎样运行。

  2. 02 · 联锁与移动授权

    进路、道岔和移动授权共同决定某个运动能否安全进行。

  3. 03 · 物理运动

    列车的真实位置、速度与完整编组描述它实际上在哪里。

  4. 04 · 轨道区段占用

    轨道区段依据真实经过的列车成为空闲或占用状态。

  5. 05 · 页面呈现

    首页、控制中心、车站图与动画把共享状态呈现给访客。

S*(τ + 48h) = S*(τ)

铁路拥有经过验证的 48 小时周期世界模型。底层模型不变时,世界可以沿着周期持续运行,而无需页面重新编造列车位置。

天气

环境观测如何成为猫猫城天气

外部环境数据由服务器接收,再转化为猫猫城气象局使用的区域天气状态。

  1. 01

    环境观测

    外部条件抵达服务器端的区域天气锚点。

  2. 02

    区域天气状态

    CMO 将观测转化为猫猫城各区域自己的天气。

  3. 03

    公开天气

    温度、风、云和降水进入地图与天气页面。

现实世界锚点始终留在服务器。公开内容只包含猫猫城区域与天气观测,不包含外部真实城市或其位置。

气象数据: Open-Meteo数据与授权

太阳能

天气可以成为能源

辅助太阳能系统说明:一个城市系统能够真正成为另一个系统的输入,而不是彼此孤立的仪表盘。

  1. 01

    天气与太阳辐照

    阳光、云量与环境条件描述此刻可用的太阳能资源。

  2. 02

    发电模型

    太阳能模型把环境输入转化为持续变化的功率与电量状态。

  3. 03

    能源输出

    实时与历史页面展示最终形成的城市能源贡献。

公开说明遵循环境输入与太阳能输出之间的真实联系,内部模型系数仍然留在系统中。

气象与辐照数据: Open-Meteo数据与授权

环境监测

能源设施周围持续被观察

每个监测区域首先拥有自己的当地天然本底辐射水平;当前模拟读数再根据当地天气形成,其中风速和风向影响空气扩散,降水影响 γ 剂量率的小幅变化与水体响应。

  1. 01

    当地天然本底辐射

    每个监测区域都从各自的天然本底辐射水平开始。

  2. 02

    当前天气

    风速与风向影响空气混合和扩散;降水影响模拟 γ 与水体响应。

  3. 03

    环境响应模型

    模型把当地本底与天气驱动的设施、空气和水体响应组合起来。

  4. 04

    模拟环境监测读数

    公开页面呈现随城市时间变化的 γ 剂量率、空气与水体读数。

温度可以作为环境背景信息显示,但当前不参与 γ、空气或水体的核心计算。具体本底数值、模型系数与现实位置仍留在系统内部。

气象数据: Open-Meteo数据与授权

生命 · 出生与死亡

人口是过程,不是预先写好的时间表

出生和死亡不是提前排好的固定故事。随机过程让人口随着猫猫城时间持续变化。

  1. 01

    当前人口

    仍在生活的居民构成下一个时间段的起始状态。

  2. 02

    泊松过程

    模型抽取这一时间段内会发生多少生命事件。

  3. 03

    出生与死亡

    事件继续改变城市人口与生命历史。

N(t + Δt) − N(t) ~ Poisson(λΔt)

直观地说:在一小段时间内,事件数量服从泊松分布;经过的时间越长,期望规模也随之增长。

公开模型只解释过程,不公开事件率、随机种子、个体选择规则或居民私有数据。

关系 · 婚姻

家庭关系也会随城市演化

婚姻事件规划同样使用基于泊松过程的随机模型。关系状态随时间变化,而不是在访客打开页面时临时重新生成。

  1. 01

    居民

    生命世界提供已经存在的居民状态。

  2. 02

    关系事件

    随机过程规划婚姻事件可能发生的时间。

  3. 03

    婚姻状态

    已经完成的事件成为持续保存的民事与家庭历史。

  4. 04

    持续演化的家庭

    公开页面呈现关系系统产生的状态。

配对条件、事件率、随机种子、评分规则与居民私有信息始终留在关系系统内部。

物流

正在建设 · 未来系统

未来,货物也会在同一个世界中流动

物流是未来系统,而不是已经上线的实时能力。它将把需求与货物连接到调度和真实运输资源。

  1. 01

    需求

    城市产生对货物的需要。

  2. 02

    货物

    货物成为需要移动的世界状态。

  3. 03

    调度

    计划分配时间和运输能力。

  4. 04

    真实流动

    未来物流将接入城市中真正运行的运输资源。

完整物流系统尚未接入公开城市,因此这里不会展示虚构的实时货运数据。

运作思想

世界先于页面

几条简单原则,让猫猫城在成长时仍然保持连贯。

  1. 01

    先有状态,再有屏幕

    城市先拥有事实,页面再决定怎样呈现。

  2. 02

    每个系统拥有自己的权威状态

    页面不会重新计算或替换另一个系统的事实。

  3. 03

    页面只是观察窗口

    公开页面观察世界,但页面本身不是世界。

  4. 04

    可以简化,但不随意破坏逻辑

    猫猫城会简化现实,同时尽量保持内部一致。

  5. 05

    城市随时间演化

    生命、关系、天气、铁路与能源都不会停在一张快照里。

  6. 06

    连续性很重要

    模型改变时,应尽量保留历史事实与世界的连续状态。

重要的底层模型在进入公开世界之前,会经过一致性与约束验证。

查看此刻的城市

打开一扇观察窗口