添加31,209字节
、 2021年11月11日 (四) 10:33
{{#seo:
|keywords=流网络,开放的流网络
|description=开放流网络
}}
开放的流网络,或流动网络,也简称流网络(Flow Network)是指一类特殊的加权有向的[[复杂网络]]。其中,有向连边表示能量、物质、货币、信息、注意力等流动的方向,连边的权重则表示流量。流动网络可以分成平衡(Balanced)流动网络和非平衡(Nonbalanced)网络两种。所谓的平衡网络定义为,除了源和汇的所有节点的入流总和等于出流总和;而不满足这个条件的流动网络就称为非平衡网络。
如图1所示就是一个典型的稳态流动网络。其中,源和汇为两个特殊的节点以平衡整个网络。可以验证该网络中每个节点的入流都等于出流。[[File:exampleflownetwork.PNG|500px|framed|图1:一个示例流网络|链接=Special:FilePath/Exampleflownetwork.PNG]]
==分类==
我们通常用流动网络来表示某种事物的流动。我们可以将网络上流动的主体分成两类:
#守恒的流动
#不守恒的流动
很多事物的流动都是守恒的,例如能量、物质、纸币、人类的注意力都是守恒的。注意,我们这里所说的守恒特指该流质在网络所表示的一个'''特定的流动边'''上不增加也不减少,但是这并不表示流质在沿着整个网络流动过程中守恒。例如,我们考虑纸币流动,它经过一个主体转向另一个主体,纸币不增加也不减少。但是有可能,在转到第i个人的时候,该纸币被i损毁了,那么纸币不守恒了,但在网络表示中,我们可以将这种流动表示成从节点i到汇(Sink)的耗散。因此,我们这里所说的守恒并不是说流质永不消失,而是可以将流质的消失建模成到汇的耗散,同样的道理,我们也可以将新发行的纸币建模成从源(Source)发出的流动。那么,整个系统的流动的守恒性其实就反映为除了源和汇以外,所有节点的总入流等于总出流。
但是,并非所有的流动都是守恒的,一个很简单的例子就是信息流。例如社交网络上,人们通过转发微博而形成了信息的流动,但是因为我获得的信息并不意味着你的信息的减少,所以信息的流动并不守恒,而是处处形成了信息源。在微博的转发例子中,我们不能通过简单地添加从源到某个节点的入流而将信息流表示成平衡的流网络,这是因为从信息源发出的信息不能区分是i节点的原创信息还是i所多次转发的信息。
与此相应地,所有的流网络可以分为两类:
#平衡的流网络
#不平衡的流网络
所有守恒的流动都可以用平衡的流动网络来表示,其中每个节点的入流等于每个节点的出流。而对于一些特殊的流网络来说,尽管它表示的是守恒的流动,但是平衡条件却不一定满足。例如,在生态食物网能量流中,每个物种的入流和出流并不严格相等,这是因为测量存在着误差。因此,我们需要开发各种方法来平衡这个流网络,即通过对网络数据进行一定的修改来使得网络重新满足平衡条件。请看[[流网络的平衡]]。
对于不守恒的流动,我们也可以用流网络来表示,但是平衡条件不成立,于是流网络是非平衡的。由于我们所关注的大多数流动都是守恒的,所以,我们下面的讨论都是针对平衡的流网络。
==数学表述==
===流量矩阵===
任意的流网络都可以用一个流量矩阵来<math>F=\{f_{ij}\}</math>表示,其中,f<sub>ij</sub>表示从i到j的流量。在很多流网络中都存在着两个特殊的节点:源(source,通常用0来表示)和汇(sink,通常用N来表示,其中N为网络中除了源和汇的节点个数),我们约定源对应矩阵中第一行以及第一列,汇对应最后一行及最后一列。因为没有任何流会流入源,所以流量矩阵的第一列全部为0。同样的道理,汇不会流出任何流,所以最后一行也全部为0。
例如,图1所示意的流网络就可以用下面的矩阵来表示:
{| class="wikitable"
|-
| ||源||1||2||3||4||5||汇
|-
|源||0||80||0||0||0||0||0
|-
|1||0||0||50||30||0||0||0
|-
|2||0||0||0||0||20||30||10
|-
|3||0||0||10||0||0||0||25
|-
|4||0||0||0||0||0||10||10
|-
|5||0||0||0||5||0||0||35
|-
|汇||0||0||0||0||0||0||0
|}有了这个流量矩阵,很多概念就可以用数学语言表述了。
===流量平衡条件===
所谓的流量平衡条件可以表述为:
<math>
\sum_{j=0}^{N}f_{ji}=\sum_{j=1}^{N+1}f_{ij}, 1\leq i \leq N
</math>
即,对任意的不为源、汇的节点,总入流等于总出流。
===节点总流量(Total Throughflow)===
如前所述,一个节点的总入流为<math>\sum_{j=0}^{N}f_{ji}</math>,总出流为:<math>\sum_{j=1}^{N+1}f_{ij}</math>。当满足流量平衡条件的时候,这两个流量相等,于是,我们称这个流量为节点总流量(Total Through Flow),记为T<sub>i</sub>:
<math>
T_i=\sum_{j=0}^{N}f_{ji}=\sum_{j=1}^{N+1}f_{ij}
</math>
===耗散流(Dissipation)===
我们将流量矩阵中的最后一列构成的向量定以为耗散向量,其中的每一个元素为节点i的耗散流,即:
<math>
D_i=f_{i,N+1}
</math>
有时候,也将D<sub>i</sub>简称为耗散。
===输入流(Import)===
同样的道理,我们也可以定义输入流为从源到节点i的流量:
<math>
I_i=f_{0,i}
</math>
===系统总流量(Total System Throughflow, TST)===
我们也可以定义一些系统级别的流量,例如系统总流量就是所有节点的总流量之和:
<math>
TST=\sum_i T_i=\sum_{i\neq 0,j}f_{ij}
</math>
同样的道理,可以定义系统总输入和系统总耗散:
<math>
IS=\sum_i I_i
</math>
<math>
DS=\sum_i D_i
</math>
容易验证,当网络总体平衡时,有<math>IS=DS</math>。
==举例==
下面,我们将通过几个不同领域中实例说明很多现实网络可以表达为流动网络。
===能量流食物网===
生态学家很早就开始利用流网络的观点研究生态系统了,这门学科被称为[[系统生态学]]。我们可以将每个物种表示成节点,物种之间的能量转移表示成有向连边,能量流表示成边上的权重。注意,生态系统中很多能量转移关系通常就是物种之间的捕食关系,但是并非所有的能量转移都是通过物种的捕食实现的(例如分解作用),而且网络上的节点也并非全部是生物物种,也包括非生物节点(例如DOC可溶解有机碳等)。因此,能量流网络实际上与传统意义上的食物网有很大的区别。也有生态学家称这种能量流网络为生态流网络(Ecological Flow Network)而非食物网。
下图所示网络就是一个典型的生态流网络<ref name="ecologicalnetwork">{{cite journal | last = Baird | first = Daniel| | coauthors = Robert E. Ulanowicz | date = 1989 | title = The Seasonal Dynamics of The Chesapeake Bay Ecosystem | journal = Ecological Monographs| volume = 59 | issue=4 | pages = 329-364}}</ref>。
[[File:未命名.PNG|600px|Chespeake生态流网络|链接=Special:FilePath/未命名.PNG]]
目前,生态学家们已经测量得到了很多这种带有流量信息的生态流网络,例如[http://vlado.fmf.uni-lj.si/pub/networks/data/bio/foodweb/foodweb.htm 这里]就提供了21个生态流网络的实证数据可供下载、使用。
生态流网络是一个很好的平衡流网络,太阳构成了整个生态系统的源,而所有的能量最终都要被物种通过呼吸作用转变成废热排放到空气中去。而在所有的流动过程中每个节点的入流必然等于出流,这是由能量守恒的性质决定的。
===货币流===
在社会经济系统中,能够与生态系统中的能量流相对应的流动就是货币流。可以说货币流不仅仅将整个经济系统串联成为一个整体,而且还将驱动整个经济系统的运转。我们自然也可以用流量网来表示货币的流动。事实上,著名经济学家A. Philips在他读大学的时候就开始利用货币流的观点来理解整个经济系统的运作,并且利用业余时间建造了一台模拟货币流动的机器(Moniac),如下图:
[[File:moniac.PNG|300px|A. Philips和他的Moniac机器|链接=Special:FilePath/Moniac.PNG]]
然而,与能量流非常不同的是,货币流在整个网络上都是守恒的,也就是说不仅每个节点的入流等于出流,而且整个网络没有源和汇(当我们考虑整个封闭经济系统运转的时候,并假设在一定时期内,没有新货币发行,也没有货币的损毁)。因此,货币在经济系统中的流动就像人体血液的流动,总量针对整个网络都是守恒的。
但是,我们知道尽管货币总量保持守恒,但是货币流动在整个经济系统中的作用则是完全不同的。例如,有些货币是用来作为资本使用的——赚取更多的货币(金融系统),而有些货币则是为了购买产品从而消费或者生产用的。因此,当我们只考虑全部经济系统中的一部分子系统的时候,就可以看成一个具有源和汇的流网络。例如,[[投入产出网]]实际上就是一个货币流网络,其中源是消费者,汇是最终附加值,而各个节点则是各个经济部门。当然,我们也可以针对金融子系统挥着类似的流动网络图。
===注意力流===
在信息网络中,信息在流动。然而由于信息流动并不是守恒的,所以,我们很难套用我们这里的平衡流网络模型。但是,如果我们将信息内容看作是节点,而将人类注意力看作是流动,那么由于每个人在任意给定时刻只能关注一个节点,所以,我们仍然可以得到可以用平衡流网络来表示的流网络。
我们以互联网上的点击流为例来说明如何用流网络模型来建模大量用户的注意力流。在很多大型网站的Log文件中都记载了大量用户的一连串的点击行为,例如,每一小时的点击流记录为:
A: 1-->3-->5-->6 B: 1-->4-->2-->3-->4 C: 3-->5-->4-->2-->5-->3-->1 ……
其中A,B,C表示三个不同的用户,1,2,3,4等数字表示不同URL所对应的网页。如果我们将网页看作是节点,而用户的一个接续点击如1-->3就看做是一个1到3的连边,并且1-->3这一对数在整个记录文件中出现的次数看作是从1到3上面的总流量的话,那么利用所有用户的点击流数据,我们就可以构建一个流网络。例如,上述数据构成的流动网络的流量矩阵就可以表示为:
{| class="wikitable"
|-
| ||源||1||2||3||4||5||6||汇
|-
|源|| ||2|| ||1|| || || ||
|-
|1|| || || ||1||1|| || ||1
|-
|2|| || || ||1|| ||1|| ||
|-
|3|| ||1|| || ||1||2|| ||
|-
|4|| || ||2|| || || || ||1
|-
|5|| || || ||1||1|| ||1||
|-
|6|| || || || || || || ||1
|-
|汇|| || || || || || || ||
|}注意,在这个网络中,我们添加了两个节点源和汇,它们都表示该网站的外界。我们不妨把每条用户路径的最前面添加一个"源-->",最后面添加一个"-->汇",则构造的网络就如上表所示。源到1的流动为2是因为有2个用户是从外界直接跳转到页面1的,同样的道理1到汇的流动1是因为有一个用户从1网页跳出了该网站(也可能去浏览别的网站,也有可能走出了互联网的世界)。
虽然,我们用点击流作为示例,但是我们知道这种对注意力流的刻画也可以扩展到其他的例子中。例如,如果我们记录下来一个用户陆续地转发微博的记录1-->2-->3,1,2,3都是该用户转发过的微博,那么我们也可以构建出一个用户转发微博的流动网络。这种网络相比较传统的社交网络而言,更能体现出不同数字资源的相互关系而并非用户和用户之间的关联,因此它更适合描述诸如论坛、豆瓣这样的数字资源型的网络社区。
===国际贸易流网络===
在[[国际贸易网]]中,每个节点是一个参与贸易的国家,每条连边表示两个国家之间的贸易,流量代表两国之间的贸易额。在这个国际贸易流网络中,一个比较麻烦的问题是,该网络流不平衡。在通常情况下,一国的入流(进口)不等于出流(出口)。但是,我们通过补充从源到该国家以及从该国家到汇的流,就可以使得流量平衡<ref name="shipeiteng">{{cite journal|last=Shi|first=Pei-Teng|first2=Jing-fei|last2=Luo|first3=Peng-hao|last3=Wang|first4=Jiang|last4=Zhang|title=Centralized Flow Structure of International Trade Networks for Different Products|year=2013|journal=International Conference on Management Science & Engineering}}</ref>。
其中,从源到该国家的流表示该国用于国际贸易为目的的净产出,也叫附加值(Added Value)。注意,通常一国的附加值要大于从源到该国家的流动,这是因为一国的附加值总量并不都为了生产,有相当一部分流量是被本国内部消耗掉了。
从该国家到汇的流则解释为该国消费掉的进口产值。在现代贸易中,转口贸易(Re-export)、加工贸易(形成垂直产业链)大量存在。因此,每个国家只有一部分进口额用于本国内部的消耗。
然而,麻烦的是,我们并不能利用通常的[[流网络的平衡]]方法来添加从源以及到汇的流量,因为目前的贸易数据并不包括这两部分流动,因此,如何根据先有的数据,准确估计出从源以及到汇的流动值成为一个关键的课题。
在国际贸易网中,另外一个比较意思的问题是,由于两国之间的贸易可以细分到产品的层次,因此,我们不仅有贸易总额的数据,还知道每一类产品的贸易额是多少。如果我们值考察某一类产品(例如石油)的贸易情况,则我们可以得到一个子网络,这个子网络连边上的流量仅仅是石油这种产品的流量本身。所以,如果我们有n种产品,则我们可以构造出n个不同的贸易网络。也就是说,分产品的国际贸易网实际上是一个多网络的集合。如下图所示:
[[File:multigoods.png|600px]]
其中左图为包含所有产品的贸易网,每条边上都包含了三种产品(用不同颜色的粒子表示)。右侧的三张图则是每一种产品构成的该产品的贸易网络。因此,将右侧三张图所示网络加和在一起就构成了最左侧的网络。
==相关研究==
===马尔科夫链===
对于平衡流动来说,我们总可以将整个流系统看作是一个多粒子沿着网络流动的系统。例如,对于图1所示网络,当某个处于1号节点的粒子往外流动的时候,它可能会跳到2号节点,也可能会跳到3号节点。可以想到,由于1到2号节点的流量比到3号的节点大,所以这个粒子更有可能跳到2号节点。我们不妨假设粒子跳转到某个节点的概率是与这条边上的流量成正比的。也就是说,因此,粒子会以5/8=50/80的概率从1跳到2,而以3/8=30/80的概率从1到3。同样的道理,当粒子跳入到任何一个节点后,它都会沿着边以概率跳转。
因此,整个平衡态的流网络可以看作是一个马尔可夫链,其中每个节点相当于是粒子所处的可能状态,节点之间的跳转可以看作是概率转移。具体的,对于任何的处于平衡的流网络F,我们定义矩阵M为概率转移矩阵,其中M中的第i行第j列的元素就是粒子处于i状态下转移到j状态的概率,记为:
<math>
m_{ij}=Pr\{to~~j|after~~visit~~i\}=\frac{f_{ij}}{\sum_{j=1}^{N+1}f_{ij}}
</math>
当粒子进入汇节点N+1,它就不会再往外跳了,因此,状态N+1就相当于马尔可夫链的吸收态。注意,根据矩阵M的定义,它自然满足概率归一化条件:
<math>
\sum_{j=1}^{N+1}m_{ij}=\frac{\sum_{j=1}^{N+1}f_{ij}}{\sum_{j=1}^{N+1}f_{ij}}=1
</math>
====逆向马尔科夫链====
另外一个比较有趣的事实是,根据流矩阵F,我们还可以定义另外一个马尔科夫链M',称为逆向马尔科夫链。它刻画的是一个逆向的因果过程,也就是说如果我在图1中2号节点观察到了一个新到的粒子,那么它有可能从1号节点过来也可能从3号节点过来。显然1到2的流量要比3到2的流量大得多,因此粒子从1跳过来的可能性会更大。那么,既然整个网络是平稳的,我们不难想到,在2号节点观测到一个粒子的条件下,它是从1号节点跳过来的概率是5/6=50/60,它从3号节点跳过来的概率是1/6=10/60。
更一般地,我们定义逆向马尔科夫链M',其中任意的元素m'<sub>ij</sub>定义为:观察到粒子来到了节点i的条件下,它可能是从j节点流过来的概率。它按照下式计算:
<math>
m'_{ij}=Pr\{from~~j|observed~~particle~~on~~i\}=\frac{f_{ji}}{\sum_{j=0}^{N}f_{ji}}
</math>
同样地道理,它也是归一化的,即:
<math>
\sum_{j=0}^{N}m'_{ij}=1
</math>
这个逆向马尔可夫链又可以看作是逆向流矩阵F<sup>T</sup>(即原始流矩阵F的转置)所对应的正向马尔科夫矩阵,这是因为:
<math>
m'_{ij}=\frac{f_{ji}}{\sum_{j=0}^{N}f_{ji}}=\frac{F^T_{\{ij\}}}{\sum_{j=0}^{N}F^T_{\{ij\}}}=m_{ij}(F^T)
</math>
其中逆向流矩阵就相当于把原始流网络所有的有向边都掉转方向,并保持所有的流量不变。由于网络是平衡的,所以逆向的流网络必然也是平衡的。
这似乎给我们描绘了一个有趣的图景:在一个平衡的流网络中,所有的粒子都顺着流动从源到汇。而与此同时,如果我们从汇观察到粒子,并不断地询问这个粒子是从哪个节点跳转过来的,我们就得到了一个反向的信息流动,就仿佛是有假想的粒子从汇流到了源一样。
更多信息,请参看[[基于马尔科夫链的流网络分析]]
===生态流网络分析===
生态学家是最早结合[[投入产出]]方法和[[马尔科夫链]]方法研究流网络的一批科学家,特别值得一提的是Patten、Ulanowicz等人提出了一套称之为[[生态流网络分析]]的方法,他们不仅定义了一系列相关的网络指标,而且还针对大量的实证生态网络进行了详细的分析。在这里,我们不再针对[[生态流网络分析]]方法进行详述,而是列出一些主要的参考文献。
《Quantitative methods for ecological network analysis》这篇文献<ref name="ENA">{{cite journal | last = Ulanowicz | first = Robert E.| date = 2004 | title = Quantitative methods for ecological network analysis | journal = Computational Biology and Chemistry| volume = 28| pages = 321-339}}</ref>很好地概括了生态网络分析的方法和主要的指标。《Network flow analysis algorithms》<ref name="FLOWALG">{{cite journal | last = Latham II| first = Luke G.| date = 2006 | title = Network flow analysis algorithms | journal = Ecological Modelling| volume = 192| pages = 586-600}}</ref>这篇文章不仅仅详细地给出了各种生态流网络的指标和定义,而且给出了详细的算法。文献<ref name="TARGET">{{cite journal | last = Fath| first = Brian D.| date = 2001 | title = Complementarity of Ecological Goal Functions | journal = Journal of Theoretical Biology| volume = 208| pages = 493-506}}</ref>从生态流网络分析的角度讨论了各种[[生态目标函数]],这为我们从流网络模型的角度讨论生态系统演化的目标和趋向奠定了基础。
===投入产出分析===
在经济系统中存在着大量的流动:货币流以及物品流。经济学家([[wikipedia:Wassily Leontief]])很早就开始对流动展开了研究,只不过他们采用了非常不同的技术,这种技术就是[[投入产出分析]](Input-output analysis)<ref>{{cite book|last=Leontief|first=Wassily| title=Input-output Economics|time=1966|publisher=Oxford University Press}}</ref><ref>{{cite book|last=Miller|first=Ronald E. | title=Input–Output Analysis|time=2009|publisher=Cambridge University Press}}</ref>。[[投入产出分析]]是基于一种[[投入产出表]],所谓的投入产出表就是类似下面的表格:
{| class="wikitable"
|-
!部门!!1!!...!!j!!...!!N!!最终需求!!总产出
|-
|1||z<sub>11</sub>||...||z<sub>1j</sub>||...||z<sub>1N</sub>||f<sub>1</sub>||x<sub>1</sub>
|-
|2||z<sub>21</sub>||...||z<sub>2j</sub>||...||z<sub>2N</sub>||f<sub>2</sub>||x<sub>2</sub>
|-
|...||...||...||...||...||...||...||...
|-
|N||z<sub>N1</sub>||...||z<sub>Nj</sub>||...||z<sub>NN</sub>||f<sub>N</sub>||x<sub>N</sub>
|}其中,1,2,3,...,N表示工业系统中的N个部门(Sector),例如农业、林业、造纸业等等。z<sub>ij</sub>表示从i部门对j部门的投入量(一般以货币来衡量)。例如,如果i表示林业,j表示造纸业,z<sub>ij</sub>=350000,则表示造纸业从林业部门购买了350000人民币的原始木材。倒数第二列f<sub>i</sub>则表示第i部门到最终需求(即消费者的最终消费)的直接流量(以货币衡量)。例如,如果f<sub>j</sub>=500000,就表示人们对纸张的最终需求有500000元。最后一列x<sub>i</sub>表示行业i的总产出。投入产出表要求:
<math>
x_i=\sum_{k=1}^{N}z_{ik}+f_{i}
</math>
它表示第i部门的总产出应该等于其它所有工业部门对i部门的需求再加上最终消费者对i的直接需求。虽然投入产出表与流量矩阵非常相似,而上式又几乎可以看作是流量平衡条件,但是,投入产出表和流网络模型还有细微的差别。我们必须经过特定的转换才能将投入产出表与流量网完全等价。其次,[[投入产出分析]]也与[[基于马尔科夫链的流网络分析方法]]本质相同。
更多详细比较,请看[[投入产出分析]]中流网络与投入产出表的比较。
==普适定律==
流网络也是一种[[复杂网络]],因此也可能具备[[复杂网络]]的一些典型特征。另外,我们也可以从加权网络的角度来研究流动网络,那么它会展现出来一些有意思的模式。例如节点度和强度(总流量)的正相关性,强度的幂律分布特征等<ref name="weightednetwork">{{cite journal|title=The architecture of complex weighted networks|first=A.|last=Barrat|first1=M.|last1=Barthélemy|first2=R.|last2=Pastor-Satorras|first3=A.|last3=Vespignani|journal=PNAS|Volume=101|page=3747-3752|year=2004}}</ref>。但是,很多特征对于流动网络来说并不适用。例如,食物网能量流就没有明显的度与节点强度的正相关性。
有趣的是,流动网络具有一些该种网络特有的普适特征。例如“引力定律”、“耗散律”以及“异速标度律”。我们下面分别对这三个特征进一步进行介绍。
===引力定律===
我们都熟悉,牛顿著名的万有引力公式可以表达为:
<math>
f_{ij}=\frac{Gm_im_j}{r_{ij}^2}
</math>
其中f<sub>ij</sub>为两个物体i和j之间的万有引力,m<sub>i</sub>和m<sub>j</sub>分别表示两个物体的质量,r<sub>ij</sub>表示两个物体之间的距离。
有意思的是,在复杂系统中,这个公式也普遍成立。例如,在城市系统中,任意两个城市之间的交通流、物资流遵循类似的万有引力公式<ref name="fractalcities">{{cite book|title=分形城市系统:标度·对称·空间复杂性|last=陈|first=彦光|year=2008|publisher=科学出版社}}</ref>:
<math>
f_{ij}=k\frac{(P_iP_j)^{\alpha}}{r_{ij}^{\beta}}
</math>
这里的f<sub>ij</sub>为两个城市之间的流量(交通流、通讯流等等)。P<sub>i</sub>和P<sub>j</sub>分别表示各个城市的人口,r<sub>ij</sub>表示两个城市之间的距离。k是一个类似万有引力常数一样的常数。α和β是两个需要拟合的指数。与牛顿的万有引力不同,两城市之间的流量可能不与城市人口乘积刚好呈正比。同样的道理,对于距离也不一定呈二次方反比,而有可能是任意的指数 α和β(可能依不同国家的城市系统而不同)。
人们也曾尝试用万有引力来拟合任意两个国家之间的贸易流动,但是发现,标准的万有引力形式可能并不能很好地拟合,而如果对该公式进行扩展则有可能拟合得很好<ref name="gravitytrade">{{cite journal|title=The gravity model|last=Anderson|first=J. E.|journal=Annual Review of Economics|year=2011|volume=3|page=133-160}}</ref>。
在通常的流网络中,节点之间是不存在空间距离的,但是,类似的万有引力公式仍然成立。所谓流网络的万有引力定律是指任意边上的流量与该连边两个顶点上的流量的乘积具有幂律关系。假设一条i,j连边上的流量是f<sub>ij</sub>,i上的流量是T<sub>i</sub>,j上的流量是T<sub>j</sub>,那么万有引力定律可以写为<ref name="gravityflownetwokr">{{cite journal|title=Common Patterns of Energy Flow and Biomass
Distribution on Weighted Food Webs|first=Jiang|last=Zhang|first1=Yuanjing|last1=Feng|year=2012|url=http://arxiv.org/abs/1208.1560}}</ref>:
<math>
f_{ij}\propto (T_i T_j)^{\alpha}
</math>
有时,为了能够更好地拟合真实数据,我们通常采用双参数拟合,也就是写成下式:
<math>
f_{ij}\propto T_i^{\alpha}T_j^{\beta}
</math>
其中,有两个幂律指数αβ分别拟合ij连边的起始点i的流量和终点j的流量对ij连边流量的预测贡献。采用不同的指数α和β表明流动中起点和终点的非对称性。关于引力定律的进一步讨论,可以参看[[流网络的引力定律]]
===耗散律===
在很多流网络中,有一种流动异常重要,这就是耗散流D<sub>i</sub>。该流动在不同的流网络中代表了不同的意义。在经济系统的货币流中,耗散代表了每个部门的直接生产附加值(包括工资、净生产等);在生态食物网中,耗散流代表了每个生物物种由于呼吸作用流失到环境中的热量;在点击流网络中,耗散流代表了从第i个网页下网的流量,即流失的注意力流。
所谓[[流网络]]中的耗散律是指每个节点的总流量<math>T_i</math>与该节点的耗散流<math>D_i</math>之间存在着幂律关系:
<math>
D_i\propto T_i^{\gamma}
</math>
其中<math>\gamma</math>是耗散律指数,也简称耗散指数。该数值的大小对于整个流网络来说具有极其重要的地位和作用。该数值不仅仅反映了耗散流本身的情况,也决定着整个网络的鲁棒性、输运效率以及生长。详细讨论,请参看[[耗散律]]以及[[流网络的异速标度律]]
===异速标度律(Allometric Scaling Law)===
====树的异速标度律====
很多流网络都可以看作一种输运结构。而早期的研究表明,河流网络、血管网络、城市交通网络等等这些可以近似地看作是分叉树。对于这种分叉树,人们发现了一个显著的特征:普遍存在着异速标度律现象。所谓的异速标度律是指每个节点所对应子树的节点数和节点数在该子树上的积分满足异速标度律方程<ref name="banavar">{{cite journal|title= Size and form in efficient transportation networks|journal=Nature|volume=399|page=130-132|first=J.|last=Banavar|first1=A.|last1=Maritan|first2=A.|last2=Rinaldo|year=1932}}</ref><ref name="universal">{{cite journal|title=Universal scaling relations in food webs|first1=Diego|last1=Garlaschelli|first2=Guido|last2=Caldarelli|first3=Luciano|last3=Pietronero|journal=Nature|year=2003|volume= 423|page= 165-168}}</ref>:
<math>
C_i\propto A_i^{\eta}
</math>
其中,A<sub>i</sub>表示以i为根的子树所包含的节点数,C<sub>i</sub>表示的是以i为根的子树上所有节点的A<sub>i</sub>总和,也就是:<math>
C_i=\sum_{j\in Tree_i}A_j
</math> 其中Tree<sub>i</sub>表示以i为根的子树。
幂指数η是异速标度律指数,它的大小反映了整个树的形状,对于树来说,η介于1和2之间。如果指数η越大,则表示树状结构越具有层次性,η越小则越扁平。详情请见:[[树的异速标度律]]。
====流网络的异速标度律====
一般的流网络中包含了大量的回路结构,远比树要复杂。然而,经过我们重新定义A<sub>i</sub>和C<sub>i</sub>这两个量,仍然可以计算一般流网络的异速标度律。我们将A<sub>i</sub>定义为流经过i节点的总流量T<sub>i</sub>,而将C<sub>i</sub>定义为节点i对于整个网络的影响力大小。
对于流网络来说,所谓的异速标度律是指如下幂律关系:
<math>
C_i\propto T_i^{\eta}
</math>
其中幂律指数η反映的是整个流网络的中心化程度,即是否大节点(吞吐量大的节点)对整个网络的影响力(Impact)更大<ref name="allometryanddissipation">{{cite journal|title=Allometry and Dissipation of Ecological Flow Networks|last1=Zhang|first1=Jiang|last2=Wu|first2=Lingfei|journal=Plos One|year=2013|url=http://arxiv.org/abs/1302.5803}}</ref>。与树的情形不同,这里的幂指数η并不仅限于1和2之间,而有可能在整个实数轴上取值。有关异速标度律的进一步讨论,请参看[[流网络的异速标度律]]。
===异速生长律(Allometric Growth Law)===
顾名思义,异速生长律反映的是整个流网络在生长过程中所体现出来的异速律。通常,对于流网络来说,我们关心两个量在整个流网络生长过程中所体现出来的关系,即总入流IS和系统总流量TST。总入流反映的是整个流网络系统新陈代谢的能力,而TST则反映的是系统的存储流的能力。当然,这里有一个前提假设,整个流网络中,每个节点并不具有存储流量的能力,所有的流量都在连边中体现。
对于一个成长的流网络来说,我们在任意时刻测量这两个量IS(t)和TST(t),则,我们会得到如下实证方程:
<math>
TST(t)\propto IS(t)^{\theta}
</math>
其中θ表示异速生长指数。θ越大则表示整个流网络存储效率越高。这是因为,当网络的总入流扩大2倍后,它的总存储TST扩大了2<sup>θ</sup>倍,所以θ越大,TST扩大的倍数也就越大。
在很多实际的流网络中,由于IS和TST的意义明显,所以指数θ也就具有了非常重要的现实意义。例如,对于点击流网络来说,IS表示的是每单位时间内访问某网站的独立用户数量,而TST则表示该时间段内,这些用户对整个网站的点击量,因此θ就反映了网站的粘性,也即新增1%的用户能够增加多少访问量的百分比。对于经济系统中的投入产出网来说,IS反映的是经济需求总量,TST反映的是整个经济系统各个部门的总产量,则θ就代表经济系统需求对于生产的拉动程度,θ越大,整个需求的拉动越敏感。
关于异速生长律的进一步讨论,请参看[[流网络的异速生长律]]
==参考文献==
<references />