(生物医学工程专业论文)工作流biow平台的构建与应用.pdf_第1页
(生物医学工程专业论文)工作流biow平台的构建与应用.pdf_第2页
(生物医学工程专业论文)工作流biow平台的构建与应用.pdf_第3页
(生物医学工程专业论文)工作流biow平台的构建与应用.pdf_第4页
(生物医学工程专业论文)工作流biow平台的构建与应用.pdf_第5页
已阅读5页,还剩95页未读 继续免费阅读

(生物医学工程专业论文)工作流biow平台的构建与应用.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ii 华华 中中 科科 技技 大大 学学 博博 士士 学学 位位 论论 文文 abstract in life science, new techniques and experimental methods produce explosive amounts of biological information. accordingly, to analyze the experimental data, many algorithms and computer programs have been developed. since these programs are developed by commercial companies or academic institutes independently, the lack of common standard makes the talks between them difficult. in one integrative analysis, when several of them are needed, the researchers are usually exhausted by the program switching and data transformation. firstly, these software tools in corresponding field did not provide the standard data interface and algorithm interface. secondly, all the tools and software mentioned above did not support collaborative analysis on the experimental data. additionally, these tools and software are not operation system (os) independent. furthermore, the lack of a friendly interface, such as graphical user interface (gui), will impede the efficiency of data analysis. in this paper, we developed an integrative workflow-based platform for the experimental data analysis, namely biow (bio-workfow). biow is built on the java 2 platform enterprise edition (j2ee), which provides (1) a general application development interface to integrate or bridge other programs and (2) a workflow mechanism to operate them and make them talk easily. the sdk provided by biow defines a series of interface, such as bio-data and bio-node, with which the users can integrate any data sets, routines and viewers into the neural spike train data analysis without caring their input-output data formats, programming language and os. the current existed algorithms (viewers) are classified into three categories: open source of algorithms programming with java, open source of algorithms programming with other language (such as c, c+, etc.) and binary executable algorithms programs. the users can easily integrate all these kinds of algorithms into the platform through the interface bio-node defined by sdk. the user management mechanism provided by biow support collaborative mechanism, which enables multiple users share the same data and the same workflow without conflict. according to this mechanism, each user has a private user space where iii 华华 中中 科科 技技 大大 学学 博博 士士 学学 位位 论论 文文 workflows and data are stored, and a public user space that be shared with other users belonging to the same group. with this sharing mechanism, the different users in the same group can not only share the same data, but also edit and execute the same workflow. therefore many users can work together on the same experimental data analysis. this collaborative mechanism is necessary for the researchers to handle some complex neuroscience project. moreover, as a java-based software, biow can be deployed in different os without any modification, such as recompiling the whole project. friendly gui that provides the construction and management of workflows greatly facilitates the managing and processing the experimental data. keyword:workflow platform integrative collaborative analysis 独创性声明独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研 究成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他个人或 集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体,均已在 文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。 学位论文作者签名: 日期: 年 月 日 学位论文版权使用授权书学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有权 保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。 本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据库进行检 索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 保密, 在 年解密后适用本授权书。 不保密。 (请在以上方框内打“” ) 学位论文作者签名: 指导教师签名: 日期: 年 月 日 日期: 年 月 日 本论文属于 1 华华 中中 科科 技技 大大 学学 博博 士士 学学 位位 论论 文文 1 绪论绪论 1.1 生命科学中的数据分析生命科学中的数据分析 1.1.1 计算机技术应用于生命科学计算机技术应用于生命科学 在过去的 10 年中,计算机在生命科学和医学的各个领域中发挥着前所未有的重 要作用。计算机分析应用的第一个高潮主要出现在序列分析中,这个方面至今有许 多非常重要的问题尚未解决;在目前以及未来的一段时期内,我们尤其需要关注那 些极为多样化的数据的复杂集成关系。这些新的数据类型来源于能够在细胞,器官, 生物个体甚至生物群体等不同层次获取数据的各种实验技术。 新的高效的实验技术推动了生命科学领域内相关数据呈几何级数增长,其他新 的产生数据的技术则是传统实验方法的高度并行版本。 例如用 dna 微阵列进行基因 组范围的基因表达测定,meas(multiple-electrode-arrays)用于培养神经元网络数据 的无损实时纪录1-3等。这使得在实验设计,数据处理和结果解释等方面的计算机支 持成为基本要求。这一系列的发展极大的扩展了生命科学的研究领域。 随着生命科学和计算机科学技术的不断发展,研究的重点正逐步从积累数据转 移到如何解释和分析这些数据。在未来,生物学的新发现将极大的依赖于我们在多 个纬度和不同尺度下对多样化的数据进行组合和关联的分析能力,而不在依赖于对 传统领域的继续关注。结构和功能数据将与切片数据,神经元网络数据,表现型和 临床数据等一系列数据相互集成。在数据量呈几何级数增长的情况下,相关的基础 研究将致力于解决生命科学中与系统和集成相关的问题4。 如此大量的数据,在生命科学的各个领域都需要进行有效的数据整合。例如对 于神经科学领域内的神经元网络数据处理,不同的 meas 数据采集系统会产生多样 的数据类型和协议,这都严重阻碍了不同实验室之间的实验数据共享和交流5。在医 学图像研究领域内,不同的厂家设备所产生的图像格式和标准有所不同,为了更好 的支持数据的共享和协同研究,需要统一的格式标准和传输标准6。基于此,提出统 一的数据格式标准或提供一致的接口在该领域内尤为迫切。 2 华华 中中 科科 技技 大大 学学 博博 士士 学学 位位 论论 文文 在生物信息的存储,获取,联网,处理,浏览以及可视化等方面,都对理论, 算法和软件的发展提出了迫切的需求。在神经科学领域内,对 meas 数据的处理包 括去噪,分类,统计学分析等,这些过程包含大量的算法和工具。因此,集成这些 算法和工具,并为用户提供健壮的算法集成接口,提供便于操作的图形界面的平台 或系统需要被实现7。 在其他领域,例如医学图像处理领域内,大量关于医学图像的分割,配准,融 合以及三维重建的算法和工具不断涌现出来,因此,相关数据可视化工具,针对医 学影像的分割与配准工具,提供一致接口的,可复用的(包括可视化,分割,配准 功能)集成化的,并提供友好界面的平台需要被提供8。 根据生命科学不同领域内的相似需求,譬如对数据类型的标准化或者集成,对 原始数据的多样化分析,以及如何集成这些日益增多的分析工具或算法,能否为用 户提供易于分析的友好的图形界面等等,这些要求都为生命科学领域内的各种集成 工具的出现提供了思路。 1.1.2 数据和分析工具的整合数据和分析工具的整合 在生命科学的各个领域内,各种集成化的分析工具或者平台是多种多样的,但 是它们都是致力于相关领域内数据和算法的有效集成,提供相对可靠的分析环境, 并为最终用户提供一致的图形界面。下面分别举例说明。 在神经生物学研究中,实时,连续,无损的纪录方法尤其重要,基于多电极阵 列 meas 技术的细胞外纪录即为其中的一种。多通道的同时纪录与各种分析手段的 结合可用于神经元网络的功能及其动力学研究,并为研究神经元网络提供强有力的 支持。 基于此, 对 meas 数据的一系列分析, 包括提取 (去噪) , 大量的分类方法 (阈 值分类,形状分类,主成分分类等) ,统计学分析算法(autocorrelograms, crosscorrelograms, perievent histograms 等) ,以及结果的可视化,不断的发展和涌现 出来。 mea-tools9是基于 matlab(version5.3-6.1,the mathworks,natick,ma)环 境开发的 meas 数据分析工具包,该工具包开放源码,主要接受 matlab 数据格式, 其他类型的格式则需要依据数据采集卡所提供的数据接口:动态链接库 dlls 3 华华 中中 科科 技技 大大 学学 博博 士士 学学 位位 论论 文文 (dynamic link libraries)来进行转换,它集成了一系列统计学算法(rate histograms, interspike interval histograms, autocorrelograms 等) ,分类方法(主成分分类) , continuous data tools 和 lfptools(local field potential) 。mea-tools 也提供多电极 阵列几何形状的显示功能。spike manager10也是基于 matlab 环境开发,主要接受 matlab 数据格式,集成了一系列信号处理(signal processing) ,峰值检测(peak detection) ,爆发检测(burst detection)和相关的统计学分析算法(statistical tools) , 该工具包并非开源代码。data-means11的界面基于 delphi 7.0(borland)开发,提 供对 matlab 6.1 函数库的内部调用接口。该工具接受更为通用的 ascii 格式数据文 件,也集成了一些经典的统计学算法(如上所述) ,集成的分类算法采用开源工具 nev2kit12。此外,为了可以集成更多的数据源和算法,data-means 开放源码和 文档。 在其他的生命科学领域,譬如说目前的医学图像处理与分析技术涉及到很多学 科,包括图像处理,计算机图形学,模式识别以及虚拟现实等,目前其主要的研究 方向有图像分割,图像配准,三维可视化这几方面。近几十年来,有关这三个领域 的非常多的成熟的算法不断涌现出来,除了在算法研究方面的努力外,一些研究机 构为了更好的利用现有的算法,避免重复劳动,开发了许多软件开发包,封装了相 关领域的一些成熟算法。比较成功的例子包括可视化开发包 vtk(visualization toolkit) 13, 分割与配准开发包 itk (insight segmentation and registration toolkit)14, 以及集成化的三维医学影像处理与分析开发包 mitk(medical imaging toolkit)15。 这些开发包都极大的便利了医学影像领域和生物力学数值仿真的领域的研究者。 三维可视化工具 vtk 是一种基于 opengl 的用于 3d 图形学,图像处理及可视 化的一种通用开发工具包。其作为一套进行数据可视化的软件系统,它并不是专门 针对医学影像领域的16-18。 vtk 为开放源码的形式, 利用了流行的面向对象的技术, 可以直接用 c+,java,tcl 或者 python 编写代码,提供了超过 300 个 c+类和大 量的医学影像处理和分析所需要的三维可视化技术。此外,vtk 支持跨平台开发, 支持 windows,unix 等多种平台。itk 是用于图像处理,分割和配准的,开发源码 的,面向对象的软件系统19。它包含了大量的分割和配准算法,比如阈值分割法, 4 华华 中中 科科 技技 大大 学学 博博 士士 学学 位位 论论 文文 区域生长法,聚类分割法,live wire 分割法等。值得注意的是,itk 本身并不提供 可视化的能力,其主要目的是提供医学影像的分割与配准功能,是专门针对医学影 像领域开发的。 mitk 是由中国科学院自动化研究所复杂系统与智能科学重点实验室 开发的,集成化的医学影像处理与分析 c+类库,其主要目的是提供一整套整合了 医学图像分割,配准和可视化功能的,具有一致接口的,可复用的,灵活高效的算 法开发工具。 mitk 也采用传统得面向对象的设计方法, 其语法和接口也是相对健壮 和有效的。 在生命科学的其他领域,各种集成化的分析工具或平台举不胜数。譬如在生物 信息学领域,biopipe20,biowbi21,taverna22,wildfire23和 kde bioscience24 等,这些工具都为该领域的数据和算法工具提供了一种集成的机制。譬如生物信息 学平台 kde bioscience (knowledge discovery environment of bioscience) , 它基于 java 程序设计,采用客户/服务器(client/server)和工作流(workflow)模式构建,其不 仅提供统一的接口来集成各种基因分析工具和算法,并且提供有效的协同工作机制 使得一个团队共同完成一项研究工程成为可能。此外,该平台基于其友好的图形界 面 gui(graphical user interface)使得研究过程更加便利。 1.1.3 发展趋势和面临的挑战发展趋势和面临的挑战 在生命科学的各个领域中,海量的数据源和不断涌现出的算法工具使得提供统 一集成化的分析平台或工具尤为迫切。具体的需求如下: (1) 需要一致而且公共的接口,使得集成各种数据源和算法工具更为有效。 (2) 鉴于分析手段和工具的日益多样性和复杂性,需要提供协同工作机制。 (3) 友好的图形界面便于操作。 (4) 该平台或者工具可以在不同的操作系统 operating system(os)间无缝的移 植,以便可以有效的提高研究效率。 在某些领域,譬如针对基因组技术,序列分析等,已经有相对满足要求的平台, 譬如上节提到的生物信息学平台 kde bioscience。然而,在生命科学的其他相关领 域,例如在医学图像处理和神经元信号处理领域,尽管相关的分析工具和软件包不 少,但是普遍缺乏集成算法的公共而有效的接口,并且都没有提供协同工作机制。 5 华华 中中 科科 技技 大大 学学 博博 士士 学学 位位 论论 文文 此外,这些工具和软件包在不同的操作系统间移植时,整个工程也需要重新编译。 这都增加了研究过程的复杂性。基于此,在这些领域提供满足上述 4 点需求的软件 平台或者工具,显得尤为迫切。 为了提供有效算法集成的一致接口,并且提供协同工作机制和友好的图形界面, 工作流技术被认为是一种潜在的解决方案24。 1.2 工作流技术工作流技术 在探讨工作流技术应用于生命科学领域之前,我们有必要了解工作流的产生和 发展现状。 1.2.1 工作流的产生,发展以及研究现状工作流的产生,发展以及研究现状 工作流的起源可以追溯到几个相关领域,如办公自动化、计算机集成制造、映 像和文件管理以及数据库技术等。工作流是这些领域工业化以及追求高效处理例行 工作的产品:它通过将工作分解为定义良好的任务、角色,按照一定的规则和过程 执行任务并进行监控,达到提高工作效率、降低生产成本、提高企业经营管理水平 和企业竞争力的目的25。 从发展历史来看:工作流技术起源于上个世纪 70 年代中期;第一次使用工作流 术语可追溯到 80 年代初;80 年代中期,filenet 和 viewstar 等公司率先开拓了工作 流产品市场,形成了早期的工作流管理系统;进入 90 年代,由于计算机网络、分布 式数据库、分布处理等信息技术的迅速发展,现代企业的信息资源越来越表现出异 构、分布、松散耦合的特点,实现大规模异构分布式执行环境,使得相互关联的任 务能够高效运转并接受密切监控已成为一种趋势。在这种背景下,工作流相关的技 术条件逐渐成熟,工作流系统的开发与研究进入了一个新热潮。 1993 年 8 月,工作流技术标准化工业组织 wfmc(workflow management coalition,工作流管理联盟)成立,它标志着工作流技术进入了相对成熟和规范的阶 段。此后,wfmc 陆续发布了工作流参考模型、应用程序接口、管理控制接口、相 关术语、过程语言描述等系列标准和规范,在很大程度上促进了工作流技术的发展 和工作流管理系统在企业中的应用。 6 华华 中中 科科 技技 大大 学学 博博 士士 学学 位位 论论 文文 目前,工作流技术在计算机应用研究领域之中被明确地划分出了自己的一席之 地,在全球范围内,对工作流的技术研究以及相关的产品开发进入了更为繁荣的阶 段。更多、更新的技术被集成进来,文件管理系统、数据库、电子邮件、移动式计 算、internet 服务等都已被容纳到工作流管理系统之中。 关于工作流的理论己经存在许多年了,而且也早就有了一些成熟的产品啦, 如 filneet、domino 等,但是由于技术的限制,早期的一些工作流产品主要都是 一些基于文件处理或是办公自动化的产品,对于大型企业的工作流应用的支持比 较差。工作流的概念虽然已经被认同,但工作流产品市场还属于年轻而又混乱的 阶段。直到最近,分布式应用技术(corab、j2ee、.net 等)的出现、成熟为工作 流应用的发展提供了必要的条件,才使得工作流的发展成为了可能。目前,工作 流产品发展很快,新的工作流产品如雨后春笋般涌现出来,以至于有的和工作流 并不怎么有关系的产品也提供嵌入的工作流支持,并大肆吹嘘,好像没有工作流 就缺了些什么似的。 工作流在国内市场的迅猛发展使得传统的管理模式在新一轮的竞争中风雨飘 摇。企业的管理方向、操作模式与控制方法再次成为工作流生产企业关注的焦点。 短短几年间,涌现出了众多的形态的工作流形式,在同一种形态形式中也出现了更 多的选择。无论是分销商、经销商还是普通批发商、二级三级批发商和零售商也在 面对着日益增多的生产商、供应工作流商和品牌资源;分公司和销售分支机构也对管 理模式和管理方法提出更高的要求。这些企业的需求产生了巨大的工作流的市场, 从而进一步刺激了工作流的发展。 从国际化的角度来看,办公自动化应用反而相对属于小型应用,真正的大型的 工作流应用主要集中在业务流程管理和业务流程重组上。 即使如此我们也应该看到工作流标准还处于制定阶段。现在存在大量相互重叠 的规范。导致规范如此之多而同时每个规范的应用又很有限的原因是,在工作流最 基础概念上大家达成的共识很少。工作流是最容易让你感到心烦的话题,因为工作 流本身的概念会和其他相关概念和技术混淆在一起。可以举一个具体的例子,比如 说工作流完全是对 webservioe 的补充。 你可以通过暴露接口以 webservice 的方式访 7 华华 中中 科科 技技 大大 学学 博博 士士 学学 位位 论论 文文 问一个工作流管理系统,但是不能假定总是必须通过 webservice 接口访问工作流系 统接口。一些规范造成了这样的假设。除了 webserviec,其他容易混淆的概念和技 术包括: email、流程之间的通讯、wbe 应用和组织结构。 在 工 作 流 领 域 第 一 个 致 力 于 标 准 化 工 作 的 是 workflow managemnt coalitionw(wmfc),开始于 1993。wfmc 发布的参考模型呀良不错,它定义了工 作流管理系统和其他相关部分之间的接口。wfmc 的另一项成果是 xpdl 规范。 xpdl 定义了描述工作流声明部分(dodarativepar)t 的 xml 结构。参考模型和 xpdl 是目前最好的规范,事实上,目前市面上几乎所有的工作流产品都是基于 wfmc 规 范来实现的,但是规范总是比现实需求慢半拍,比如 wfmc 允许定义扩展,而对于 扩展并没有制定详细的规范来限制应该如何扩展(比较矛盾的是,如果限制了,可能 就不叫展啦),使得各家工作流产品,虽然都是基于 wfmc 规范来实现的,但却往往 不能直接交互,甚至连交换流程定义也做不到。 总而言之,工作流当前的状况是,己经有广为认可的标准被大范围采用,但目 前规范还没有成熟,对于现在想应用 bmp 的公司来讲,比较工作流系统是一个极其 困难的挑战。尽管标准化工作慢了一拍,可好的工作流管理系统还是有的。如果不 考虑互操作性而绑定到一家工作流产品的话,那么应该说,工作流市场已经比较成 熟。就实施的角度来说,也己经有了很多成功的案例。 1.2.2 工作流简介工作流简介 工作流系统成功的关键在于向其输入的工作流的质量,因此,本节将简要探讨 工作流中的某些概念26。 1)案例 工作流系统的基本目的是处理案例。医学图像的三维重建,神经元网络的数据 处理等都是案例,相似的案例属于同一种案例类型,原则上,这些案例能够用相同 的方式来处理。 每个案例都有一个唯一的标识。这使得我们在讨论问题时对该案例给出明确的 指称。每个案例的生命周期都是有限的。以医学图像三维重建为例,提交切片数据 8 华华 中中 科科 技技 大大 学学 博博 士士 学学 位位 论论 文文 意味着案例在工作流系统中出现,直到三维重建结束,它才会从工作流系统中消失。 一个案例出现和消失之间,它总处于某个特定状态,该状态由三个元素组成: (1) 案例相关属性的值; (2)已经满足的条件; (3)案例的内容。 案例属性是一系列同案例相关的变量,能够用来管理案例。正是通过这些变量, 我们才有可能指出在特定条件下某个任务可被忽略。注意。案例属性值可能随着案 例的进展而发生变化。案例属性不能说明案例的进展,但条件可以。条件被用来确 定哪些任务已被执行,哪些任务还要被执行。我们也可以把条件看作一个任务被执 行的前提。只有当某个案例满足了一个任务的所有条件时,该任务才能被执行。对 于任意案例,我们总是能够判断其每个条件的真假。我们也可以使用术语阶段来代 替条件,然而当一个案例的多个条件同时满足时,它将同时处于多种阶段,这往往 会造成混淆。 除了属性和条件,工作流系统通常不包括案例内容的细节。案例的内容包括在 文档,文件,档案和数据库中,它不属于工作流系统的管理范畴。 2)任务 任务这个术语已经被广泛提及。它是工作流技术中的一个重要概念。通过确定 任务,才可以构建工作流。任务是一个工作的逻辑单元,它不可分割且必须完整执 行。如果在执行任务期间发生任何错误,那么必须返回任务执行前的状态。任务的 不可分割性依赖于定义它的环境。譬如医学图像研究人员将三维重建的任务交给开 发人员,在研究人员看来是原子的,但对于开发人员来说则不然,他可能将重建任 务分割得更小。 任务泛指一般的工作单元,并非莫案例活动的一次具体执行。为了避免把任务 本身同作为某案例的一部分的任务执行相混淆,我们引入术语工作项和活动。工作 项是案例和将要执行的任务的结合体。只要案例状态允许,工作项就被创建。我们 把工作项看成是要被执行的实际工作块。术语“活动”指的是工作项的实际执行。 当工作从某个工作项开始时,它就成为一个活动。工作项和活动都与具体案例相关, 如图 1.1 所示: 9 华华 中中 科科 技技 大大 学学 博博 士士 学学 位位 论论 文文 图 1.1 任务、案例、工作项、活动之间的关系。 fig. 1.1 the relation among the task、case、work item and activity. 3)过程 某种类型案例的执行方式由相关的过程来描述。过程指出了哪些任务需要被执 行,以什么次序来执行。我们也可以把过程看作是某种案例类型的程序。通常,一 个过程可以用来处理多个不同的案例,根据其案例属性采取不同的措施,如过程中 的某个任务只可能在某些案例上执行。由于案例属性不同,任务的执行次序也可能 发生变化。条件用来决定任务的执行次序。本质上,过程由任务和条件构成。 我们也可以使用已定义过程作为另一过程的一部分。因此,除任务和条件外, 过程也可能由多个子过程组成。每个子过程又由它的任务,条件以及可能更细致的 子任务组成。通过对子过程的明确识别和单独表述,常见的子过程可以被复用。这 样,复杂过程可以分层构造。在过程描述的最高层,我们只能看到有限数量的子过 程。通过检查一个或多个子过程,相当于我们放大过程的特定部分。 过程定义了案例的生命周期。每个案例的生命周期都是有限的,都有清晰的开 始和结束,因而过程要与此相符。于是每个过程都有开始和结束,用来分别标识案 例的出现和完成。 4)路由 过程决定了案例的生命周期,我们称之为案例的“路由” 。沿着特定分之的路由 决定哪些任务需要被执行。在路由案例时,主要有下列 4 种基本结构: (1) 最简单的路由形式是任务的顺序执行。换句话说,它们按顺序被一个接一 个的执行。通常在它们之间存在着清晰的依赖关系。例如前一个任务的结果是后一 个任务的输入。 10 华华 中中 科科 技技 大大 学学 博博 士士 学学 位位 论论 文文 (2) 如果两个任务能被同时或以任意次序执行,我们称之为并行路由。这种情 况下,两个任务都需要被执行,且互不影响。 (3) 当在两个或更多任务间存在选择时,我们称之为选择路由。该选择可能依 赖于案例相关属性值所体现出的特定性质。选择路由也被称为条件路由。 (4) 在理想状况下,对于每个案例的一个任务的执行都不超过一次。然而有时 候需要多次执行某个任务(如一个任务被反复执行,直到满足其后的“检查”任务 结果为止) ,我们称这种路由形式为循环(或迭代)路由。 5)启动 只有当案例的状态允许时,一个工作项才能被执行。但是实际执行一个工作项, 通常还需要其他的前提。如果该作业必须由人来执行,那么只有当他将作业从“篮” 中取出后活动才能开始,我们将此称之为触发,即工作项由一个资源启动。其他的 触发形式还包括:外部事件和某个特定的时刻。因此我们可以把触发分为如下三类: (1)资源驱动, (2)外部事件, (3)时间信号。如果工作项不需要外部激励并总是 必须被立即执行,则不需要触发。 1.2.3 工作流管理系统简介工作流管理系统简介 工作流管理系统简言之就是在某种计算机形式化表示的工作流逻辑驱动下,完 整地定义管理和执行工作流的软件系统。工作流管理系统首先要将现实世界中的业 务过程转化为某种计算机的形式化表示,其次通过管理业务过程中的每一步活动的 序列和在不同活动中协调管理相应的资源来实现业务流程的自动化。 根据 wfmc 的定义25, 工作流管理系统 (workflow management system, wfms) 是一个软件系统,它完成工作流的定义和管理,并按照在计算机中预先定义好的工 作流逻辑推进工作流实例的执行。 通常,工作流管理系统指运行在一个或多个称为工作流机的软件上的用于定义 实现和管理工作流运行的一套软件系统,它和工作流执行者(人、应用)交互,推行工 作流实例的执行,并监控工作流的运行状态。在这里需要强调指出的是工作流管理 系统不是企业的业务系统。在很大程度上,工作流管理系统为企业的业务系统运行 提供一个软件支撑环境,非常类似于在单个计算机上的操作系统。只不过工作流管 11 华华 中中 科科 技技 大大 学学 博博 士士 学学 位位 论论 文文 理系统支撑的范围比较大、环境比较复杂而已,所以也有人称工作流管理系统是业 务操作系统(bos 一 businessoperatingsystem)。在工作流管理系统的支撑下,通过集 成具体的业务应用软件和操作人员的界面操作,才能够良好地完成对企业经营过程 运行的支持。所以,工作流管理系统在一个企业或部门的经营过程中的应用过程是 一个业务应用软件系统的集成与实施过程。 工作流管理系统可以用来定义与执行不同覆盖范围(单个工作者、 部门、 全企业、 企业间)、不同时间跨度(分钟、小时、天、月)的经营过程。这完全取决于实际应用 背景的需求。按照经营过程以及组成活动的复杂程度的不同,工作流管理系统可以 采取许多种实施方式,在不同的实施方式中,所应用的信息技术、通信技术和支撑 系统结构会有很大的差别。工作流管理系统的实际运行环境可以是在一个工作组内 部或者在全企业的所有业务部门。 虽然不同的工作流管理系统具有不同的应用范围和不同的实施方式,但它们具 有很多共同的特性。概括地说,工作流管理系统提供了 3 种功能: (1) 建立阶段的功能:主要考虑工作流过程和相关活动的定义和建模功能。 (2) 运行阶段的控制功能:在一定的运行环境下,执行工作流过程,并完成每 个过程中活动的排序和调度功能。 (3) 运行阶段的人机交互功能:实现各种活动执行过程中用户与 ti 应用工具之 间的交互。 1.3 工作流技术应用于生命科学工作流技术应用于生命科学 最近几年,在生命科学研究领域里,大量的信息实验产生了海量的生物学相关 数据,这些数据都存放在不同的生物学数据库中。工作流系统在研究者处理这些海 量实验数据的过程中开始变得至关重要起来27。生命科学领域的研究者们可以通过 信息数据和分析工具的集成来深刻了解相关复杂的生物学现象。而工作流技术为集 成数据和相关算法工具提供了一个良好的解决方案,使得研究者们不必陷入复杂的 编程环节。工作流系统可以以工作流和数据管道的形式构建复杂的计算机模拟试验。 数据管道是一个相对简单的概念。任何计算机组件或者节点都有数据输入和数据输 12 华华 中中 科科 技技 大大 学学 博博 士士 学学 位位 论论 文文 出。数据管道将这些节点以管道的形式的连接起来,而数据在里面流动。在工作流 控制的数据管道中,原始数据经过变换和分析产生出结果信息,相关的结果信息被 收集起来又可产生新的知识发现。在近几年中,工作流技术被各种组织广泛应用以 提高产量和效率。此外,工作流系统的灵活性可以使得集成新的数据源和算法更为 简单和有效。 1.3.1 应用于神经元网络信号处理应用于神经元网络信号处理 在网络神经元信号处理领域内, 处理 meas 数据的各种软件工具包不在少数 (如 前所述) 。 其中比较著名的有 nev21kit, mea-tools, spike manager 和 data-means。 nev21kit工具包由bogard等人开发, 在多种操作系统下 (例如windows, macosx 和 linux)测试运行通过,并且开放源码,主要集成了一些 spike sorting 的算法,例 如主成分分析法 princpal component analysis(pca)等,接受有限的数据格式,譬如 labview 格式, neural event files (nev) 格式等, 为单机版软件。 mea-tools 和 spike manager 都是基于 matlab 的软件工具包,主要接受 matlab 数据格式。它们都集成了 一系列信号处理,峰值检测,爆发检测和相关统计学分析算法。但是这些软件都未 提供统一开放的接口,以集成新的数据源和算法工具,也没有采用工作流技术来处 理和整合数据。 data-means 则首次运用了工作流的思想,虽然在形式上没有对实验数据进行 数据流程式的处理,但是在实验数据的整合和数据分析上采用了工作流模式。例如 在数据结构的处理上,data-means 采用统一的 ascii 格式,几乎所有的 mea 系 统都提供相关的数据转换接口将原始数据转换为 ascii 格式。因此,采用这种统一 的数据格式便于各种异构数据源的整合。其次,它对 mea 数据的分析过程运用了工 作流的机制,譬如对实验数据进行统计学分析后再分类的过程28,从原始数据的获 取,然后峰电位提取,再利用 nev21kit 进行 spike sorting,分类的结果利用某种统计 学算法进行统计学分析(例如 perievent histograms,psths,isis 等) ,最终将统计学 结果用基于 k-means 的分类方法进行分类,最后的分类结果以图形化的形式展现出 来。但是,这些过程却无法在其界面以图形流程化的方式显现出来,而这种方式显 然可以提高研究者的效率。此外,data-means 并未给出具体并且一致的数据和算 13 华华 中中 科科 技技 大大 学学 博博 士士 学学 位位 论论 文文 法接口,而这些接口对于研究者集成更多的数据源和算法工具尤为重要。 以上所提到的软件工具均采用单机版模式,都不提供协同工作机制。随着网络 神经元信号处理领域的进一步发展,越来越多的数据源和更加复杂的算法分析工具 不断的涌现出来,因此,提供一致并且公共的数据和算法接口称为必须。此外,研 究手段的多样性和复杂性也使得 mea 数据的获取和分析变得更加工程化, 也使得研 究者们共享实验数据和分析过程变得尤为重要,基于此,协同工作可以极大的提高 研究效率。而这一切需求,工作流技术将是一个良好的解决方案。正如前所述,工 作流机制将算法和数据源有效的分离开来,使得集成,修改数据结构和算法更加方 便。此外,基于工作流技术也可有效的提供协同工作机制。 1.3.2 应用于生命科学其他领域应用于生命科学其他领域 工作流技术也广泛应用与生命科学其他领域,这里以医学图像影像处理为例。 在医学影像处理与分析技术领域内,已经有很多相对成熟的集成软件开发包, 比较成功的例子包括可视化开发包 vtk,分割与配准开发包 itk,医学影像处理与 分析开发包 mitk 等。这些开发包都集成了丰富的医学影像相关的分析和处理算法, 也提供了相对开放的接口。 vtk 是一套进行数据可视化的通用开发工具包,并非专门针对医学影像领域。 它是基于数据流模型的系统,众多数据处理模块被连接形成数据处理可视化网络, 可视化模式由两类基本的对象组成:数据对象和处理对象,数据对象代表了进入可 视化网络的数据集类型。处理对象按功能分为三种:数据源,过滤器,映射器。数 据源对象用于产生或接收数据集,将其导入到可视化网络之中,是可视化网络的起 点。过滤器用于对数据集进行各种算法的处理,它可接受一个或多个数据集输入, 也可产生一个或多个数据集输出。映射器是可视化网络的终点,将处理后的数据集 映射为可展示的几何形状。itk 的主要目的是提供医学图像的分割与配准功能,是 专门针对医学影像领域开发的。它主要提供主流的分割与配准算法,并分别给出开 放的接口,但其并不提供可视化功能,因此它一般与 vtk 配合使用。 mitk 包含可视化,分割,配准 3 大类算法,每一类下面又有很多不同的方法, 医学影像数据本身也还有多种结构的特点,这些都决定了将其整合进一个统一的框 14 华华 中中 科科 技技 大大 学学 博博 士士 学学 位位 论论 文文 架之内是一个比较复杂的过程,必须经过抽象,建模,才能得到一个灵活和可用的 计算框架。 鉴于 vtk 和 itk 的设计思想,mitk 也是采用工作数据流模型,以数 据处理为中心,将数据结构和算法分割开来。这种模型非常适合医学影像处理和分 析领域这种涉及大量算法,需要处理不同类型数据的特点。在其数据流模型中,其 数据和算法都以对象来描述,每个算法被抽象成一个过滤器,它接受一个输入和产 生一个输出,输入和输出的均为数据对象。一个算法的输出将作为另外一个算法的 输入,一系列的算法可以被串成一个工作流水线,从而组成统一的计算框架。 这些集成的软件开发包都采用了工作流的模式,将算法工具和数据结构有效的 分离开来,使得使用者可以较为方便的集成算法,但是由于其数据和算法接口的局 限性,使得它们无法集成其他语言编写的算法和可执行算法。并且它们都没有提供 友好的图形界面便于研究者操作。另外,随着医学影像处理领域分析手段和工具的 日益多样性和复杂性,这些软件包的单机工作模式也无法满足研究者的协同工作需 求。最后,它们都是基于 c 或 cpp 开发,在不同的 os 间移植时,整个工程需要重 新编译,这些都降低了研究效率。 1.4 研究意义研究意义 在生命科学研究相关领域内,随着实验设备的更新和实验手段的多样化,产生 出海量的数据和各种异构数据源。同时,越来越多更加复杂的算法和工具也不断的 被相关研究者采用。因此,集成这些异构数据源和算法的平台或者工具也不断的涌 现出来,如前所述,在神经生物学研究中,针对 mea 数据的获取和分析,也开发了 集成了一系列 spike sorting 和统计学算法等的软件包 (如 mea-tools, spike manager, data-means 等) 。在医学图像处理与分析技术领域内,也已经开发了一些封装了相 关成熟算法的工具包(如 vtk,itk,mitk 等) 。但是,这些软件工具(包)都存 在以下一些问题: (1)它们大都没有提供一致并且公共的数据和算法接口。随着越 来越多异构数据的产生和大量复杂的算法工具被开发出来,相对独立的数据和算法 接口对于集成这些数据源和分析工具显得尤为重要。 (2)它们几乎都不提供协同工 作机制。海量的数据和日益复杂的研究手段使得研究过程的分工更加明确,例如在 15 华华 中中 科科 技技 大大 学学 博博 士士 学学 位位 论论 文文 神经元网络数据分析中,实验数据的获取,原始数据的峰电位提取和分类,对实验 数据的统计学分析等都可由不同的研究者承担,基于此,数据共享和研究过程的共 享就变得至关重要。 (3)这些软件工具无法在不同的操作系统间无缝的移植,也就 是说,它们移植到不同的操作系统平台上时,整个工程是需要重新编译的,这显然 降低了研究效率。 本课题尝试构建基于 java 环境的工作流管理平台 biow(bio-workflow) 。该平 台基于工作流技术, 采取 java 2 平台企业版 (java 2 platform enterprise edition, j2ee) 的体系结构。该平台的工作流机制将数据结构和算法有效的分割开来,并且提供独 立一致的数据接口和算法接口,使得集成新的数据源和分析工具更为有效。其主要 特点包括:(1) 提供独立的软件开发

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论