算法设计与分析--分布式系统作业及答案

news2024/11/17 7:44:12

  • 分布式系统 作业
    • 参考答案
      • 2.1 分析在同步和异步模型下,convergecast 算法的时间复杂性。
      • 2.2 G 里一结点从 pr 可达当且仅当它曾设置过自己的 parent 变量。
      • 2.3 证明 Alg2.3 构造一棵以 Pr 为根的 DFS 树。
      • 2.4 证明 Alg2.3 的时间复杂度为 O(m)。
      • 2.5 修改 Alg2.3 获得一新算法,使构造 DFS 树的时间复杂性为 O(n)。
      • 3.1 证明同步环系统中不存在匿名的、一致性的领导者选举算法。
      • 3.2 证明异步环系统中不存在匿名的领导者选举算法。
      • 3.9 若将环 R^rev 划分为长度为 j(j 是 2 的方幂)的连续片段,则所有这些片段是次序等价的。
    • 第一次作业:安全性(safety)板书的思考题
    • 第二次作业
      • (1).安全性(safety)板书:Ex
      • (2).分布式算法 PPT ch33: P9 Ex
      • (3).分布式算法 PPT ch33: P30 Ex2.1, Ex2.3, Ex2.4, Ex2.5
      • (4).分布式算法 PPT ch34 P9 Ex3.1, Ex3.2
      • (5).分布式算法 PPT ch35 P39 Ex3.9

分布式系统–汪炀

分布式系统 作业

参考答案

2.1 分析在同步和异步模型下,convergecast 算法的时间复杂性。

在这里插入图片描述

2.2 G 里一结点从 pr 可达当且仅当它曾设置过自己的 parent 变量。

在这里插入图片描述

2.3 证明 Alg2.3 构造一棵以 Pr 为根的 DFS 树。

在这里插入图片描述

在这里插入图片描述

2.4 证明 Alg2.3 的时间复杂度为 O(m)。

在这里插入图片描述

2.5 修改 Alg2.3 获得一新算法,使构造 DFS 树的时间复杂性为 O(n)。

在这里插入图片描述

3.1 证明同步环系统中不存在匿名的、一致性的领导者选举算法。

在这里插入图片描述

3.2 证明异步环系统中不存在匿名的领导者选举算法。

在这里插入图片描述

3.9 若将环 R^rev 划分为长度为 j(j 是 2 的方幂)的连续片段,则所有这些片段是次序等价的。

在这里插入图片描述
在这里插入图片描述

第一次作业:安全性(safety)板书的思考题

思考:是否对于每一执行的每一配置都成立的断言/性质就是不变式呢?

【解】不一定。尽管 P P P 在所有配置中都为真,但除非有一个不变式 Q Q Q 可以推出 P P P,否则 P P P 不一定是 S S S 的一个不变式。

Q Q Q S S S 的不变式,且 Q Q Q 可以推出 P P P,对于任给的 γ ∈ C \gamma \in C γC ,那么 P P P S S S 的每次执行的每一个配置中,都为真。

Comments on “on the proof of a distributed algorithm”: always-true is not invariant

第二次作业

(1).安全性(safety)板书:Ex

Ex:给出一个转移系统 S S S 和断言 P P P,满足 P P P S S S 中总为真,但 P P P 不是 S S S 不变式的。

【解】

设转移方程 S S S

一个整数变量 k k k,最初为 0;

有且只有一个操作:如果 k = 1 k=1 k1,则 k : = 2 k:=2 k:2

定义断言 P P P k < 2 k<2 k<2 P P P S S S 中总是真的,但是 P P P 不是不变式,因为(不可达的)状态 k = 1 k=1 k=1,其中 P P P 成立,被变换为 k = 2 k=2 k=2,其中 P P P 不成立。

(2).分布式算法 PPT ch33: P9 Ex

Ex:证明在引理2.6中,一个处理器在图 G G G 中是从 P r P_r Pr 可达的,当且仅当它曾设置过自己的 p a r e n t parent parent 变量。

【证明】

(1) 充分性:一结点从 p r p_r pr 可达,则它曾设置过自己的 p a r e n t parent parent 变量。
因为图 G G G 是由 p a r e n t parent parent c h i l d r e n children children 确定的静态图,任一节点在收到 M M M 后才会加入到图中。即可达节点收到过 M M M,执行了 A l g 2.2 Alg2.2 Alg2.2 的第 5 行(upon receiving M from neighbor pj)。由于是容许执行,所以第 7 行 (parent:=j) 也会执行。

(2) 必要性:一节点设置过自己的 p a r e n t parent parent 变量,则其从 p r p_r pr 可达。
A l g 2.2 Alg2.2 Alg2.2 的第 7 行执行过了,因为是容许执行,则必然有第 5 行也执行过了。即节点收到过 M M M。而 M M M 又是从 p r p_r pr 发出的,所以该节点是从 p r p_r pr 可达的。

(3).分布式算法 PPT ch33: P30 Ex2.1, Ex2.3, Ex2.4, Ex2.5

Ex2.1: 分析在同步和异步模型下, c o n v e r g e c a s t convergecast convergecast 算法的时间复杂性。

【解】

(1) 在同步模型中
最坏情况下,算法执行的每一轮中只有一个 m s g msg msg 传递,而此时生成树汇聚最大值的算法最多执行 n − 1 n-1 n1 轮(即生成树中除了末端节点每一个节点只有一个子节点),也就是说同步情况下时间复杂度为 O ( n − 1 ) O(n-1) O(n1)

(2) 在异步模型中
在异步模型的汇集算法的每个容许执行中,树中每个距离 p r p_r pr t t t 的处理器至多在时刻 t t t 接收消息 M M M,因此对于每个节点而言,它到它所有子节点中 t t t 最大的路径决定了它本身时间花费。因此在最坏情况下,仍应该是同步模型下的最坏情况,即生成树中除了末端节点每一个节点只有一个子节点,此时时间复杂度仍为 O ( n − 1 ) O(n-1) O(n1)

Ex2.3:证明 A l g 2.3 Alg2.3 Alg2.3 构造一棵以 P r P_r Pr 为根的 D F S DFS DFS 树。

【证明】

  1. A l g 2.3 Alg2.3 Alg2.3 构造的图 G G G 必然是连通的。

    假设 G G G 存在邻居节点 P j P_j Pj P i P_i Pi P j P_j Pj P r P_r Pr 可 达,但 P i P_i Pi P r P_r Pr 是不可达的。

    则:

    (1) P i P_i Pi p a r e n t parent parent 为空;

    (2) P i P_i Pi 不为 P j P_j Pj c h i l d child child

    因为:

    G G G 里一结点从 p r p_r pr 可达当且仅当它曾设置过自己的 p a r e n t parent parent 变量。

    所以:

    (1) P j P_j Pj p a r e n t parent parent 必然设置过了;

    (2) P i P_i Pi p a r e n t parent parent n i l l nill nill;

    (3) P i P_i Pi 属于 P j P_j Pj u n e x p l o r e d unexplored unexplored 集合。

    而算法的第 11 (if unexplored ≠φ then) 和 14 行 (send M to Pk) 决定了 P j P_j Pj 会向 P i P_i Pi 发送 M M M,使得 P i P_i Pi p a r e n t parent parent 成为 P j P_j Pj P i P_i Pi 成为 P j P_j Pj c h i l d child child
    这与假设矛盾,故 P i P_i Pi 必然也是从 P r P_r Pr 可达的。

  2. A l g 2.3 Alg2.3 Alg2.3 构造的图 G G G 必然是无环的。

    假设 G G G 中有一个环, P 1 , P 2 , . . . . , P i , P 1 P_1,P_2,....,P_i,P_1 P1,P2,....,Pi,P1。令 P 1 P_1 P1 是该环中最早接收到 M M M 的节点。则 P i P_i Pi 是从 P 1 P_1 P1 可达的,且 P 1 P_1 P1 p a r e n t parent parent P i P_i Pi P 1 P_1 P1 P i P_i Pi c h i l d child child。而 P i P_i Pi 在收到 M M M 后,向 P 1 P_1 P1 发送 M M M。因为 P 1 P_1 P1 p a r e n t parent parent 已经不为空,所以 P 1 P_1 P1 收到来自 P i P_i Pi M M M 时,根据第 16 行 (else send to Pj) 代码, P 1 P_1 P1 会向 P i P_i Pi 放回一个 <reject> 信息,不会将 P i P_i Pi 设为 p a r e n t parent parent。而 P i P_i Pi 未收到 P 1 P_1 P1 返回的 <parent> 信息,也不会将 P 1 P_1 P1 设为 c h i l d child child。与假设矛盾,故 G G G 是无环的。

  3. G G G 是一棵 D F S DFS DFS 树。

    只需证明在有子结点与兄弟结点未访问时,子结点总是先加入树中。
    设有节点 P 1 P_1 P1 P 2 P_2 P2 P 3 P_3 P3 P 2 P_2 P2 P 3 P_3 P3 P 1 P_1 P1 的直接相邻节点。 P 1 P_1 P1 在第 12~14 行中先选择 向 P 2 P_2 P2 发送 M M M,则 P 1 P_1 P1 当且仅当 P 2 P_2 P2 向其返回一个 <parent>(第 17 行,第 22 行)时才 有可能向 P 3 P_3 P3 发送 M M M。而 P 2 P_2 P2 仅在其向所有的相邻节点发送过 M M M 后才会向 P 1 P_1 P1 返回 <parent>(第 19~21 行)。 所以 P 2 P_2 P2 的子节点是永远先于 P 3 P_3 P3 加入树中的,即 G G G D F S DFS DFS 树。

Ex2.4:证明 A l g 2.3 Alg2.3 Alg2.3 的时间复杂性为 O ( m ) O(m) O(m)

【证明】
(1) 同步模型:每一轮中,根据算法,有且只有一个消息 (M or Parent or Reject) 在传输,算法的第 6 、14、16、20、25 行发送消息的语句中可以发现:消息只发往一个处理器结点,除根结点外,所有的处理器都是收到消息后才被激活,所以,不存在多个处理器在同一轮发送消息的情况,所以时间复杂度与消息复杂度一致。
(2) 异步模型:在一个时刻内至多有一个消息在传输,因此,时间复杂度也与消息复杂度 一致。消息复杂度:对任一边,可能传输的消息最多有 4 个,即 2 个 M M M ,2 个相应 M M M 的消息 (Parent or Reject),所以消息复杂度为 O ( m ) O(m) O(m)

综上,该算法的时间复杂度为 O ( m ) O(m) O(m)

Ex2.5:修改 A l g 2.3 Alg2.3 Alg2.3 获得一新算法,使构造 D F S DFS DFS 树的时间复杂性为 O ( n ) O(n) O(n),并证明。

【解】
两种考虑方式:

(1) 在每个处理器中维护一本地变量,同时添加一消息类型,在处理器 P i P_i Pi 转发 M M M 时,发送消息 N N N 通知其余的为访问过的邻居,这样其邻居在转发 M M M 时便不会向 P i P_i Pi 转发。

(2) 在消息 M M M<parent> 中维护一发送数组,记录已经转发过 M M M 的处理器名称。

两种方式都是避免向已转发过 M M M 的处理器发送消息 M M M,这样 D F S DFS DFS 树外的边不再耗时,时间复杂度也降为 O ( n ) O(n) O(n)

(4).分布式算法 PPT ch34 P9 Ex3.1, Ex3.2

Ex3.1:证明同步环系统中不存在匿名的、一致性的领导者选举算法。

【证明】
在匿名系统中,每个处理器在系统中具有相同的状态机。

L e m m a 3.1 Lemma3.1 Lemma3.1 可知,设算法 A A A 是使环上某个处理器为 leader 的算法。因为环是同步的,且只有一种初始配置。

在每轮里,各处理器均发出同样的 m e s s a g e message message,所以在各轮里各个处理器接收到相同的 m e s s a g e message message,则状态改变也相同。所以所有处理要么同为 leader,要么同时不为 leader

故同步环系统中匿名的、一致性的领导者选举算法的算法是不存在的。

Ex3.2:证明异步环系统中不存在匿名的领导者选举算法。

【证明】
每个处理器的初始状态和状态机相同,除了接收消息的时间可能不同外,接收到的消息序列也相同,所以最终处理器的状态也是一致的。

由于处理器处理一条消息至多需要 1 单位时间,若某时刻某个处理器宣布自己是 leader,则在有限时间内,其它处理器也会宣布自己是 leader

故异步环系统中匿名的领导者选举算法是不存在的。

(5).分布式算法 PPT ch35 P39 Ex3.9

Ex3.9:若将环 R n r e v \mathbf R^{rev}_n Rnrev 划分为长度为 j j j ( j j j 是 2 的方幂) 的连续片断,则所有这些片断是序等价的。

对一个整数 P ( 0 ≤ P ≤ n − 1 ) P(0≤ P ≤ n − 1) P(0Pn1),可以表示为:
P = ∑ i = 1 m a i ⋅ 2 i − 1 P = \sum_{i=1}^{m} a_i \cdot 2^{i-1} P=i=1mai2i1
其中 m = l g n m=lg n m=lgn

则有
r e v ( P ) = ∑ i = 0 m a i ⋅ 2 m − i . rev(P) = \sum_{i=0}^{m}a_i \cdot 2^{m-i}. rev(P)=i=0mai2mi.
P P P Q Q Q 在同一个片段上, P 1 P1 P1 Q 1 Q1 Q1 在同一片段上,且设这两个片段时相邻的,由模运算的加法可得:
P 1 = P + l P1=P+l P1=P+l

Q 1 = Q + l Q1=Q+l Q1=Q+l

式中 l l l 表示片段的长度, l = 2 k l=2^k l=2k


P = ∑ i = 1 m a i ⋅ 2 i − 1 P=\sum_{i=1}^{m}a_i\cdot2^{i-1} P=i=1mai2i1

Q = ∑ i = 1 m b i ⋅ 2 i − 1 Q=\sum_{i=1}^{m}b_i\cdot2^{i-1} Q=i=1mbi2i1

P P P Q Q Q 在同一个片段上,有
∣ P − Q ∣ < l = 2 k |P-Q|<l=2^k PQ<l=2k
所以存在 r ( 0 ≤ r ≤ k ) r(0≤ r ≤ k) r(0rk),满足 a r ≠ b r a_r \neq b_r ar=br。否则, ∣ P − Q ∣ ≥ l |P − Q| \geq l PQl。这与 P P P Q Q Q 在同一个片段上矛盾。 设 s = m i n ⁡ { r } s = min⁡\{r\} s=min{r},则根据 r e v ( P ) , r e v ( Q ) rev(P),rev(Q) rev(P),rev(Q) 的表示方法可得:
s i g n ( r e v ( P ) − r e v ( Q ) ) = s i g n ( a s − b s ) sign(rev(P)-rev(Q))=sign(a_s-b_s) sign(rev(P)rev(Q))=sign(asbs)

P 1 = P + l = ∑ i = 1 m a i ⋅ 2 i − 1 + 2 k P1=P+l=\sum_{i=1}^m a_i\cdot2^{i-1}+2^k P1=P+l=i=1mai2i1+2k

Q 1 = Q + l = ∑ i = 1 m b i ⋅ 2 i − 1 + 2 k Q1=Q+l=\sum_{i=1}^m b_i\cdot2^{i-1}+2^k Q1=Q+l=i=1mbi2i1+2k

显然, P P P P 1 P1 P1 的前 k k k 位相同, Q Q Q Q 1 Q1 Q1 的前 k k k 位相同。由 0 ≤ s ≤ k 0 \leq s \leq k 0sk
s i g n ( r e v ( P 1 ) − r e v ( Q 1 ) ) = s i g n ( a s − b s ) sign(rev(P1) - rev(Q1)) = sign (a_s - b_s) sign(rev(P1)rev(Q1))=sign(asbs)
这两个相邻片段是序等价的,根据等价的传递关系,可得所有的片段都是次序等价的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1868145.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

限域传质分离膜兼具高渗透性、高选择性特点 未来应用前景广阔

限域传质分离膜兼具高渗透性、高选择性特点 未来应用前景广阔 分离膜是一种具有选择性透过功能的薄层材料。限域传质分离膜是基于限域传质机制的分离膜&#xff0c;兼具高渗透性、高选择性的特点。限域传质是流体分子通过与其运动自由程相当传质空间的过程&#xff0c;流体分子…

网络安全 DVWA通关指南 Cross Site Request Forgery (CSRF)

DVWA Cross Site Request Forgery (CSRF) 文章目录 DVWA Cross Site Request Forgery (CSRF)DVWA Low 级别 CSRFDVWA Medium 级别 CSRFDVWA High 级别 CSRFDVWA Impossible 级别 CSRF CSRF是跨站请求伪造攻击&#xff0c;由客户端发起&#xff0c;是由于没有在执行关键操作时&a…

推荐一个shp修复工具

我们在《如何解决ArcGIS中数据显示乱码问题》一文中&#xff0c;为你分享过打开shp文件的乱码问题。 现在再为你分享一个shp文件的修复工具&#xff0c;你可以在文末查看该工具的领取方式。 shp文件修复工具 Shapefile&#xff08;简称SHP&#xff09;是Esri推出的一种广泛使…

新能源行业知识体系-------蒙西电网需求侧响应

新能源行业知识体系-------主目录-----持续更新(进不去说明我没写完)&#xff1a;https://blog.csdn.net/grd_java/article/details/139946830 目录 一、背景介绍二、需求响应电能量收益介绍三、超额回收需求响应减免收益介绍四、参与需求侧响应五、蒙西电力现货特点六、交易中…

好消息!终于解决了!Coze工作流错误中断问题终于得到解决!

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 解决方案 📒📝 常见的工作流中断问题📝 好消息来了!⚓️ 相关链接 ⚓️📖 介绍 📖 大家是否曾经遇到过这样的问题:在Coze平台辛辛苦苦设计的一个工作流,尤其是流程非常复杂和长的情况下,只要中间一个环节出错,整…

红海云签约联东集团,引领产业园区领军企业人力资源数字化新范式

北京联东投资&#xff08;集团&#xff09;有限公司&#xff08;以下简称“联东集团”&#xff09;是集产业园区运营、模板钢结构和投资业务为一体的集团化公司。联东集团独创了产业聚合U模式&#xff0c;致力于打造产业集聚平台&#xff0c;服务于实体企业成长和地区经济发展。…

[SD必备知识18]修图扩图AI神器:ComfyUI+Krita加速修手抽卡,告别低效抽卡还原光滑细腻双手,写真无需隐藏手势

&#x1f339;大家好&#xff01;我是安琪&#xff01;感谢大家的支持与鼓励。 krita-ai-diffusion简介 在AIGC图像生成领域的迅猛发展下&#xff0c;当前的AI绘图工具如Midjourney、Stable Diffusion都能够近乎完美的生成逼真富有艺术视觉效果的图像质量。然而&#xff0c;针…

基于大语言模型的多意图增强搜索

随着人工智能技术的蓬勃发展&#xff0c;大语言模型&#xff08;LLM&#xff09;如Claude等在多个领域展现出了卓越的能力。如何利用这些模型的语义分析能力&#xff0c;优化传统业务系统中的搜索性能是个很好的研究方向。 在传统业务系统中&#xff0c;数据匹配和检索常常面临…

SpringMVC 请求参数接收

目录 请求 传递单个参数 基本类型参数传递 未传递参数 传递参数类型不匹配 传递多个参数 传递对象 后端参数重命名 传递数组 传递集合 传递JSON数据 JSON是什么 JSON的优点 传递JSON对象 获取URL中的参数 文件上传 在浏览器与程序进行交互时&#xff0c;主要分为…

互联网信息服务算法备案流程与要求

一、备案申请的办理流程 企业通过网信办的互联网信息服务算法备案系统&#xff08;https://beian.cac.gov.cn/#/index&#xff09;提交算法备案申请。填报信息包括三部分&#xff0c;分别是算法主体信息、产品及功能信息、算法信息。备案中比较重要的文件包括主体信息中的《落…

anaconda卸载过程中出现fail to run pre-unistall报错

问题&#xff1a; 在使用Uninstall-Anaconda3.exe卸载程序时&#xff0c;出现报错&#xff1a; 解决方案&#xff1a; 把文件夹移动到C盘用户文件夹后再运行卸载程序。即可正常运行程序。

精彩回顾 | 2024高通边缘智能创新应用大赛系列公开课

5月29日-6月6日&#xff0c;我们陆续开展了四场精彩绝伦的2024高通边缘智能创新应用大赛直播公开课。高通、阿加犀、广翼智联以及美格智能的业务领袖和行业大咖齐聚一堂&#xff0c;聚焦边缘智能&#xff0c;分享前沿技术、探讨创新应用&#xff0c;抢先揭秘比赛设备的核心特性…

<sa8650>QCX Usecase 使用详解— Spectra Studio-新建usecase

<sa8650>QCX Usecase 使用详解— Spectra Studio-新建usecase 一 前言二 创建usecaseTEST2.1 打开工程2.2 新建sa8650的usecaseTEST2.2.1 步骤1 添加Usecase2.2.2 步骤2 输入参数(参考UsecaseFFC)2.2.3 步骤3 创建 Pipeline2.2.4 步骤4 转换到本地2.2.5 添加usecaseID号三 使…

Web应用和Tomcat的集成鉴权2-Form Authentication

作者:私语茶馆 1.相关章节 1) Web应用和Tomcat的集成鉴权1-BasicAuthentication-CSDN博客 2) Web应用和Tomcat的集成鉴权2-Form Authentication-CSDN博客 集成鉴权+定制化登录 2.前言 上章讲述了Tomcat的Basic Authentication鉴权模式,可以让Web应用和Tomcat的鉴权集成起来…

成都欣丰洪泰文化传媒有限公司开网店正规吗?

在如今电商风起云涌的时代&#xff0c;成都欣丰洪泰文化传媒有限公司如同一颗璀璨的明星&#xff0c;在电商服务的领域中熠熠生辉。这家公司凭借其专业的团队、丰富的经验和创新的思维&#xff0c;成为电商行业中的一股不可忽视的力量。 电商服务的领航者 成都欣丰洪泰文化传媒…

8.12 矢量图层面要素单一符号使用八(形状炸裂填充)

文章目录 前言形状炸裂填充&#xff08;Shapeburst fill&#xff09;QGis设置面符号为形状炸裂填充&#xff08;Shapeburst fill&#xff09;二次开发代码实现形状炸裂填充&#xff08;Shapeburst fill&#xff09; 总结 前言 本章介绍矢量图层线要素单一符号中使用形状炸裂填…

四川赤橙宏海商务信息咨询有限公司好不好?

在当今数字化浪潮下&#xff0c;电商行业正以前所未有的速度发展&#xff0c;而抖音作为短视频领域的佼佼者&#xff0c;其电商服务更是成为了众多品牌争相布局的热门领域。四川赤橙宏海商务信息咨询有限公司&#xff0c;正是这样一家专注于抖音电商服务的领军企业&#xff0c;…

跨境电商新趋势:海外盲盒小程序的市场机遇

随着全球经济的深度融合和消费者需求的日益多元化&#xff0c;跨境电商作为一种新型的国际贸易模式&#xff0c;正在以前所未有的速度发展。而在这一浪潮中&#xff0c;海外盲盒小程序凭借其独特的商业模式和强大的市场潜力&#xff0c;正逐渐成为跨境电商领域的新宠。本文将探…

家用洗地机有什么推荐的吗?洗地机性价比高的是哪一款?

洗地机因其强大的性能&#xff0c;给人们带来了舒适的清洁体验&#xff0c;提高了人们日常生活的质量&#xff0c;但市场上的洗地机质量参差不齐&#xff0c;所以洗地机品牌的选择就非常重要。因此&#xff0c;我作为一名专业的测评博主&#xff0c;今天就来向大家推荐几款值得…

以算筑基,以智赋能 | Gooxi受邀出席2024中国智算中心全栈技术大会

6月25日&#xff0c;2024中国智算中心全栈技术大会暨展览会、第5届中国数据中心绿色能源大会暨第10届中国&#xff08;上海&#xff09;国际数据中心产业展览会在上海新国际博览中心隆重召开。Gooxi受邀参与并携最新服务器产品以及解决方案亮相展会&#xff0c;吸引众多行业领袖…