
电网结构脆弱性评价是一种评价电网结构的指标,通过评价电网的结构脆弱性及寻找薄弱环节,以预防事故的发生。其中,最为核心和重要的研究方向是利用复杂网络理论进行电网结构脆弱性判别、预测连锁故障发生可能性。 要降低电网的结构脆弱性,就要采取一定的措施使网络更加均匀,则是要想办法使网络电气介数的基尼系数减小。
本义是铠甲。
“介”字是象形字。此字始见于商朝甲骨文。商朝文字有两种写法,第一种文字像一个人形左侧站立身披铠甲(图1)。第二种则像一个面朝右侧站立的人,腿部的前后四点是表示护身的铁甲。春秋和战国的文字继承商朝字形,不过其甲衣已成为前后两片了。
《说文》小篆由于符号化,两边的点就变成了竖笔,就看不出甲片的形状了。而汉代文字开始趋于规范化,“人”在中间,两侧为甲衣。到了楷书,“人”在上面甲衣在下面,字形开始定型。后面就没有变化,直至发展到现代汉语。“介”字由“人”和“八”字组成。
甲骨文中似一个人的样子,前后四点是护身的铁甲,金文中甲衣变为前后两片。
如《礼记·曲礼上》:“介者不拜。”“介者”就是指披戴盔甲的人披甲则人在其中,因此延伸成夹在中间。如《左传·襄公九年》:“天祸郑国,使介居二大国之间。人披甲则不易屈身,由此延伸表示特立、特异。例如“耿介之臣”。
#encoding=utf-8
import time
from collections import defaultdict
from operator import itemgetter
# Data in BCtxt:
# a b
# a h
# b c
# b h
# h i
# h g
# g i
# g f
# c f
# c i
# c d
# d f
# d e
# f e
class Graph:
def __init__(self):
selfGraph = defaultdict(set)
selfNodesNum = 0
def MakeLink(self,filename,separator):
with open(filename,'r') as graphfile:
for line in graphfile:
nodeA,nodeB = linestrip()split(separator)
selfGraph[nodeA]add(nodeB)
selfGraph[nodeB]add(nodeA)
selfNodesNum = len(selfGraph)
def BetweennessCentrality(self):
betweenness = dictfromkeys(selfGraph,00)
for s in selfGraph:
# 1 compute the length and number of shortest paths from node s
S = []
P = {}
for v in selfGraph:
P[v]=[]
Sigma = dictfromkeys(selfGraph,00)
Sigma[s] = 10
D = {}
D[s] = 0
Q = [s]
# use BFS to find single source shortest paths
while Q:
v = Qpop(0)
Sappend(v)
Dv = D[v]
for w in selfGraph[v]:
# w found for the first time
if w not in D:
Qappend(w)
D[w] = D[v] + 1
# shortest path to w via v
if D[w] == D[v] + 1:
Sigma[w] += Sigma[v]
P[w]append(v)
# 2 sum all pair-dependencies of node s
delta = dictfromkeys(selfGraph,00)
# S returns vertices in order of non-increasing distance from s
while S:
w = Spop()
coeff = (10+delta[w])/Sigma[w]
for v in P[w]:
delta[v] += Sigma[v]coeff
if w != s:
betweenness[w] += delta[w]
scale = 10/((selfNodesNum-1)(selfNodesNum-2))
for v in betweenness:
betweenness[v] = scale
betweenness = [(node,bc) for node,bc in betweennessiteritems()]
betweenness = sorted(betweenness,key=itemgetter(1),reverse=True)
return betweenness
if __name__=='__main__':
separator = '\t'
file = 'C:\\Users\\Administrator\\Desktop\\BCtxt'
begin = timetime()
myGraph = Graph()
myGraphMakeLink(file,separator)
print myGraphBetweennessCentrality()
print 'Time:',timetime()-begin,' seconds'
介数通常分为边介数和节点介数两种,节点介数定义为网络中所有最短路径中经过该节点的路径的数目占最短路径总数的比例,边介数定义为网络中所有最短路径中经过该边的路径的数目占最短路径总数的比例。
目前,网络药理学的研究方法大致分为两类:一是根据公共数据库和公开发表的已有数据,建立特定药物作用机制网络预测模型,预测药物作用靶点,并从生物网络平衡的角度解析药物作用机制。如Cu J[12]等运用虚拟筛选和网络预测技术成功地预测了大黄二蒽酮A、大黄二蒽酮C、番泻苷C等几种从未报道过的具有抗2型糖尿病作用的成分。
网络药理学的研究离不开生物网络的构建。生物网络是采用数学领域图论的研究手段,借助复杂网络的研究方法,将生物体中各种物质及其相互作用加以抽象。
常用的网络拓扑学分析内容包括度、介数、最短路径、瓶颈、中心节点、模块、楔点等。在生物网络中,大多数节点度较小,而一小部分节点度很大,度值大的节点被认为是中心节点。介数是网络中所有最短路径中经过该节点的路径的数目占最 短路径总数的比例。
写这篇文章,有两个原因:
看了李院士的《大数据研究的科学价值》,有些感触。
我自己做了一段时间社交,也有一些想法。
之前也写过复杂网络的东西,但是都非常肤浅,没有真正的理解复杂网络,近期看了一些资料,有了进一步的理解。
李院士的文章,是从科学家的角度,理解大数据的价值。从文章中,我了解到以下几点:
数据inside:未来数据将数据转换为产品或者服务的人。
分析即服务:Aaas。构建一个统一的数据分析平台,提供丰富的api,供数据分析师进行分析,挖掘金矿。是一件很有用,同时也很有钱途的事业。
大数据的存储、计算、挖掘分析的技术,还需要更进一步的发展。一些同学,规划自己的职业生涯,把这个作为储备,现在开始学习,是一个非常好的选择。我之前做过一些存储相关的东西,存储还是要往多层方向发展。
在大数据中的个体之间存在着关系,有可能大数据的本质就是复杂网络的本质。为研究指名了一个方向。
第四范式:之前的研究都需要有模型,在大数据的背景之下:所有的模型都是错误的,进一步说,没有模型你也可以成功。
文章中,李院士提到大数据的本质,可能就是复杂网络的本质。这是因为大数据个体之间都是关系的。举个例子,互联网。个体是网页,网页和网页之间通过超链接互相链接,当然也可能有单向的。互联网就是一个复杂网络。其中的关系已经被验证了意义的重大——PageRank算法——搜索引擎的核心之一。另一方面,大数据的产生,整体分为两类:1)生物科学中,人脑细胞、神经元,基因等等。都是大数据。2)还有就是社会群体产生的。国内现在火热的微博。就每天会产生很大量的数据。在这两类中,我们都要考虑个体之间的关系,都有一些参数和性质:平均路径长度、度分布、聚集系数、核数和介数等。这些都可以归结到复杂网络的研究当中。不过,大数据的研究刚刚开始,其本质是否就是复杂网络所能解释的还很难说。复杂网络本身也在发展演变的过程中,几年之后,那时的复杂网络也不是现在的样子。但是,社交网络确确实实是复杂网络的体现。所以,通过复杂网络的理论,研究大数据,研究社交网络,一定是一个很好的方向。
说了半天的复杂网络,到底复杂网络是什么呢?这里,我只说说我对复杂网络的浅显理解。也欢迎大家指点、讨论。我们一般所说的复杂网络具备两个特点:
无尺度
小世界
看起来很玄的两个词,那么该如何理解呢?无尺度的概念,比较好理解:就是网络中的度分布满足幂律分布。幂律分布可以理解度的分布比较集中。我们以新浪微博为例,粉丝上千万那的人非常少,百万的人也非常少。更多的是几百粉丝的。直白一点说,就是粉丝非常多的人很少,很集中。粉丝比较少的,分布就比较广,比较多。我之前做微博数据分析的时候,有统计过几乎所有用户的粉丝数分布的。完全符合幂律的分布。如果大家需要,可以和我进一步讨论之类。我也可以找找之前的统计数据。
小世界我觉得需要从两个角度考虑:第一个,就是网络中两点的平均最短路径很小。著名的米尔格拉姆实验的第一个结果就是:六度分隔。意思就是在我们的世界上,你想联系任何一个人,你不认识的,平均就需要找5、6个人就可以了。随着社会的发展,facebook等社交网络兴起,这个度越来越小。有报道说,已经是45个人就可以了。这个事情比较有意思,前些日子,还有个开发者做了一个微博应用,计算你到某个明星的距离。很多人会想,是不是很远,是不是计算很复杂?其实都不是的,小世界的特性告诉我们,这个值会很小。同时,即使在线读取关注,深度搜索的暴力方式解决,这也是很快的。第二个,不仅仅平均最短路径很小,如果消息在网络中传播,会以很大的概率,通过最短路径传播到目的地。这个很重要,这个是根本。这个是,现在微博上进行微博营销的根本所在。如果没有这个特性,通过转发,甚至是大号的转发,很难出现传播爆发的情况,很难让更多的人知道。所以这个很重要,这个也是米尔格拉姆试验的第二个重要的结果。
其实上面两个结果,都有对应的模型,能够很好的证明,而且,在实际的社交网络中,也得到的验证。大家感兴趣,可以自己研究。
那么大数据,我们作为程序员、作为研究者,能够做什么呢?其实前面也说过了,主要就三点:
存储
计算
算法
我们围绕着这三块进行,无论是工程开发者,还是研究者,都可以在这个过程中发现问题,归纳共性,提炼本质,然后上升到科学的高度。
我目前还没有李老师的高度,我也是围绕着微博做了一些复杂网络相关的研究。我希望,以后,我的工作,也能够为大数据科学进步,起到一点点作用。那我的工作,就真的有价值了。
下面是我自己感兴趣的一些点,欢迎大家讨论:
复杂网络社团结构的发现,对应社交网络中的圈子挖掘。
社交网络中,特定领域,人物影响力的排名。
社交网络中,信息传播的研究
社交网络用户关系的存储
其中,1、2、4我做了比较多的尝试,1、2效果还不错,4没有好的方法。3目前只是了解阶段,还没有开始动手。
仅以此文,抛砖引玉。
完
介数(Betweenness)由Freeman于1979首先提图 设σst=σts代表节点s∈V结点 t∈V路径数目设σst(v)代表节点s结点t短路径经节点v∈V数目则节点介数定义:
我同定义边介数图 设σst(e)代表节点s节点t短路径经边e∈E 数目边e两端点别u、v则边介数定义:
节点v度指与节点邻接节点数记做deg(v)其图G度δ(G),度记做Δ(G)
公式都打 我发油箱
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)