收藏 分享(赏)

稀疏矩阵快速转置算法的分析与优化.pdf

上传人:精品资料 文档编号:10290836 上传时间:2019-10-28 格式:PDF 页数:4 大小:270.77KB
下载 相关 举报
稀疏矩阵快速转置算法的分析与优化.pdf_第1页
第1页 / 共4页
稀疏矩阵快速转置算法的分析与优化.pdf_第2页
第2页 / 共4页
稀疏矩阵快速转置算法的分析与优化.pdf_第3页
第3页 / 共4页
稀疏矩阵快速转置算法的分析与优化.pdf_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、第 27卷 第 8期 计 算 机 应 用 与 软 件 Vol127 No. 82010年 8月 Computer App lications and Software Aug. 2010稀 疏 矩 阵 快 速 转 置 算 法 的 分 析 与 优 化王 敏(渭 南 师 范 学 院 计 算 机 科 学 系 陕 西 渭 南 714000)收 稿 日 期 : 2009 - 11 - 05。 国 家 自 然 科 学 基 金 项 目 ( 60803132) ;渭南 师 范 学 院 研 究 生 专 项 基 金 (10YKZ057)。 王 敏 ,硕 士 ,主 研 领 域 :软 件算 法 研 究 。摘 要 介

2、绍 稀 疏 矩 阵 的 三 元 组 表 压 缩 存 储 方 案 时 ,提 出 了 利 用 数 组 首 下 标 元 素 存 储 稀 疏 矩 阵 总 行 数 、 总 列 数 和 非 零 元 素 总 个 数三 方 面 信 息 的 改 进 的 存 储 定 义 方 式 。 给 出 了 基 于 新 的 定 义 结 构 上 用 C语 言 编 写 的 快 速 转 置 算 法 ,并 通 过 对 算 法 性 能 进 行 分 析 ,提出 了 仅 使 用 一 个 数 组 的 两 种 改 进 的 快 速 转 置 算 法 。 经 过 对 比 两 种 改 进 算 法 的 时 间 复 杂 度 和 空 间 复 杂 度 ,总 结

3、 出 既 具 有 原 快 速 转 置算 法 时 间 复 杂 度 低 的 优 点 ,又 降 低 了 算 法 的 空 间 复 杂 度 的 优 化 算 法 ,达 到 了 对 原 快 速 转 置 算 法 进 行 优 化 的 目 的 。关 键 词 稀 疏 矩 阵 三 元 组 表 压 缩 存 储 快 速 转 置 时 间 复 杂 度 空 间 复 杂 度ANALY S IS AND O PT IM ISAT IO N O F FAST TRANSPO S IT IO NAL GO R ITHM O F SPARSE M ATR IXW ang M in(D epartm ent of Com puter Sc

4、ience , W einan Teachers U niversity, W einan 714000, Shaanxi , China)Abstract W hen describing the trip le list comp ression storage methods of the sparse matrix, in this paper we p ropose an imp roved storagedefining method which uses an array element in the first subscrip t of sequence trip le li

5、st array to store the information in regard to the totalnumber of rows, total number of columns and total number of non2zero elements of the sparse matrix. The paper gives the matrix fast transpo2sition algorithm written in C and based on the new structure definition p roposed, and p resents two kin

6、ds of imp roved fast transposition algo2rithm, both use just one array, through the analysis of algorithm performance. After comparing the time comp lexity and space comp lexity ofthese two kinds of imp roved algorithm, we conclude to an op tim ised algorithm that possesses the advantage of lower ti

7、me comp lexity in existingfast transposition algorithm while reduces the space comp lexity of that algorithm as well, and it reaches the purpose of op tim ising existing fasttransposition algorithm.Keywords Sparse matrix Trip le list comp ression storage Fast transposition Time comp lexity Space com

8、p lexity0 引 言计 算 机 中 存 储 矩 阵 的 一 般 方 法 是 采 用 二 维 数 组 ,其 优 点 是可 以 随 机 地 访 问 每 一 个 元 素 ,从 而 易 于 实 现 矩 阵 的 各 种 运算 1 。 但 对 于 稀 疏 矩 阵 (设 m n的 矩 阵 中 有 t个 不 为 0的 元素 ,令 = tm n,称 为 矩 阵 的 稀 疏 因 子 ,通 常 认 为 0. 05时为 稀 疏 矩 阵 2 )来 说 ,大 量 零 元 素 的 存 储 会 造 成 存 储 空 间 的 浪费 。 为 了 在 实 现 矩 阵 相 关 操 作 时 提 高 存 储 空 间 的 利 用 率

9、,一 种有 效 的 压 缩 存 储 方 案 是 采 用 三 元 组 压 缩 存 储 技 术 ,即 每 个 非 零元 素 记 录 元 素 值 的 同 时 给 出 其 所 在 行 、 列 的 下 标 位 置 ,构 成 形 如( row, colum n, value)的 非 零 元 素 三 元 组 。本 文 将 给 出 一 种 改 进 的 稀 疏 矩 阵 三 元 组 顺 序 表 存 储 定 义 ,同 时 给 出 在 该 定 义 方 式 下 用 C语 言 编 写 的 矩 阵 快 速 转 置 算 法 。通 过 对 算 法 进 行 时 间 复 杂 度 和 空 间 复 杂 度 的 分 析 ,提 出 一 种

10、 通过 减 少 原 算 法 辅 助 空 间 达 到 降 低 算 法 空 间 复 杂 度 的 改 进 的 快 速转 置 算 法 。1 稀 疏 矩 阵 三 元 组 表 存 储 方 式采 用 三 元 组 表 压 缩 存 储 技 术 时 ,稀 疏 矩 阵 中 的 非 零 元 素 三元 组 按 “ 行 序 为 主 、 列 序 为 辅 ” 的 顺 序 构 成 一 种 线 性 序 列 ,此 时可 采 用 顺 序 和 非 顺 序 两 种 方 式 进 行 存 储 ,具 体 采 用 哪 种 主 要 取决 于 将 设 计 实 现 矩 阵 的 那 些 操 作 。 非 顺 序 存 储 方 式 主 要 采 用 链式 存

11、储 结 构 (比 如 十 字 链 表 ) ,适 用 于 设 计 实 现 对 稀 疏 矩 阵 的 非零 元 素 个 数 有 改 变 的 一 类 操 作 (比 如 矩 阵 相 加 、 相 减 、 相 乘 等 ) ;而 对 于 矩 阵 转 置 之 类 非 零 元 素 个 数 不 变 的 操 作 ,则 采 用 顺 序 存储 结 构 (比 如 一 维 数 组 )实 现 较 为 方 便 ,即 三 元 组 顺 序 表 2, 6 。稀 疏 矩 阵 的 存 储 信 息 还 应 包 括 矩 阵 总 行 数 、 矩 阵 总 列 数 和矩 阵 中 非 零 元 素 的 总 个 数 。 大 多 数 参 考 文 献 中 关

12、 于 稀 疏 矩 阵 存储 结 构 的 定 义 均 额 外 定 义 了 用 于 存 储 这 三 方 面 信 息 的 结 构 体 成员 变 量 ,而 这 种 存 储 处 理 其 实 可 以 进 行 简 化 :由 于 前 述 三 种 信 息的 类 型 同 三 元 组 的 各 个 成 员 类 型 相 兼 容 ,因 此 可 将 三 元 组 向 量的 首 下 标 单 元 的 对 应 三 元 分 别 用 于 存 放 这 三 方 面 信 息 。 三 元 组顺 序 表 存 储 结 构 的 稀 疏 矩 阵 可 使 用 C语 言 定 义 如 下 :#define MAX 1000typedef structint

13、 row, col;Elem type val;第 8期 王 敏 :稀 疏 矩 阵 快 速 转 置 算 法 的 分 析 与 优 化 73 Trip le 3, 4 ;typedef Trip le TSMatrix 3. 4 MAX ;由 于 矩 阵 的 行 列 编 号 一 般 从 1起 始 ,因 而 可 将 C语 言 数 组的 0下 标 单 元 用 于 存 储 前 述 三 种 信 息 。2 稀 疏 矩 阵 快 速 转 置 算 法 及 其 分 析矩 阵 转 置 是 矩 阵 的 常 见 操 作 之 一 ,下 面 将 待 转 置 矩 阵 记 作A,转 置 矩 阵 记 作 B ,分 析 基 于 三

14、元 组 顺 序 表 存 储 结 构 的 快 速 转置 算 法 。2. 1 算 法 设 计 思 想该 算 法 的 基 本 设 计 思 想 :依 次 将 待 转 置 矩 阵 A的 三 元 组 行列 互 换 后 ,直 接 放 到 转 置 矩 阵 B 的 三 元 组 表 中 的 正 确 位 置 。 需考 虑 两 方 面 因 素 :一 是 矩 阵 A每 列 中 非 零 元 素 的 个 数 (即 转 置矩 阵 B 每 一 行 中 非 零 元 素 的 个 数 ) ;二 是 矩 阵 A 各 列 中 第 一 个非 零 元 素 三 元 组 在 B 中 的 正 确 位 置 (即 矩 阵 B 各 行 中 第 一 个

15、非零 元 素 三 元 组 在 B 中 的 正 确 位 置 ) 3 。 其 它 文 献 中 的 类 似 解 决方 案 :设 置 两 个 数 组 num 和 position ,前 者 用 来 存 放 A中 第col列 (B 中 第 col行 )的 非 零 元 素 个 数 ,后 者 用 以 存 放 A中 第 col列 (B 中 第 col行 )中 第 一 个 非 零 元 素 在 三 元 组 表 B 中 的 正 确 位置 3 。 这 样 ,计 算 num col 可 通 过 一 遍 对 矩 阵 A 的 循 环 扫 描 ,将 其 中 列 号 为 col的 元 素 的 对 应 num col 加 1;计

16、 算 position col的 方 法 使 用 如 下 递 推 公 式 :position col =1 ( col = 1)position col - 1 + num col - 1 (1 col A 0 . col)得 到 上 述 两 个 数 组 的 对 应 值 后 ,要 将 A中 的 三 元 组 直 接 放到 B 中 的 正 确 位 置 ,可 利 用 position 数 组 实 现 : position col的初 值 为 矩 阵 A中 第 col列 (B 中 第 col行 )的 第 一 个 非 零 元 素 三元 组 在 B 中 的 正 确 位 置 ,当 A 中 第 col列 有

17、一 个 元 素 加 入 三 元组 表 B 时 ,则 对 应 position col的 值 加 1,使 position col 始 终 指向 三 元 组 表 A中 第 col列 中 下 一 个 非 零 元 素 在 三 元 组 表 B 中 的正 确 位 置 3, 5 。2. 2 算 法 的 C语 言 描 述基 于 前 述 存 储 类 型 TSMatrix的 C语 言 算 法 描 述 如 下 :void FastTransMatrix( TSMatrix A, TSMatrix B) int col, i, j; / /col作 为 辅 助 数 组 下 标/ / i指 示 矩 阵 A的 三 元

18、组 表 下 标 , j指 示 B的 三 元 组 表 下 标int num MAX , positionMAX ;B 0 . row =A 0 . col;B 0 . col =A 0 . row;B 0 . val =A 0 . val;if(A 0 . val) / /有 非 零 元 素 三 元 组 则 进 行 转 置 for( col = 1; col =A 0 . col; col + + )num col = 0; / /矩 阵 A各 列 非 零 元 素 个 数 计 数 预 置 0for( i = 1; i =A 0 . val; i + + )num A i. col + + ; /

19、 /矩 阵 A各 列 非 零 元 素 个 数 计 数position 1 = 1;for( col = 2; col =A 0 . col; col + + ) / /求 col列 中 第 一 个 非 零 元 素 三 元 组 在 B中 的 正 确 位 置position col = position col - 1 + num col - 1 ;for( i = 1; i =A 0 . val; i + + )/ /对 矩 阵 A的 三 元 组 表 扫 描 一 遍 完 成 转 置 j = positionA i. col;B j. row =A i. col;B j. col =A i. ro

20、w;B j. val =A i. val;positionA i. col + + ; 2. 3 算 法 分 析该 算 法 由 前 后 四 个 循 环 部 分 组 成 ,调 用 时 各 个 循 环 的 基 本语 句 分 别 执 行 了 A 0 . col、 A 0 . val、 A 0 . col - 1和 A 0 . val次 ,其 中 A 0 . val即 非 零 元 素 个 数 ,看 作 问 题 的 规 模 n。 假 设 A为 M 行 N 列 的 矩 阵 ,则 算 法 的 平 均 时 间 复 杂 度 为 T ( n) = O (N+ n)。 随 着 问 题 的 规 模 n逐 渐 增 大

21、,即 非 零 元 素 个 数 接 近 矩 阵的 行 列 之 积 (M N )时 ,则 快 速 转 置 算 法 的 时 间 复 杂 度 接 近 非压 缩 存 储 的 经 典 双 重 循 环 的 转 置 算 法 (其 时 间 复 杂 度 为 T ( n)= O (M N ) )。该 算 法 在 空 间 上 除 了 矩 阵 中 的 非 零 元 素 本 身 所 占 的 三 元 组表 空 间 外 ,还 引 入 了 两 个 辅 助 向 量 num N 和 position N 。 其空 间 复 杂 度 为 S ( n) =O ( 2 N )。 虽 然 算 法 在 时 间 效 率 上 有 所提 高 ,但 却

22、 是 以 付 出 更 多 的 存 储 空 间 为 代 价 的 ,可 考 虑 对 其 进 行优 化 。3 快 速 转 置 算 法 的 改 进前 述 快 速 转 置 算 法 中 的 position 数 组 用 以 存 放 矩 阵 A第col列 (B 中 第 col行 )中 第 一 个 非 零 元 素 三 元 组 在 转 置 矩 阵 B 中的 正 确 位 置 ,该 位 置 是 通 过 辅 助 数 组 num 计 算 出 的 。 如 果 将计 算 position col 的 方 法 加 以 修 改 , 则 可 省 略 辅 助 数 组 numN 。3. 1 改 进 设 计 方 案 一该 方 案 的

23、算 法 设 计 思 想 按 照 以 下 步 骤 计 算 position col 的各 值 :第 一 步 :初 始 化 各 position col 的 值 为 1,即 初 始 假 定 A 中各 列 第 一 个 非 零 元 素 均 从 B 的 第 1个 下 标 位 置 开 始 存 放 ;第 二 步 :循 环 扫 描 一 遍 矩 阵 A的 三 元 组 表 ,每 遇 到 一 个 列 号为 col的 元 素 ,就 将 对 应 的 从 position col + 1 开 始 的 其 余 元 素 值增 1 (即 列 号 为 col + 1开 始 的 其 余 三 元 组 在 B 中 的 起 始 位 置

24、后移 一 位 )。经 过 第 二 步 修 改 后 , position col 中 的 值 即 为 矩 阵 A 第 col列 (B 中 第 col行 )中 第 一 个 非 零 元 素 三 元 组 在 转 置 矩 阵 B 中 的正 确 位 置 。第 三 步 :对 矩 阵 A的 三 元 组 表 扫 描 一 遍 完 成 转 置 。 当 A中第 col列 有 一 个 元 素 加 入 三 元 组 表 B 时 ,则 对 应 position col 的值 加 1,使 position col始 终 指 向 三 元 组 表 A 第 col列 中 下 一 个非 零 元 素 在 三 元 组 表 B 中 的 正

25、确 位 置 。3. 2 方 案 一 算 法 的 C语 言 描 述基 于 方 案 一 设 计 思 想 的 快 速 转 置 算 法 可 用 C语 言 描 述如 下 :void FastTransMatrix( TSMatrix A, TSMatrix B) int col, i, j; / /col作 为 辅 助 数 组 下 标/ / i指 示 矩 阵 A的 三 元 组 表 下 标 , j指 示 B的 三 元 组 表 下 标int positionMAX ;B 0 . row =A 0 . col;B 0 . col =A 0 . row;74 计 算 机 应 用 与 软 件 2010年B 0 .

26、 val =A 0 . val;if(A 0 . val) / /有 非 零 元 素 三 元 组 则 进 行 转 置 for( col = 1; col =A 0 . col; col + + )position col = 1;/ /初 始 化 col列 中 第 一 个 非 零 元 素 三 元 组 在 B中 的 位 置for( i = 1; i =A 0 . val; i + + )for( j =A i. col; j A 0 . col; j + + )position j + 1 + + ;/ /计 算 col列 中 第 一 个 非 零 元 素 三 元 组 在 B中 的 正 确 位 置

27、for( i = 1; i =A 0 . val; i + + ) / /对 矩 阵 A的 三 元 组 表 扫 描 一 遍 完 成 转 置 j = positionA i. col;B j. row =A i. col; B j. col =A i. row;B j. val =A i. val;positionA i. col + + ; 3. 3 改 进 设 计 方 案 二将 position 同 时 用 于 统 计 A中 各 列 非 零 元 素 个 数 和 指 示各 个 非 零 元 素 在 B 中 的 正 确 位 置 。 算 法 步 骤 如 下 :第 一 步 :将 position 统

28、计 的 A各 列 非 零 元 素 个 数 初 始 化为 0;第 二 步 :利 用 position col 统 计 A中 各 列 非 零 元 素 个 数 ;第 三 步 :通 过 利 用 t1、 t2两 个 变 量 记 录 并 计 算 position 数组 的 元 素 值 ,使 其 成 为 矩 阵 A第 col列 (B 中 第 col行 )中 第 一 个非 零 元 素 三 元 组 在 转 置 矩 阵 B 中 的 正 确 位 置 。 具 体 方 法 是 : position 1 赋 值 1 (即 B 中 的 第 1个 下 标 位 置 ,而 将 其 所统 计 的 第 1列 元 素 个 数 暂 存

29、在 变 量 t1中 ) ; t1暂 存 第 col - 1列 的 非 零 元 素 个 数 (即 position col 的原 值 ) , t2暂 存 第 col列 的 非 零 元 素 个 数 , position col 的 值 即 为position col - 1 + t1,然 后 再 将 t2中 的 值 赋 值 给 t1。重 复 第 步 求 得 全 部 N个 position 值 。第 四 步 :对 矩 阵 A的 三 元 组 表 扫 描 一 遍 完 成 转 置 。 当 A中第 col列 有 一 个 元 素 加 入 三 元 组 表 B 时 ,则 对 应 position col 的值 加

30、 1,使 position col始 终 指 向 三 元 组 表 A 第 col列 中 下 一 个非 零 元 素 在 三 元 组 表 B 中 的 正 确 位 置 。3. 4 方 案 二 算 法 的 C语 言 描 述这 种 改 进 的 快 速 转 置 算 法 可 用 C语 言 描 述 如 下 :void FastTransMatrix( TSMatrix A, TSMatrix B) int t1, t2, col, i, j;/ / t1, t2临 时 记 录 A某 列 非 零 元 素 数 , col作 为 辅 助 数 组 下 标/ / i指 示 矩 阵 A的 三 元 组 表 下 标 , j指

31、 示 B的 三 元 组 表 下 标int positionMAX ;B 0 . row =A 0 . col;B 0 . col =A 0 . row;B 0 . val =A 0 . val;if(A 0 . val) / /有 非 零 元 素 三 元 组 则 进 行 转 置 for( col = 1; col =A 0 . col; col + + )position col = 0;/ /矩 阵 A各 列 非 零 元 素 个 数 计 数 预 置 0for( i = 1; i =A 0 . val; i + + )positionA i. col + + ; / /统 计 A各 列 非 零

32、 元 素 数t1 = position 1 ;for(position 1 = 1, col = 2; col =A 0 . col; col + + ) t2 = position col;position col = position col - 1 + t1; t1 = t2; / /计 算 col列 中 第 一 个 非 零 元 素 三 元 组 在 B中 的 正 确 位 置for( i = 1; i =A 0 . val; i + + ) / /对 矩 阵 A的 三 元 组 表 扫 描 一 遍 完 成 转 置 j = positionA i. col;B j. row =A i. col

33、; B j. col =A i. row;B j. val =A i. val;positionA i. col + + ; 3. 5 两 种 改 进 算 法 的 测 试 与 分 析不 失 一 般 性 ,设 稀 疏 矩 阵 A如 图 1所 示 ,采 用 三 元 组 顺 序 表存 储 结 构 时 对 应 的 存 储 结 构 如 图 2所 示 。0 12 - 7 0 0- 3 0 0 0 00 0 0 0 140 0 25 0 04 5 51 2 121 3 - 72 1 - 33 5 144 3 25图 1 待 转 置 矩 阵 A 图 2 矩 阵 A的 三 元 组 顺序 表 存 储 结 构进 行

34、 矩 阵 转 置 后 得 到 的 B 矩 阵 如 图 3所 示 ,对 应 的 三 元 组顺 序 表 存 储 结 构 如 图 4所 示 。0 - 3 - 7 012 0 0 0- 7 0 0 250 0 0 00 0 14 05 4 51 2 - 32 1 123 1 - 73 4 255 3 14图 3 转 置 矩 阵 B 图 4 矩 阵 B的 三 元 组 顺序 表 存 储 结 构为 测 试 算 法 的 正 确 性 ,特 将 矩 阵 A初 始 化 为 上 例 各 值 ,另 外添 加 了 稀 疏 矩 阵 的 输 出 函 数 ,并 先 后 采 用 原 快 速 转 置 算 法 和 改进 后 的 两

35、种 快 速 转 置 算 法 在 VC环 境 下 运 行 ,其 输 出 结 果 均 如图 5所 示 。图 5 VC环 境 下 运 行 改 进 的 快 速 转 置 算 法 输 出 结 果从 改 进 方 案 一 的 算 法 C语 言 描 述 中 可 以 看 到 ,算 法 程 序 由(下 转 第 85页 )第 8期 王 敏 等 :一 个 基 于 关 注 点 分 离 的 实 时 与 交 互 协 同 模 型 85 不 同 类 型 的 独 立 的 实 体 :导 航 器 、 交 通 控 制 中 心 、 时 控 协 同 器 、 交互 协 同 器 。 导 航 器 只 是 一 个 决 策 者 ,根 据 自 己 的

36、状 态 信 息 和 收到 的 消 息 决 定 路 径 的 选 择 ;交 通 控 制 中 心 提 供 及 时 的 路 况 信 息服 务 ;时 控 协 同 器 通 过 特 定 事 件 向 导 航 器 施 加 实 时 约 束 条 件 ;交互 协 同 器 在 导 航 器 、 交 通 控 制 中 心 和 GPS系 统 之 间 按 时 间 要 求建 立 连 接 和 转 发 消 息 。 其 中 ,导 航 器 、 GPS系 统 和 交 通 控 制 中 心就 是 模 型 中 的 计 算 实 体 。当 汽 车 到 达 一 个 决 策 点 时 ,用 户 触 发 导 航 器 产 生 一 个 Infor2mation2

37、requested事 件 ,同 时 发 出 Information2requested消 息 ,请 求提 供 路 况 信 息 。 时 控 协 同 器 观 察 到 Information2requested事 件后 ,根 据 此 事 件 的 参 数 和 实 时 要 求 ,为 事 件 模 式 ( Information2re2queste, Information2received)施 加 20秒 的 时 间 约 束 。 当 与 一 个 交通 控 制 中 心 连 接 成 功 时 ,交 互 协 同 器 将 发 出 Traffic2Center事 件 ,表 明 了 交 互 协 同 器 已 经 在 交

38、通 控 制 中 心 和 导 航 器 之 间 建 立 了 一个 连 接 ,时 控 协 同 器 为 ( Traffic2Center, Traffic2Center) 事 件 模 式施 加 5分 钟 的 时 间 约 束 。 交 互 协 同 器 当 观 察 到 Information2re2quested和 Traffic2Ceter2Timout事 件 后 ,根 据 汽 车 当 前 的 位 置 和目 的 地 ,利 用 find2traffic2center服 务 查 找 一 个 合 适 的 交 通 控 制 中心 ,将 其 与 导 航 器 连 接 ,否 则 导 航 器 与 GPS连 接 。 在 对

39、事 件 模式 施 加 实 时 约 束 之 前 ,如 果 已 经 对 事 件 模 式 施 加 实 时 约 束 ,应 该先 解 除 实 时 约 束 ,然 后 再 施 加 新 的 时 间 约 束 。通 过 对 ( Information2requested, Information2received)的 事 件模 式 施 加 时 间 约 束 满 足 获 取 交 通 信 息 的 实 时 要 求 ; 通 过 对( Traffic2Center, Traffic2Center)事 件 模 式 施 加 时 间 约 束 满 足 更 新交 通 控 制 中 心 的 实 时 要 求 。5 结 论本 文 为 开 放

40、的 分 布 式 实 时 信 息 系 统 提 出 了 一 个 实 时 与 交 互协 同 模 型 ,不 仅 取 得 了 分 布 式 系 统 中 实 时 行 为 、 交 互 连 接 行 为 和纯 的 计 算 行 为 的 分 离 ,而 且 提 供 了 计 算 实 体 交 互 布 局 与 实 时 约束 的 动 态 适 应 性 。模 型 的 架 构 采 用 Java消 息 服 务 技 术 和 EJB技 术 实 现 并 在 导航 系 统 中 得 到 应 用 ,这 表 明 了 该 方 法 具 有 以 下 优 点 : (1) 该 模 型的 实 现 不 需 要 特 殊 的 体 系 结 构 或 实 时 程 序 设

41、计 语 言 的 支 持 ,为 此类 分 布 式 应 用 的 开 发 提 供 了 良 好 的 框 架 ; (2) 时 控 协 同 器 、 交 互协 同 器 和 计 算 实 体 是 互 相 分 离 的 ,可 以 独 立 设 计 和 建 模 ,简 化 了此 类 应 用 系 统 的 设 计 和 实 现 ,增 加 了 软 件 的 复 用 性 和 灵 活 性 ;(3) 时 控 协 同 器 可 以 动 态 向 计 算 实 体 施 加 或 解 除 实 时 约 束 条 件 ,交 互 协 同 器 可 以 动 态 地 改 变 计 算 实 体 之 间 的 交 互 布 局 ,提 供 了 计算 实 体 交 互 布 局 与

42、 实 时 约 束 的 动 态 适 应 性 。 因 此 ,此 模 型 及 实 现架 构 适 合 于 采 用 一 般 技 术 的 又 有 软 实 时 要 求 的 信 息 系 统 。参 考 文 献 1 Papadopoulos G. A, A rbab F. Coordination of system s with real2timep roperties in manifold C / /Proceedings of 20 th International Com2puter Software and App lications Conference, COMPSAC 96, IEEEPress

43、, Aug. 1996: 50255. 2 马 晓 星 ,余 萍 ,陶 先 平 ,等 . 一 种 面 向 服 务 的 动 态 协 同 架 构 及 其 支 撑平 台 J . 计 算 机 学 报 , 2005, 28 (4) : 4672477. 3 Ren S, Shen L, Tsai J. Reconfigurable coordination model for dynam icautonomous real2time system sA . In The IEEE International Confer2ence on Sensor Networks, Ubiquitous, and

44、Trustworthy Computing.IEEE, 2006: 60267. 4 Papadopoulos G. A, A rbab F. Coordination models and languages J .Advancesin Computers, 1998, 46: 3292400. 5 L inda W ills, Kennan S. An open p latform for reconfigurable control J . IEEE Control System sMagazine, 2001, 21 (3) : 49264. 6 Theophilos L imniot

45、es, Costas Mourlas, George A. Papadopoulos. Event2driven coordination of real2time components C / /D istributed Compu2ting System s Workshop s Proceedings. 22nd International Conferenceon, 2002, 225 (7) : 5892594.(上 接 第 74页 )前 后 三 个 循 环 部 分 组 成 ,调 用 时 各 个 循 环 的 基 本 语 句 分 别 执 行了 A 0 . col、 A 0 . val

46、(A 0 . col - 1)和 A 0 . val次 ,从 而 算法 的 平 均 时 间 复 杂 度 为 T ( n) = O (N n)。 空 间 上 由 于 只 使 用了 一 个 position N 辅 助 向 量 ,从 而 算 法 的 空 间 复 杂 度 为 S ( n) =O (N )。 同 原 快 速 转 置 算 法 相 比 ,虽 然 在 空 间 上 有 所 节 省 ,但 时间 效 率 却 有 所 降 低 ,可 见 是 以 时 间 换 取 了 空 间 。从 改 进 方 案 二 的 算 法 C语 言 描 述 中 可 以 看 到 ,算 法 程 序 由 前后 四 个 循 环 部 分 组

47、 成 ,调 用 时 各 个 循 环 的 基 本 语 句 分 别 执 行 了 A0 . col、 A 0 . val、 (A 0 . col - 1)和 A 0 . val次 ,同 原 快 速 转 置算 法 一 样 ,算 法 的 平 均 时 间 复 杂 度 为 T ( n) =O (N + n)。 空 间 上除 了 使 用 一 个 positionN 辅 助 向 量 外 ,仅 仅 增 加 了 两 个 变 量 的 辅助 空 间 ,从 而 算 法 的 空 间 复 杂 度 仍 为 S ( n) = O (N )。 这 样 ,该 算法 同 原 快 速 转 置 算 法 相 比 ,能 够 在 保 持 较 低

48、 时 间 复 杂 度 的 基 础 上降 低 空 间 复 杂 度 ,从 而 实 现 了 对 原 快 速 转 置 算 法 的 优 化 。4 结 论在 对 矩 阵 采 用 三 元 组 顺 序 表 压 缩 存 储 技 术 时 ,利 用 三 元 组顺 序 表 向 量 的 首 元 素 空 间 存 放 稀 疏 矩 阵 的 总 行 数 、 总 列 数 和 三元 组 的 总 个 数 ,解 决 了 另 外 再 定 义 这 些 成 员 变 量 对 算 法 编 写 所带 来 的 麻 烦 。在 对 矩 阵 采 用 三 元 组 顺 序 表 压 缩 存 储 技 术 后 实 现 矩 阵 转 置时 ,采 用 快 速 转 置 算 法 的 平 均 时 间 复 杂 度 降 低 ,但 其 它 文 献 中 介绍 的 快 速

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报