动态分析基本方法范文

时间:2023-09-17 19:02:32

动态分析基本方法

动态分析基本方法篇1

关键词:方法论;马克思经济学;西方经济学;比较

任何一门社会科学的发展和突破都离不开方法论的变革,深入了解不同经济学体系的方法论是把握好经济学基本理论的关键。本文对马克思经济学与西方经济学的方法论进行比较,对我国经济学研究方法的发展具有重要作用。

一、马克思经济学与西方经济学方法论基础的比较

马克思经济学是制度分析,通过考察人与人在生产、交换、分配和消费中的关系来解释经济的本质问题。唯物史观是马克思经济学与其它经济学流派相区别的根本标志。在马克思经济学中,历史唯物主义的世界观和方法论注重对经济制度、经济权力及其历史变迁的研究,从生产力与生产关系的矛盾运动中解释社会经济制度变迁,在历史形成的社会经济结构中分析个体的经济行为;把复杂的社会现象归结为经济关系,依据经济关系来理解政治、法律制度和伦理规范,以生产资料所有制为基础确定生产关系及社会经济制度的性质;把生产关系的变化归结为生产力的发展变化,从生产力水平出发,揭示社会发展的客观规律,通过社会实践实现社会经济发展合规律与合目的的统一。这种历史唯物主义的方法论基础反映了马克思经济学的本质和精髓,并使马克思经济学作为一个整体、一种范式与其它的经济学流派区别开来。马克思经济学是人类社会经济发展客观规律的正确反映,马克思经济学的科学意义不仅在于其理论,而且在于其方法。

当代西方经济学把资本主义生产关系和经济制度视为一般和永恒的范畴,从总体上看,其哲学基础是历史唯心主义的人性论,并以个人主义作为其研究的出发点。在这一哲学基础上,西方经济学家运用个量和总量研究法、均衡分析法、静态和动态研究法、实证研究和规范研究法、数理模型分析法、制度分析法等,并在一定的制度背景下研究资源配置问题。可见,当代西方经济学从其唯心主义世界观基础出发,侧重经济运行分析,研究资源配置及各种经济变量之间的关系。这些具体的研究方法在马克思经济学中也有类似的体现,虽然马克思并没有从这个角度进行论述,也没有使用过相同的名词。

二、马克思经济学与西方经济学研究方法的比较

(一)总量研究方法和个量研究方法的比较与评析。个量研究主要以单个经济主体的活动为研究对象,在假定其他条件不变的前提下研究个体的经济行为和经济活动,其特点是把一些复杂的外在因素排除掉,突出个体经济主体的现状和特征。这种研究方法在实践中主要分析单个企业中要素的投入量、产出量、成本和利润的决定及单个企业有限资源的配置、单个居民户的收入合理使用,以及由此引起的单个市场中商品供求的决定、个别市场的均衡等问题。这种研究方法往往将某一个体的具体情况和局部特征表现得非常清楚,但也有一定的局限性:一是难以注意到宏观经济对个量关系或个体经济行为的影响;二是研究结果常常是有条件的,因为这种方法是在假定其他条件不变的情况下,排除一些外部经济因素来研究个体经济问题,但在实际的经济生活中,一些外部因素却常常是事物发展的重要条件,有时还可能会成为影响经济运行的主要因素,从这个意义上说,这种研究方法的运用是有条件的,而且研究结果往往与现实不符。

总量研究方法把制度因素及其变动的原因及后果和个量都看成是不变或已知的前提下,以经济发展的总体或总量为研究主体,研究宏观经济总量及其相互关系。如,在研究消费时,只着眼于社会总消费与总收入、总投资、总储蓄的相互关系,对个体的消费行为及其变动则不予关注。这种研究方法由于抓住经济运动的总体状况及总体结构,因而其研究结果对把握国民经济全局具有重要作用。但这种研究方法也有局限性:主要是往往忽视个量对总量的影响。

作为分析经济的具体方法,不论是总量研究方法,还是个量研究方法都具有重要的科学价值。由于个量与总量的关系不是简单的加和关系,有些经济现象从总体和个体不同的视角来研究,其结果会有所不同。

在《资本论》中,马克思就运用了总量与个量研究方法。关于资本的再生产和流通,马克思有时以个别资本为研究对象,有时以社会总资本为研究对象。在对魁奈的《经济表》中运用的总体的研究方法,曾给予很高评价。他说:“魁奈的《经济表》用几根粗线条表明,国民生产的具有一定价值的年产品怎样通过流通进行分配,……无数单个的流动行为,从一开始就被概括为它们的具有社会特征的大量运动,——几个巨大的、职能上确定的、经济的社会阶级之间的流通。”但由于魁奈“有限的资产阶级的眼界”,使他对资本主义的经济结构和阶级关系进行错误的划分,因此,他虽然天才地应用了总量分析的方法,却不能得出完全科学的结论。从马克思对个量和总量研究方法的运用中,不难发现:第一,马克思的总量分析总是以个量分析为前提,因而对资本主义经济的宏观分析具有坚实的微观基础,具有内在的逻辑一贯性。而二战后以凯恩斯主张的以总量分析方法建构的宏观经济理论中,却缺乏必要的微观基础。这也是近些年来西方经济学理论界为之修漏补缺的重要原因。第二,马克思是在对资本主义现实经济结构和阶级关系作了科学分析的基础上运用个量或总量的研究方法。而西方主流经济学者在运用这些方法时则往往忽视甚至抹煞了现实的阶级关系。

(二)均衡研究方法的比较与评析。均衡分析方法是研究各种经济变量如何趋于平衡的方法。马歇尔在其《经济学原理》中曾借用机械力学中的作用力和反作用力的研究方法来说明经济均衡。因此,均衡研究方法主要研究各种经济力量达到均衡所需要的条件和均衡实现稳定的条件。虽然,由于影响均衡的条件经常变动,以致难以达到均衡,但在假定其他条件不变时,研究各种力量的均衡方向,仍然极为有用。均衡分析方法通常有两种:局部均衡和一般均衡。局部均衡分析是将经济事件分为若干部分,集中考察其中的某一部分,而对其他部分存而不论。一般均衡分析法则侧重用各种经济因素间的相互依存关系来分析整个经济体系的均衡,重视不同市场中各种商品和资源的产量和价格的相互关系。如果资源供给状况、消费者偏好、技术函数已知,一般均衡理论便能从数学上证明通过资源和商品价格的自行调节以达到彼此相互适应的水平即均衡状态。

均衡分析法侧重经济数量关系的研究,在正确的思想和理论指导下,其科学性不容怀疑。但当代西方经济学家在运用这一研究方法时都往往忽视量的平衡背后质的关系,甚至用量的平衡取代质的同一性,这往往会掩盖事物发展的本来面貌。如,马歇尔通过市场供求关系的研究,确立了供求相等时的价格为均衡价格,并以此代替价值关系。但他从来不回答为什么供求相等时的价格恰好处在这一水平,而不会处于其他水平。因此,这种分析方法缺乏对价值实体的分析。从均衡方法的具体运用来说,决不能用函数关系代替因果关系的分析。函数分析是量的关系的研究,而因果关系的分析是质的关系的研究,因此,不能用量的分析代替因果关系的研究。波兰经济学家兰格在《政治经济学》一书中,将经济规律和一切规律分为三类,即因果律、同时律(或结构律)和函数关系律,并指出:“最基本的是因果经济律,因为其他两类经济规律都可以转化为因果律”。在马克思的经济理论中,也完整系统地运用了均衡分析法,在分析供求时马克思不仅分析了竞争如何使供求趋于一致,同时也着力分析在供求一致时的价值决定问题,这实际上是分析价值实体问题,因此,马克思能科学地揭示价值是价格变动的内在根据。马克思对社会再生产的研究实际上也是均衡分析,他深入地研究了社会再生产平衡发展的实现比例或均衡条件,但并不说明资本主义经济是均衡的,而是说明资本主义经济难以达到均衡,并且资本主义经济的不均衡是如何形成的及其深刻的社会原因。

(三)静态和动态研究方法的比较与评析。静态研究方法是抽象掉了时间因素和变化过程而静止地分析问题的方法,主要为了说明什么是均衡状态和达到均衡状态需要的条件,而不管达到均衡的过程和取得均衡所需要的时间。当已知条件发生变化后,均衡会由一种状态转化到另一种状态。如果只着眼于前后两个均衡状态的比较,而不考虑从一个均衡点到另一均衡点的移动过程和经济变化中的时间延滞,则被称为静态的研究方法。动态分析方法是对经济体系变化运动的数量进行研究,通过引进时间的因素来分析经济事件从前到后的变化和调整过程。汉森在《凯恩斯学说指南》中引用拉格纳·佛里舒的话说“不但考虑在某一时点的系列数值并研究它们之间的内在关系,而且要考虑在不同时点某些变数的大小,同时我们引用某些足以在同时属于不同时刻的其中数值的公式,这是动态学说的重要特点。只有通过这种学说,我们才能解释一种情况怎样从前面的情况中产生出来。”希克斯在《价值与资本》中指出:“我把那些我们并不计较日期的经济理论称之为静态经济学;而把那些对每一个数量都必须注上日期的理论称之为动态经济学。”

由此可以看出,用是否考虑经济数量在时间上的变化来区分静态分析和动态分析。如何将根据有无时间的变化与有无增长来区分的动态和静态分析统一起来?阿克利在《宏观经济学》中指出:“静态分析,不论简单的或比较的,都只集中在均衡位置上面。它既不涉及达到一个均衡位置所需要的时间,也不涉及各个变量向均衡状态所经过的路线。这是一件关系动态分析的事。”“如果均衡是在时间推移中没有变动的一种状态,那么只要均衡保持着,一种关系的时间维度就可以略而不论。”按阿克利的意思,尽管均衡是在时间中变动的,但量上没有变动,可按静态来处理。瑞典学派的林达尔在《货币与资本》中认为:“没有经济事物不是在时间中进行的,如果要具体考察动态与静态,我们就可以给出一个一般方程,然后又将具体的经济量值带入方程中,如果在量上不变动,这就是一种特殊的静态。如果有量上的变动,就称为特殊的动态。”

西方经济学的静态与动态分析法各有所长。静态分析可有效说明均衡的条件,而动态分析可观察到经济变化的过程。马克思认为物质总是在一定的时间与空间中运动的,运动是普遍的,静止是相对的,静止不过是运动的一种特例,并且认为静止是事物存在的必要条件,否则任何事物都不具有质的稳定性。但决不允许用静止掩盖和替代事物运动变化的绝对性。质量互变规律告诉我们必须在质量互变中研究动态与静止。因此,西方经济学中的静态与动态分析与马克思主义的运动与静止是不同的,前者主要局限在数量关系上。

(四)实证分析法与规范分析法的比较与评析。实证分析简言之就是分析经济问题“是什么”的研究方法.。侧重研究经济体系如何运行,分析经济活动的过程、后果及向什么方向发展,而不考虑运行的结果是否可取。实证分析法在一定的假定及考虑有关经济变量之间因果关系的前提下,描述、解释或说明已观察到的事实,对有关现象将会出现的情况做出预测。客观事实是检验由实证分析法得出结论的标准。樊刚指出实证研究作为一种经济研究方法的基本特征是:“从经济现象的分析、归纳中,概括出一些基本的理论前提假设作为逻辑分析的起点,然后在这些基于现实得出的假设基础上进行逻辑演绎,推导出一系列结论,并逐步放松一些假设,使理论结论更加接近具体事实。”规范分析法是研究经济运行“应该是什么”的研究方法。这种方法主要依据一定的价值判断和社会目标,来探讨达到这种价值判断和社会目标的步骤。

现代西方经济学认为实证分析和规范分析是相对的而非绝对的。具体的经济分析都不可能离开人的行为。在实证分析法中,关于人的行为的社会认识是其分析的基础,完全的客观主义是不存在的。从经济理论发展的历史来看,“除少数经济学家主张经济学像自然科学一样的纯实证分析以外,基本一致认为经济学既是实证的科学,又是规范的科学,因为提出什么问题来进行研究,采用什么方法来研究,突出强调那些因素,实际上涉及到个人的价值判断问题”。

马克思所处的时代还没有实证分析这个方法论术语,在一些学者看来,马克思经济学在方法论上强调的只是规范分析。其实,马克思主张的历史与逻辑统一的分析方法,就是规范与实证有机结合的方法。马克思的历史分析方法可以说就是一种实证分析方法,是“动态实证”。马克思十分重视对事实的分析。在《资本论》第一卷的序言中他说:“物理学家是在自然过程表现得最确实,最少受干扰的地方考察自然过程的,或者,如有可能,是在保证过程以其纯粹形态进行的条件下从事实验的。我要在本书中研究的,是资本主义生产方式以及和它相应的生产关系和交换关系。到现在为止,这种生产方式的典型地点是英国,因此,我在理论阐述上主要用英国作为例证”。马克思很重视实证分析,如,马克思对分工、生产、交换、市场、利润、利息等范畴的考察和研究都是实证分析,他的经济研究实践也可以证明这一点。

(五)数理模型分析方法的比较与评析。数理模型分析方法可使对经济过程和经济现象研究的表述更简洁清晰,推理更直观、方便和精确,使经济学的理论框架更加条理化、逻辑化和明了化。与英国的斯密、李嘉图,法国的魁奈、西斯蒙第及德国的李斯特等同时代的经济学家相比,马克思是当时经济学大师中运用定量分析最多和最好的。《资本论》在数学方法上,除运用简单的加减乘除之外,还有比例关系、函数关系、不等式及众多的统计图表。保尔·拉法格在《忆马克思》一文中提到马克思对数学分析的评价,马克思认为:“一种科学只有成功地运用数学时,才算达到了完善的地步。”恩格斯认为:“单靠数学演绎就确定一个论断为真理的事,这种情况几乎从来没有,或只是在非常简单的运算中才有。”而且列宁也指出:“数学公式本身什么也不能说明,它只能在过程的各个要素从理论上解释清楚以后对过程绘图说明”。可见,马克思经济学对数学的运用,只是把数学当成一种工具。而当代西方主流经济学的发展把数学当成一种目的,以数学化的程度来评价经济学达到的水平。

(六)制度分析方法的比较与评析。自亚当·斯密以来,经济学家们就以经济人假设为前提,在制度不变的前提下研究经济问题。在一定情况下,这种假定有利于经济学家对经济问题做深入分析。但在许多情况下,经济行为远比传统经济理论中的经济人假设复杂得多。因此,制度经济学家创立了将制度作为变量,用正统经济学的研究方法来分析制度的构成和运用,采取结构分析法、历史分析法和社会文化分析法来研究经济问题,揭示制度对社会经济发展的影响,并发现这些制度在经济体系中的地位和作用的经济学方法论。总体来看,制度分析方法的特征主要有:第一,动态化特征。即用进化或演进的眼光看待经济世界,这是制度分析方法的一个突出特征。制度分析方法特别看重制度的演进,而且认为促进制度演进的真正动因是技术的变化或技术的能动性,同时还认为技术变化和经济政策之间存在互动关系。因此,必须在制度演化的动态过程中去寻找问题形成的原因。第二,“非纯粹经济分析”的特征。制度分析方法始终坚持一种信念:社会经济是一个整体,经济系统中一切事物之间都相互联系、相互依存,而且任何事物都是其他事物的原因。所以在研究经济问题时既考虑“经济因素”,又考虑“非经济因素”的影响,并把法律、政治、社会意识形态等非经济因素纳入经济研究的内生变量中。第三,方法论的集体主义特征。从经济学方法论的发展历史来看,经济学对人类行为的分析有两种途径:一是方法论的个人主义,二是方法论的集体主义。正统经济学是以方法论的个人主义为基础,而制度经济学则带有强烈的方法论集体主义色彩,他们认为对制度这一集体行动的考察和描述才能最好地理解个人的经济行为。第四,具体化特征。制度经济学家使用正统经济理论去分析制度的构成及运行,并发现这些制度在经济运行中的地位和作用,因而在研究方法上带有具体化的特点,侧重研究微观经济制度,并更多地从现象上和形式上进行分析,较少进行内在矛盾的分析和考察。其理论核心总是围绕制度的内涵和构成、制度变迁和创新、产权制度和国家理论这些具体的制度范畴。

制度分析方法不是西方制度经济学家的独创,其实马克思就是一个制度经济学家,他的生产关系分析实质就是制度分析,与西方制度经济学家不同的是,马克思是从本质上来进行制度分析的,西方经济学家则是从现象上进行分析。由于西方经济学的制度分析方法注重从现象和形式上进行制度分析,因而具有客观实用性,所以它针对当代外部性经济问题的解决得到进一步的发展,并被广泛运用于经济理论的研究中。

三、结论

(一)马克思经济学与西方经济学具有不同的经济学方法论。马克思经济学是制度分析,侧重于人与人之间关系的研究,通过人与人在生产、交换、分配和消费中关系的考察来解释经济的本质问题。西方经济学侧重于经济运行分析,研究资源配置、研究各种经济变量之间的关系。马克思经济学是人们在认识世界、改造世界的创造性活动中,进行观察和感悟事物所形成的理性结论。

(二)马克思经济学与西方经济学具有不同的方法论基础。西方经济学的哲学基础是历史唯心主义的人性论,并以个人主义作为研究的出发点。马克思经济学的哲学基础是唯物史观,唯物史观是马克思经济学与西方经济学相区别的标志,它反映了马克思经济学的本质和精髓。

动态分析基本方法篇2

关键词:电子线路;课程内容;学习实践

电子线路课程是铁道信号专业的一门重要专业基础课程。随着电子技术的发展,生产现场的电子设备急剧增加,对电子线路课程的教学内容提出了越来越多的要求,课时和课程内容逐年增多。对专业设备的研发、设计、制造、施工、维护、使用都起着必不可少的作用,新技术、新装备大量投入使用,设备、技术更新换代周期大大缩短,因此在内容和思想方法上,必须经过科学的论证和总结,使之更符合大的认识规律,且能充分体现知识内涵的思想体系和鲜明的导向性。作为一门独立的学科,《电子线路》教学必须适应铁路职业技术教育的特点,形成以电子技术基本理论和基本电路分析方法为主的完整课程体系。

一、电子线路课程的特点及教学方法

电子线路课程是一门应用技术课程,具有较强的理论性和实践性。学生普遍感觉电子线路课程内容多、理论深、分析繁琐、难懂、难记、难掌握。首先,各个电子器件是构成不同电路的核心部件,电路的形式和功能的变化,器件在不同条件下的应用,对于器件的原理、特性必须讲够、讲透。学生是在高中知识和学完《电路基础》课程基础上进行学习的,按照专业教学计划的要求,学生做到基本概念牢固掌握,基本原理、特性透彻理解,为进一步学习电路奠定坚实的基础。作为专业基础课,其学习的质量将直接影响后续专业课的学习心理和学习效果。在教学内容上,除讲清器件的结构、原理、特性和参数外,还要着重强调非线性器件加偏置,以及改变偏置可以控制其工作状态的条件、特点、变量关系特征和模型。传统的单一教学模式,难以适应新的形势要求,必须对电子线路课程的教学内容、教学方法、教学手段加以改革,在教学上还应包括作为典型有源电路的恒流源电路的组成、静态、动态特征和电路模型,因为恒流源主要体现了器件的基本原理和基本特征,反映了有电源电路代替无源元件这一趋势。

二、电子线路课程改革思路

电子线路课程内容是随着电子线路的发展而发展的,电子线路课程的内容随着知识的积累逐年增多,可随着微电子技术和计算机技术的发展,特别是单片机技术和嵌入技术的发展,生产现场的设备向集成化、小型化方向发展。电子线路课程的课时数、教学内容在压缩,课程体系还是对各种电路分门别类、就事论事、面面俱到,增加了教学负担。因此在内容和思想方法上,必须经过科学的论证和总结,使之更符合认识规律,且能充分体现知识内涵的思想体系和鲜明的导向性。关键不在于课程内容的包罗万象,而在于对学生系统的、基本的思维和操作的训练、培养,授之以渔。依据这一原则思想,结合教学特点,对本课程的教改,分器件和电路两个方面谈谈看法。

首先,电子线路课程要学习基本电子器件,在电路部分应改变过去那种过分强调电路功能以至于以此来分门别类划分课程章节的方式,这种体系对于某些高等院校以电路设计作为重要内容的教学或许是合适的。这部分内容要突出各种电子器件不同工作状态的条件、特点、应用这条主线。

而对高等职业技术教育而言,对于电路功能只要通过电路分析能够正确识别和区分就可以了。电子器件是有源、有极、非线性器件,由静态到动态,由分立元件到集成电路,使用中必须加偏置,不同的偏置,在电子器件和偏置电路在直流电源作用下,静态工作点的设置、稳定过程的分析与计算。可以使器件工作于不同的工作状态,其静态分析的原理和方法可归结为具有共性的电路静态分析方法,不同的工作状态具有不同的特性,应用于各种形式的电路。

要使学生熟练地掌握各种工作状态的条件、特点和应用。教学内容上更主要的是电路的原理和基本分析方法,对基本电子器件的结构、原理有所了解,基本电子器件的特性、参数要讲透并且深刻理解,按照循序渐进的原则和人的认识规律,对于电路分析、选择、使用器件以及不同型号器件的替代是必不可少的,反映电路原理和分析方法的内在联系,总结出具有共性的原理和分析方法,也是实际工作中分析和处理电子技术问题所必需的。

其次,电路的动态分析要突出三种组态这条主线。在电路的动态分析中,无论电路形式、如何变化,我们必须抓住三种组态来进行电路分类,三种组态是基于对基本电子电路深入理解和高度概括的总结,作为一种思想体系贯穿全课始终,有着深刻的内涵。这是基于对电子器件原理、特性,用三种组态的思维方式对学生进行思维方式的训练,使学生深刻认识和对电路原理的透彻理解,可以在基本电路、简单问题上,并且进一步在复杂电路中灵活运用,无论分立元件电路,还是集成电路的分析得以简化,避免了每种电路对应一种分析方法的复杂局面,这种方法能适应新知识的发展。

当然,三种组态电路也有局限性,三种组态蕴含于放大电路的两种输入、两种输出的基本概念(同、反相,高、低阻)和变量控制关系的变化形式,电路的动态工作过程和电路分析,由于电路形式、功能的差异,利用负反馈手段可以解决,反复运用三种组态的思维方式和分析方法,在电路分析上可用于估算多极负反馈应用的具体形式,定性描述对电路性能的影响。利用三种组态和反馈的概念加以分析,使学生在简单问题和简单电路上做到深刻理解,可以利用估算法定量进行电路分析,作为电路的性能指标反映电路的特性,无论是分立元件电路还是集成电路的分析都具有实用性,其分析方法不外乎图解法和等效电路法,要使学生熟练掌握反馈组态、极性的判别方法。进而在复杂问题和电路中自如应用,可以避免每种电路对应一种分析方法的复杂局面。

总之,高等职业技术教育培养学生职业技能不仅是专业课的任务,通过《电子线路》课程的教学改革,要从基础课做起,培养学生的创新能力要贯穿整个教学过程,使学生由被动地接受变为主动地学习,培养出高素质、创新型的合格人才,从而真正实现高职教育教学改革的目的,使高职教育得到进一步的提升和发展。

参考文献:

[1]朱相磊.电子线路课教学改革的研究与实践.安徽电子信息职业技术学院学报,2004(4).

[2]王晓峰,王立梅.电子线路的故障诊断和测试点的选择.电子产品可靠性与环境试验,2001(4).

[3]陆中石.对高职模拟电子技术课程教学的思考.今日科苑,2009(24).

[4]刘静波.高频电子线路实践教学的建设和探索.电气电子教学学报,2006(4).

作者简介:张力(1962年―),男,辽宁锦州人,辽宁铁道职业技术学院副教授。

动态分析基本方法篇3

关键词:聚类分析; 判别分析; 动态聚类

0引言

经典聚类分析算法是基于距离计算的。然而除马氏距离定义外,其他距离定义都存在样本指标的量纲处理问题;除马氏距离和斜交空间距离定义外,其他距离定义都存在样本指标的相关性处理问题;另外,包括马氏距离在内的所有距离定义都存在将用于聚类的指标同等对待的缺点,不能反映不同指标对聚类结果的贡献程度。

一般情况下,在确定样本间距离计算方法的基础上,用不同的聚类分析方法得到聚类的结果是不会完全一致的。这是因为在实际应用中,许多对象在不同类之间本身并无清晰的划分。这导致了在既定用于聚类的指标组合的情况下,用不同的聚类方法对同一组样本进行分析会得到不同的聚类结果。如上所述,即使使用同一种聚类方法,有时由于样本的排列顺序不同,也可能导致不同的分类结果。这就提出了对不同的聚类方法进行评价的问题。关于所用方法好坏的评价,现在还没有一个合适的标准。Edwards 和CAVALL Isforza (1965) 曾建议把样本分成两类,使得两类间的离差平方和最大[1]。D.Fisher Walter也指出,应该寻找使类内差异最小的聚类方法[2]。因此,评价不同聚类方法的一个重要方面,就是看这些方法得到的聚类结果在类内的接近程度和在类间的相隔程度。一个较好的分类方法应该得到类内差异较小、类间差异较大的聚类结果。在实际应用中,一般采用以下两种处理方法:a)根据分类问题本身的专业知识,结合实际需要来选择分类的方法,并确定分类的个数;b)用多种方法对数据进行分析处理,把结果的共性取出来。如果用几种方法的某些结果都一样,则说明这样的聚类确实反映了事物的本质。将有争议的样本暂放一边,或者用其他方法如判别分析进行处理归类。另外,在聚类分析方法既定的情况下,同一组样本采用不同的指标组合进行聚类分析,通常也会得到不同的分类结果。产生不同结果的原因主要是由于不同的指标组合测度是样本间的不同侧面的相似程度,在进行聚类分析时存在指标组合选择的问题。一般是根据聚类的实际需要进行指标的选择,这是一个比较复杂并且带有主观性的问题。实践中,在开始进行聚类分析时,通常是先选择多种指标组合分别进行聚类,然后对聚类分析的结果进行对比分析,以确定出合适的测度指标。

判别分析产生于20世纪30年代,是利用已知类别的样本建立判别模型,为未知类别的样本判别的一种统计方法。近年来,判别分析在自然科学、社会学及经济管理学科中都有广泛的应用。判别分析的特点是根据已掌握的、历史上每个类别的若干样本的数据信息,总结出客观事物分类的规律性,建立判别公式和判别准则。当遇到新的样本点时,只要根据总结出来的判别公式和判别准则,就能判别该样本点所属的类别。判别分析按照判别的组数来区分,可以分为两组判别分析和多组判别分析。本文仅研究两组判别分析。在众多的判别分析方法中,最直观的是距离判别法。

距离判别的思想是计算待判样本到第i类总体的平均数的距离。哪个距离最小就将它判归到哪个总体。所以,距离判别法的任务就是构造一个恰当的距离函数,通过样本与某类别之间距离的大小判别其所属类别。这里仅讨论两个总体的距离判别法。距离判别只要求知道总体的数字特征,不涉及总体的分布函数。当参数未知和协方差时,就用样本的均值和协方差矩阵来估计。

从距离判别法可以看到判别规则是一个线性函数。由于线性判别函数使用简便,希望能在更一般的情况下建立一种线性判别函数。Fisher判别法由Fisher在1936年提出,是根据方差分析的思想建立起来的一种能较好区分各个总体的线性判别法。该判别方法对总体的分布不作任何要求。

从两个总体中抽取具有p个指标的样本观测数据,借助于方差分析的思想构造一个线性判别函数:

距离判别法是基于距离计算的,用构造线性判别函数方法进行样本判别的Fisher判别法也存在着类似基于距离计算的聚类分析方法当中的不足:

a)将总体和样本的多个指标赋予了同等的判别能力,而这与现实是不相符合的,即不同的指标在判别样本的归属时具有不同的判别能力。

b)没有对用于建立判别分析模型的总体指标进行筛选。这在两总体的某指标没有显著差异时进行判别分析的意义不大,误判的概率很大[3,4]。

c)距离的计算不可避免地会带来量纲上的问题[5]。

d)距离判别方法简单实用,但没有考虑到每个总体出现的机会大小,即先验概率,没有考虑到错判的损失。Bayes判别法正是为了解决这两个问题提出的判别分析方法,其判别效果更加理想,应用也更广泛。本文将在实证研究部分用Bayes 判别方法对涉及的问题进行分析,作为与新算法计算效果的一个对比。

在回归分析中,变量的好坏直接影响回归的效果。在判别分析中也有类似的问题。用于建立判别准则的指标的选择是判别分析中的一个重要问题。如果在某个判别问题中,将最重要的指标忽略了,相应的判别函数的效果一定不好;另一方面,如果引入了一些判别能力不强的指标,不仅会增加计算量,还会严重地影响判别的效果。但是在许多问题中,事先并不知道哪些是主要指标。因此筛选变量的问题就非常重要,从而产生了逐步判别法。逐步判别法与逐步回归法的基本思想类似,都是采用有进有出的算法,即逐步引入变量,每引入一个重要的变量进入判别式,同时也考虑较早引入判别式的某些变量。如果其判别能力随新引入的变量而变为不显著了(如其作用被后引入的某几个变量的组合所代替),应及时从判别式中把它剔除,直到判别式中没有不重要的变量需要剔除,而剩下的变量也没有重要的变量可以引入的判别式时,逐步筛选结束。这个筛选过程实质就是作假设检验。通过检验找出显著性变量,剔除不显著的变量,得到用于建立判别式的变量组合后,可用各种方法建立判别函数和判别准则。

实际上,以上提到的不论是距离判别法、Fisher判别法,还是Bayes判别法、逐步判别法,其出发点都是把给定的分组作为构造判别函数的依据和出发点,其最终结果都是构造一个线性判别函数。它们仅仅是判别函数构造思想上的差异。距离判别法基于距离判别思想;Fisher 判别法基于方差分析思想,判别式的形式为距离判别式的一般形式;Bayes判别法基于条件概率思想;逐步判别法基于假设检验思想确定用于判别的指标,但其判别式的确定仍由其他判别分析方法确定。

以上各种判别分析方法中,仅有逐步判别法的基本思想中考虑到了不同指标具有不同的判定能力,但是其思想的具体体现仅在于确定用于构建判别式的指标,并没有给出各个指标具体的判别能力大小的差异。实际上不仅不同指标的判别能力存在差异,而且在筛选掉部分指标的同时也会丢失该部分指标所包含的判别信息。

对于一组给定的样本,对其进行聚类分析时,可以应用不同的聚类方法对不同的指标组合进行聚类分析,同时也将得到多组不同的聚类结果。对于某些指标组合下的聚类结果,结合实际可能会得到比较符合实际意义的解释,对此类聚类结果可以为其构造特定的判别模型,用于新样本类别的判别。因此,聚类分析的实质是对不同的指标组合下的样本分类组合的可能性进行搜索,找出符合特定聚类定义的组合。其作用是寻找满足特定需求的,或者说可以给出较好解释的聚类结果。判别分析的实质是根据历史信息或者聚类的结果建立判别标准,用于对参加聚类的样本和新的样本的判别。聚类分析和判别分析之间存在着紧密的联系。聚类分析的结果作为进行判别分析的基础;而判别分析不仅可以用于对新样本进行判别,而且另一个重要的作用在于校验聚类分析结果的正确性,即回判。

基于以上的分析结论,传统的对数据的聚类判别分析流程一般是先有聚类分析,然后在其之上的判别分析。本文将借鉴经典聚类分析和判别分析中的部分思想,从聚类分析和判别分析的实质出发,逐步构建出一类有异于传统分析思路的样本聚类判别分析算法,并尝试在新算法中解决经典聚类判别分析方法中存在的部分问题。

1动态聚类判别分析算法的设计和实现

1.1新的聚类判别分析框架

对于一组给定的需要进行聚类分析和判别分析的样本集合,新的聚类判别分析框架基于以下基本事实:

a)对于给定的样本序列,有有限种分组方案。

b)用传统聚类分析方法得出的结果并不总能遍历以上所有的分组可能。不仅因为其中部分分组在任何指标组合下都不合理,还因为传统聚类分析方法得出的结果本身就有限。在指定指标组合、指定样本排列顺序的情况下一种聚类方法仅能给出一个聚类结果。

c)对于用聚类方法得不出的分组方案,存在部分用判别分析进行判别回判率为百分之百的分组方案。

d)对于既定的分组,不同指标在区分该分组的能力上存在差异。不同组的某些指标差异明显,有些并没有明显差异。

新的聚类判别分析框架的设计基于以下基本假设:对于任意一种分组方案,如果判别分析的回判正确率足够高,那分组就是合理的和可以接受的。因此,新的聚类判别分析框架设计的基本思想是聚类分析建立在判别分析的基础之上。据此设计的新算法中并不包括具体的聚类分析算法,仅仅包括判别分析算法。

本文中应用的判别分析算法基于文献[6]提出的基于样本指标值频度计算的判别分析算法。该两总体判别分析算法的思想与逐步判别法的思想有一定的相似之处。不同之处在于其核心思想不是筛选变量,而是筛选指标值,是逐步筛选出具有显著判别能力的指标值;不是根据用具有显著判别能力的变量建立判别式,而是用筛选出的具有显著判别能力的指标值建立判别模型;其判别模型不是线性判别式,而是一个复杂的判定模型系统;得出的结果不是某样本的判定结果,而是某样本属于某总体的概率。该算法筛选指标值的基本思想为:对于同一指标而言,假设两组中所有样本的该指标值为一维空间上的点。如果两组内距离最近的两点距离小于或者等于这两点中任意一点到该点所在组的其他任意一点的距离,则这两点根本就不具有判别能力,应该剔除。为提高该算法的计算速度,进行了如下两点优化,在程序实际运行中取得了良好效果:

a)对某指标进行计算时应用冒泡算法对所有指标值进行排序。该数据预处理大大提高了指标值的筛选速度。

b)因为对样本的判别问题是通过计算该样本的各个指标值上的判别概率得到的,从对数据库表的访问效率出发,进行判别分析时不是依次对每一个样本进行判别,而是按照指标的顺序依次计算所有样本的某指标值在该指标下的判别概率,并且若某指标的权重为零时不需要计算任何样本在该指标下的判别概率,最后对每一个样本进行判别。

本文依据以上提出的聚类判别分析框架,以改进的两总体判别分析算法为基础,提出了一种动态的聚类判别分析算法的设计,并在实现算法的基础上进行了相应的实证研究。

1.2两总体动态聚类分析算法的设计和实现

两总体动态聚类分析算法的设计基于两总体判别分析算法。其基本思想在于从某初始判别状态出发,不断修正判别分析中错判的样本分组,直到所有样本已经判别,并且回判率为100%或出现错判循环为止。

根据样本初始判别状态的情况,这里把动态聚类分为有指导的动态聚类过程和无指导的动态聚类过程。有指导的动态聚类过程是指在进行聚类分析之前根据实际经验对所有或者部分样本进行组别的指派,这有助于加快动态聚类的过程,并产生期望的聚类结果;无指导的动态聚类过程是指在进行聚类分析之前不进行任何初始判别状态的设置。其中有指导的动态聚类与无指导的动态聚类的区别在于,无指导的动态聚类可能导致聚类过程中判别次数的增加,这在进行大样本聚类时,时间开销将成倍增加;另一个可能产生的结果是无指导的聚类过程会产生与预期不同的分类结果,即聚类的可能结果更多,可用于试探性分析。一般有指导的聚类分析过程可以很快得出与预期相符合的聚类结果。

从另一个角度对动态聚类过程可以作如下分类:可以在初始聚类之前一次全部指定所有样本的判别状态,之后不断修正样本的判别状态直到判别结束,也可以逐步添加参加判别分析的样本个数。实证分析的结果表明,第一种动态聚类方法的聚类过程不稳定,有时会产生抖动现象,即某次的很多错判样本在修改组别后进行下一次判别后仍然为错判样本,如此不断反复,甚至出现循环。出现这种现象的原因可以解释为当错判样本较大时,即使改变了错判样本的组别,因为错判样本个数相对较大,错判的样本对新的判别模型仍然会产生很大的影响。另外因为分组本身存在的模糊性,某些样本本身属于两总体的概率就比较接近,也有可能导致该类现象的发生。

一个解决方案是为所有错判的样本,选择错判概率最大的样本改变组别,但这不能从根本上解决抖动现象的发生。用第二种动态聚类算法可以很好地解决此类问题,因为第二类逐步聚类分析方法中,每次判别分析都将错判样本的个数控制在相对较小的范围内,每次增加一个新的样本进入判别模型。图1给出第二种动态聚类过程的算法流程。

在动态聚类的算法流程设计中,所有样本没有判别之前,某次判别过程后,需要平衡不同组别的样本个数,使不同组别的样本个数差不大于1;在所有样本组别判别之后实行不平衡样本个数的判别过程。实际上也可以进行不平衡样本个数的动态聚类。这样得到的结果有可能与经典的聚类分析算法有很大的差异,但聚类结果仍然可以得到很好的解释。

两总体的判别分析算法以及相应的动态聚类分析算法已经应用在基于ODBC和ADO标准的数据库访问技术、SQL Server 2000数据库、Visual Basic 6.0编程工具,参考相关技术资料[1,2,7]实现。以下分别给出不平衡样本个数的无指导动态聚类、平衡样本个数的无指导动态聚类以及平衡样本个数的有指导动态聚类的算例及其分析。

2关于该算法的实证研究

以下实证分析所用的原始数据以及用经典判别分析方法得到的结果均来自文献[3]。

2.1不平衡样本个数的无指导动态聚类

不平衡样本个数的无指导动态聚类更符合实际,但数据量少时,可能得到的结果不具有统计学意义。

对人文发展指数案例中14个样本的原始数据进行不平衡样本个数的无指导动态聚类过程得到的结果,与经典判别分析结果的分组完全相同。聚类结果如表1、2所示。在该聚类结果中,指标成人识字率(%)的权重仅为0.142 857。这与用逐步判别法进行判别分析时得出的判别式的结论比较一致。

另外还给出两种可能的聚类结果,分别如表3、4和表5、6所示。其中第二种聚类结果中出生时的预期寿命成为最重要的指标,分组的结果使得出生时的预期寿命相似的样本成为一组;同时使同组内样本在成人识字率以及调整后的人均GDP这两个指标上没有明显的差异。第三种聚类结果中调整后的人均GDP成为最重要的指标,分组的结果使得调整后的人均GDP相似的样本成为一组;同时使同组内样本在出生时的预期寿命以及成人识字率这两个指标上没有明显的差异。实际上已经有不少学者对联合国开发计划署人文发展指数的确定方法表示了怀疑。因为该指数本身的确定方法,包括所选的指标以及指标值的调整等都不存在令人信服的理由[8,9]。本文给出的这两种聚类分析的结果可以从其他角度给出人文发展指数的可能更合理的确定方法,即把所有参加评价的国家纳入聚类分析的范围进行探索性的分析,并选择可以接受的聚类结果。

不平衡样本个数的无指导动态聚类算法当然可以作为一个数据挖掘算法用于挖掘离群点。但是有时候这并不符合聚类的初衷。因为聚类的结果并不能通过显著性检验,无统计学意义。

2.2平衡样本个数的无指导动态聚类

平衡样本个数的无指导动态聚类是指在所有样本没有全部被判别完之前,在每次判别之前对组别的样本个数进行判别。与不平衡样本个数的无指导动态聚类相比,不容易出现分组个数严重不平衡的情况,但并不能避免这种情况的发生。下面以人文发展指数案例的聚类分析中给出的第二种聚类结果说明这种情况。

第二种聚类结果如表7、8所示。在第二种聚类结果中,成人识字率成为判别能力最显著的指标。其中,阿联酋、南非和中国三个成人识字率最低的国家成为一组;其他11个国家成为另一组。各组内其他两个指标的差异不显著。因此该分组方案中识别的是所有样本在识字率指标上的差异。

2.3平衡样本个数的有指导动态聚类

将人文发展指数案例中的待判样本加入聚类样本中,并且把待判样本以外的其他样本的组别作为动态聚类的起点,得到的聚类结果如表9、10所示。聚类结果与经典判别分析结果一致,并且指标权重的计算结果表明实际人均GDP指标具有显著的判别能力,成人识字率判别能力不显著。

3结束语

本文在分析经典聚类分析和判别分析方法实质的基础上,给出了一种新的聚类判别分析框架,并利用改进的两总体判别分析算法依据此分析框架构造并实现了一种动态聚类判别分析算法。实证结果表明逐步动态聚类算法具有相对较好的稳定性;无指导动态聚类算法很适合寻找样本中的奇异点,适合作为一种数据挖掘算法使用;有指导的动态聚类更适合于经典聚类算法的聚类问题。

参考文献:

[1]沈毅,陈峰.六种常见的条件系统聚类法比较[J].中国卫生统计,2004,21(6):338-340.

[2]WALTER D F.On grouping for maximum homogeneity[J].American Statistical Association Journal,1959,53(12):789-798.

[3]于秀林,任雪松.多元统计分析[M].北京:中国统计出版社,1999:61-153.

[4]何晓群.现代统计分析方法与应用[M].北京:中国人民大学出版社,1998:255.

[5]朱孔来.评价指标的非线性无量纲模糊处理方法[J].系统工程,1996,14(11):58-62.

[6]魏世振,杨磊,陈传明.上市公司财务状况判别分析算法的实证研究[J].系统工程,2005,23(1):108-110.

[7]张尧庭,方开泰.多元统计分析引论[M].北京:科学出版社,1982.

[8]保罗·斯特里滕.关于人文发展指数的争论[J].国际社会科学杂志:中文版,1996(1):31-44.

[9]金玉国.新HDI评介[J].山西统计,1995(5):44-45.

[10]陈峰.带约束的聚类分析[J].数理医药学杂志,1999,12(20):112-113.

[11]蔡红艳,韩立岩.上市公司财务状况判定模型研究[J].审计研究,2003(1):62-64.

[12]徐成志,陈少军.ODBC 配置数据库应用程序[J].山东农业大学学报:自然科学版,2003,34(2):238-241.

[13]贺智明,李雯.采用动态数据库连接技术开发多课程通用考试信息系统[J].计算机应用与软件,2003,20(4):16-17,77.

[14]赵宇峰,张烨,黑新宏,等.VB 6 访问数据库技术的应用[J].计算机应用研究,2004,21(8):223-224.

[15]谷震离.ADO访问SQL Server数据库技术分析及其应用[J].计算机应用与软件,2004,21(12):32-33,77.

[16]BRADLEY J C,MILLSPAUGH A C.Visual Basic 6.0 高级编程[M].常晓波,刘颖,等译.北京:清华大学出版社,2003.

[17]ALTMAN E. Financial ratios,discriminant analysis and the prediction of corporate bankruptcy[J].Journal of Finance,1968,23(9):589-609.

[18]吴德胜,梁樑,殷尹.不同模型在财务预警实证中的比较研究[J].管理工程学报,2004,18(2):105-108.

[19]刘洪,何光军.基于人工神经网络方法的上市公司经营失败预警研究[J].会计研究,2004(2):42-46.

[20]乔韦华韦华,牛芳.上市公司财务困境预测的Fisher 判别分析模型[J].统计与信息论坛,2003,18(2):69-71.

[21]ZMIJEWSKI M E. Methodological issues related to the estimation of financial distress prediction models[J].Studies on Current Econometric Issues in Accounting Research,1984,22(9):5982.

[22]GRICE J S,INGRAM R W.Tests of the generalizability of Altman’s bankruptcy model[J].Journal of Business Research,2001,54(1):53-61.

[23]郭亚军.综合评价理论与方法[M].北京:科学出版社,2002.

[24]杨淑娥,徐伟刚.上市公司财务预警模型——Y分数模型的实证研究[J].中国软科学,2003(1):56-60.

[25]MUTAPI F, MDULUZA T, RODDAM A W. Cluster analysis of schistosomespecific antibody responses artitions the population into distinct epidemiological groups[J].Immunology Letters,2005,96(2):231-240.

[26]YUAN H,PARRILL A. Cluster analysis and threedimensional QSAR studies of HIV1 integrase inhibitors[J].Journal of Molecular Graphics and Modelling,2005,23(4):317-328.

[27]Ter BRAAK C J F,HERBERT H, WIES A, et al. Bayesian modelbased cluster analysis for predicting macrofaunal communities[J].Ecological Modelling,2003,160(3):235-248.

[28]LIANG G S, CHOU T U, HAN T C. Cluster analysis based on fuzzy equivalence relation[J].European Journal of Operational Research,2005,166(1):160-171.

[29]ALEXY U,VERENA S P, WOLFGANG S H, et al. Cluster analysis of inpiduals with similar trends of fat intake during childhood and adolescence: a new approach to analyzing dietary data[J].Nutrition Research,2005,25(3):251-260.

[30]PECE A E C. Generativemodelbased tracking by cluster analysis of image differences[J].Robotics and Autonomous Systems,2002, 39 (3):181-194.

动态分析基本方法篇4

【关键词】动态成本控制;技改项目;成本差异分析;财务评价

一、技改项目与新建项目的区别

PMI将项目定义为:为了提供某种特定的产业与服务而进行的临时性的努力与试验。其中“临时性”是指每个项目是有其阶段性的,它们都具有固定的开始以及结束的时间。而“特定的产业与服务”是指其独立并且区别于其他一般的项目。因此,企业的技改工程项目是企业为了提高其产能,减低能耗,通过可行性分析以及自身的定位,为获得特定的产业与服务而展开的临时性的尝试。

企业的技改项目除了具有与一般的新建项目所具有的共性之外,具有不同于一般新建项目的独特性,例如费用上的节约,建设期的缩短,手续上的减少,在一定时期内能够尽快达到效益以及投资目标。

二、将动态成本控制方法与技改项目的独特性相结合

基于1955年由经济学家筱原三代平提出的“动态比较成本说”中可以得到动态成本区别于历史成本,严格上来说,动态成本应该定义为一种即刻可以进行重置的成本,也就是随着市场环境的变化而动态变化的,按当前市场的材料实际价格与当前的工费成本核定的非静态不变的成本。而技改项目作为一种需要通过投资而得到收益的临时性活动,需要企业采用更为科学的评价评估方法进行全方位决策,特别是贯通于技术改造项目的全寿命周期中的连贯性控制,而对于成本进行动态控制是全寿命周期项目管理需要应用的重要方式,也是全寿命周期项目进行整体优化的核心内容。动态成本控制流程能够大致地反映各个项目的动态成本控制的情况,其包括:

1.目的。指导技改项目工程开发成本控制,明确技改醒目成本控制目标,建立成本控制预警机制,降低成本经营风险。

2.术语与定义。动态成本:指项目在实施过程中体现的预期成本的结果。

3.职责。明确成本管理总部、技术管理总部、招标采购总部、各总监的成本控制职责。

4.工作流程。首先进行技改项目工程目标成本的制定,然后再对全寿命周期的技改项目工程成本进行动态成本控制,最后再进行项目工程目标成本调整。

三、成本差异模型的基本思想

成本差异是在实际成本与标准成本进行对比的过程中产生的,而成本差异分析是将实际成本与预先确定的标准成本进行比较,接着对于两者是否存在差异进行分析,机动地通过成本差异分析寻找出实际成本与标准成本产生差异的直接原因并及时进行改正,对于成本的差异进行分析,能够为成本改善和控制指明方向,有效地降低企业生产运行成本,提高企业在本行业内的核心竞争力。

系统的成本差异计算与分析包含了以下四个步骤:

1.制定标准成本。标准成本是根据企业的标准耗费和标准价格制定的。

2.及时收集施工企业的实际成本信息,例如月季度成本报表、周成本报表等。分析比较标准成本与实际成本产生差异的具体数额,得出直接成本差异值。

3.由此基础而对导致差异的成本因素进行差异分析调

查,找出产生差异的根本原因。

4.明确差异产生的责任,采取行之有效的措施,对成本差异进行改正。下图所示为成本差异分析的具体过程:

四、基于贝叶斯网络和动态规划在成本差异模型中的运用

针对技改工程项目成本差异分析,由于其目前的分析方法简单,需要考虑的因素较少,一般设定在技改项目全寿命周期中很多影响因素是固定数值,其是稳定不变的;并将其当作一个静态的过程,其变量因素之间是独立、互相没有影响的,没有涉及其中的互相影响及反馈作用。

通过分析以后沿用系统动力学方法,可以对技改项目全寿命周期的政府安全、环保许可,土地规划,设计审核,工程配套,设备采购,合同谈判,施工管理,开车等一系列,以全局的系统视野对技改项目进行研究调查和分析比较,基于贝叶斯网络和动态规划以建立技改项目处理项目成本差异模型。

贝叶斯网络:贝叶斯网络是基于后验概率贝叶斯定理而形成的,其以数理统计的方式处理已知数据为基础的方法。贝叶斯网络将不确定的事件连接起来,用以预估与其他影响关联的事件,其在这样的过程中,充分发挥了贝叶斯网络的分类、聚类、预测和因果关联关系分析的功能,为决策者带来指导意见,并且通俗易懂,在预测功能中得到广泛运用,但是贝叶斯网络也具有其一定的弱点例如在预测频率很低的概率事件中所起的作用不够理想。

贝叶斯预测运行如图所示:

动态规划:一般情况下将动态规划的基本原理归于一个常态的递推的关系表达式,将其用于描述多个阶段的决策过程的状态转移。经常使用的方法为逆序法或者顺序求法来解决这类问题,也就是以最终状态为出发点,由后向前逐步推导到初始的状态,由此而得到一个最优的决策序列。

动态规划与其他的优化技术相比较可以发现其能够得到一个整体的多阶段的最优解。由于时间参数在决策过程中呈现为可连续或者离散特征,所以决策过程可据此分为可连续决策过程以及离散性决策过程。从另个方向来考虑,根据决策的演变过程是确定性的或者是随机性的可以具体划分为确定性决策过程和随机性决策过程。综合以上分析,决策过程模型分为离散确定性、离散随机性、连续确定性、连续随机性共四种不同的决策过程模型。

将成本差异控制方法运用于技术改造项目的动态成本控制的过程之中,其数据采集过程较其他方法来说更为繁琐,当n∞时决策人员进行成本控制时会发现由于数据处理却缺乏相应的计算机计算程序的模块,而使得这种决策的过程更为困难。但此种方法有其可取的地方,比如可以在特定的时间点为成本管理以及项目决策人员提供良好的宜于进行解决成本差异调查决策的量化模型和固定思维。

通过将成本差异动态控制模型与成本自身的独立特点以及项目管理人员的经验做法相结合,决策人可以高效地将该决策做到合理的范围。

参 考 文 献

[1]许珂.基于贝叶斯和动态规划的成本差异控制模型及应用研究

[D].天津:天津大学.2011

[2]金菊良,魏一鸣.复杂系统广义智能评价方法与应用[M].北京:科学出版社,2008

动态分析基本方法篇5

关键词:凝析气井;井筒动态;气液两相;压力梯度;井筒温度

中图分类号:P631 文献标识码:A

凝析气藏是一类具有较高经济价值的气藏,它的合理开发在天然气生产中将变得越来越重要。吉林油田凝析气藏具有储层埋藏深,温度、压力高,同时伴随着层段多、厚度大等特点,给气井安全开发工作增加难度。为了使产能得以合理有效的发挥,需要正确地预测气井温度、压力分布等井筒动态,有利于进行气井生产系统动态分析优化设计。

一、凝析气井井筒动态预测方法研究

1 井筒多相流压力梯度预测方法

(1)气液两相流流型研究

在气液流动中,两相间界面的形状是多种多样的,它与流量、相流体性质和系统的几何形状有关,而流动型态主要是用来描述这些参数的分布。一般情况下流动型态划分为三种形式:孤立流、间歇流和分散流。影响流型的因素很多,主要有以下几项:流体的物理性质和流量,流道的几何形状和内壁情况以及流动过程中的质量、热量传递等。

(2)气液两相流的产能方程

在满足凝析气藏在开采过程中温度保持不变,以及满足地层中流体发生相态变化时,产生凝析气、液两相渗流等假设条件,建立了凝析气液两相渗流的产能方程为:

(3)气井井筒压力剖面预测方法研究

1)基本方程及其求解

在气、气液两相管流的压降计算中,一般是以单相流体一维稳定管流压力梯度基本方程为基础。压力梯度方程为:

在上面的理论研究基础上,通过以上生产数据,利用凝析气井生产系统动态优化软件对A井的流温、流压进行预测,预测结果与实测结果相符,对比图如图1。

三、结论

根据理论研究和现场应用结果,本文得出了以下的结论:

1 凝析气井生产系统动态优化在油气田开采过程中具有重要意义,井筒动态预测方法研究是生产系统动态优化的重中之重,为方案规划、措施制定等提供了决策依据。

2 通过凝析气井筒动态预测分析,完善了新的凝析气井地层动态预测理论和方法。运用该方法进行了A井流温、流压预测,预测结果和实测结果相符,提高了凝析气井生产系统动态分析优化设计。

参考文献

[1]金忠臣,杨川东,张守良.采气工程[J].北京:石油工业出版社,2004,12.

[2]张琪.采油工程原理与设计[J].北京:石油大学出版社,2000.

[3]刘建仪,等.采气实用计算[J].北京:石油工业出版社,1994.

动态分析基本方法篇6

物理问答题大致可分为两大类型:一类是根据物理现象的规律及有关概念解答的问答题,另一类是根据定律、定义的数学表达式进行推理的计算形式的问答题。

对于第一类型的问答题,我的教学方法是:通过演示实验等直观的教学方法,引导学生分层次地透彻分析物理现象的规律及有关物理概念,总结解答问题的要点和层次,归纳出解答问题的基本形式。

例如,有关“惯性”的问答题教学:我先在课堂上演示课本中第66页的图3―6的惯性球实验,引导学生首先观察小球及木片原来处于何种运动状态,其次观察在金属弹片对木片施加力的作用的情况下,木片的运动状态如何变化,最后观察在此过程中,小球的运动状态是否发生变化,并归纳总结出实验结论:小球和木片原来处于静止状态,在金属弹片施加的力的作用下,木片由静止变为运动,小球由于惯性,仍然保持原来的静止状态。

接着我演示了课本第66页的图3―7的实验,由学生分析讨论:当运动小车遇到障碍物,由运动变为静止时,小车上的木块会向前倾倒的原因,并归纳总结出“惯性”问题解答的基本格式和方法:

1.先分析物体原来所处的运动状态。

2.再分析在力的作用下,哪部分物体运动状态发生改变。

3.哪部分物体由于惯性,保持原来的运动状态。

根据以上解答,学生就可以准确解答此类问答题,如课本第67页第(3)题的答案为:

用铲子送煤,煤和铲子都处于向前运动的状态,当铲子在力的作用下由运动变成静止时,煤由于惯性继续保持向前运动的状态,就顺着铲子原来的运动方向进入灶内。

对于第二类问答题我的教学方法是:通过与计算题解题的分析方法和基本格式对比,引导学生掌握这种类型问答题的解题基本方法和格式。

以课本中第90页练第(1)题为例进行分析教学的方式如下:

例:体积相等的铁块和铜块,哪一个质量大?哪一个重?

(A)首先引导学生认真阅读题目,分析“体积相等的铁块和铜块”这句话共给几个已知条件。(a.铁块和铜块体积相等。b.铁的密度小于铜的密度。)

(B)引导学生与计算题的解题方法进行对比,分析在已知体积和密度的条件下,应如何求物体的质量和重力的大小?解题过程需要哪些解题根据?

(C)引导学生采用计算题的解题方法,将已知条件引入公式中进行推算,求得正确结论。

(D)在教师的指导下,由学生自己写出此例题的完整答案:因为铁块和铜块体积相等,铁的密度小于铜的密度,根据密度公式p=m/V可得m=pV,则铜块的先是较大。根据G=mg可知铜块较重。

通过例题分析、练习及课外作业的训练,学生能在较短的时间内掌握这类型问答题的解题基本方法:

1.认真阅读题目,分析题目中通过方字和插图所给的已知条件。

2.依照题目所给已知条件,寻找解题根据。

3.将已知条件引入解题根据中,得出正确的结论。

在此基础上,教师将问答题改为填空题、改错题,让学生做必要的解题训练,学生就能掌握这类型问答题解题基本格式:条件、根据、要求。

动态分析基本方法篇7

Abstract: As a basis for a lot of static code analysis methods to control flow graph, this paper adopts a adding context analysis technique based on k-CFA constraints and uses the fixed point algorithm to calculate the minimum set of constraints and generates a control flow graph. This method is better than 0-CFA, adding constraint stream data analysis, which is more accurate reduction unreachable branches, generating less redundant control flow graph. The control flow graph generated in this article as the basis of the static code analysis methods to improve the efficiency of static code analysis can be improved to reduce the rate of false positives.

关键词: 静态分析;基于约束的分析;控制流分析;不动点算法

Key words: static analysis;constraint-based analysis;control flow analysis;Worklist

中图分类号:TP311 文献标识码:A 文章编号:1006-4311(2014)29-0217-04

0 引言

静态分析在对程序编译、优化以及软件质量保证等方面都起到了重要的作用,它已经成为一种越来越流行的提高代码质量的方法。控制流图是进行程序静态分析的基础,因此提供一套精确的控制流图,会提高静态分析的效率和质量。

作为生成控制流图的方法,控制流分析是一种识别和构建程序语句间逻辑调用关系的技术,其目的是判定程序块将会如何执行到另一些程序块。一种基于约束分析精简控制流图方法的研究[1]中介绍的加入数据流的基于约束的分析方法可以从语义上约减不可达分支,但对于过程间调用的问题上还缺乏有效的处理机制。本文在基于约束分析的基础之上,加入上下文的分析,在一定程度上解决了过程间调用的问题,从而生成更精确有效的控制流图。以此作为静态分析的输入可以提高静态代码分析的效率,减少误报。

1 研究背景

在一种基于约束分析精简控制流图方法的研究[1]中详细描述了基于约束分析的基本理论,包括格、偏序、不动点、控制流分析等理论,并介绍了两种精简控制流图的方法基于约束的分析和加入数据流的分析方法。这两种方法可以在一定程度上精简控制流图,但是还不够精确,因为它们无法解决过程间调用的问题。加入上下文的控制流分析主要解决过程间调用,主要思想是使用上下文来区分一些变量的动态实例和程序点,关注如何利用上下文在分析的过程中从多解中选择一个。本文的上下文分析将会使用调用图和控制流图并用的方法,在每个函数的调用点,记录函数调用之前的上下文信息和数据信息,调用过程中记录返回值变量可能的值的取值范围,获得更精确的解。

2 加入上下文的分析

基于约束的基本理论及求解方法,已经在一种基于约束分析精简控制流图方法的研究[1]中阐述,下面介绍加入上下文的分析方法。

Uniform k-CFA的主要思想是使用上下文来区分一些变量的动态实例和程序点,关注与如何建模上下文和如何利用上下文来在分析的过程中从多解中选择一个。其中,δ记录了一个动态调用点■,因此在此方法中的上下文最多有■长度的标签序列,而且这些标签序列会在一个函数应用被调用的时候被分析。

■ 上下文信息

因为上下文将会被用来区分多种变量的实例,所以需要一个上下文环境来记录在现在执行的变量实例相关上下文。

ce∈CEnv=VarΔ 上下文环境

上下文环境将会扮演一个类似于语义环境的角色,扩展抽象值来包含上下文环境:

■∈■=■(Term×CEnv) 抽象值

需要将抽象表达(fn x=>e和fun fx=>e)添加到记录中,本文也会在term的自由变元的定义点上记录上下文环境。

抽象环境■现在将会映射一个变量和上下文到一个抽象值:■∈■=(Var×Δ)■ 抽象环境

本文将使用一个上下文环境去查找与要研究的变量相关的上下文,然后与通过抽象环境的变量一起使用。这意味着间接地得到了在抽象值中的本地抽象环境的影响。

一致k-CFA分析(uniform k-CFA analysis)执行类似的抽闲缓存的分析的研究现在映射了一个标记和上下文到抽象值中:■∈■=(Lab×Δ)■ 抽象缓存

它给出本文所关注的上下文信息抽象值与一个标记有关系。构造了一个缓存,使得每一个可能有影响的上下文环境,本文也都记录了它给程序带来的影响。

3 使用加入上下文的基于约束的分析方法生成控制流图

3.1 分析步骤 本文所介绍的约束分析主要经过下面几个步骤:

①从AST中提取语义约束所必须的节点,并进行重构,使得到的精简的AST树没有冗余的节点。

②本文的控制流分析将会通过定义每个可能执行到的子表达式标记一个数字的方法,提供一种解决约束的解决方案。即在精简的AST树上按照需要的规则标记标识,为制定约束集合提供前提条件。

本文需要标记的节点都是与控制流图相关的,主要包括以下三种约束下的节点:1)第一类约束与函数的抽象label值有关,对于每一个函数(int x1=Compare2(max3,84))5有:Compare(max3,84)?哿■(2)。2)第二类约束是关于变量值和它们的标识的:如果一个变量x所标的Label是?,■(x)?哿■(?)在程序中每次出现的(x)?,都有■(x)?哿■(?)。3)关于函数功能的,每一个函数调用点和每一个可能调用它的函数,我们都有:在功能上,形参被实参约束;函数体的结果是调用的一个可能结果。

③制定有限的约束集合,针对分析中的侧重点不同,使用的算法也不同。0-CFA主要侧重对语义本身的分析,生成的控制流图是完整的控制流图。加入数据流的控制流分析可以根据数据流来约减一部分控制流图,去掉逻辑上不可达的分支,详情请见论文[1]。Uniform k-CFA加入上下文的控制流分析可以根据上下文调用关系来约减一部分控制流图,初步解决过程间调用的问题。

④使用图形形式化方法,使用有限的约束集合作为输入,输出就是最小解(Worklist算法)。最小解求出之后,就得到了每一个变量实际对应的集合,再根据图形形式化方法中对于边的定义,可以生成控制流图和调用图。

⑤根据最小解绘制控制流图。

3.2 加入上下文控制流约束集 本文的上下文分析将会使用调用图和控制流图并用的方法,在每个函数的调用点,记录函数调用之前的上下文信息和数据信息,调用过程中记录返回值变量可能的值的取值范围,获得更精确的解。

对于保存所有的常量节点Literal,进行如下的约束集构造:[Literal]■,■■■c? always

对于保存所有的变量节点:Name进行如下的约束集构造:[Name]■,■■■x? iff ■(x,ce(x))?哿■?■,δ

对于函数用x表示它的变量,e0表示函数体的话,可以有如下的约束集构造:

[fn]■,■■■(fnx=>e■)■ifffnx=>e■,ce■?哿■(?,δ)

where ce■=ce|FV(fnx=>e■)

对于if语句,加入上下文的约束构造集合如下:

[if]■,■■■if(Expression)■then(Statement)■else(Statement)■■

iff■,■■■(Expression)■∧

■,■■■(Statement)■∧■,■■■(Statement)■∧■(?1,δ)?哿■(?,δ)∧■(?2,δ)?哿■(?,δ)

对于函数之间的调用,假设t1和t2都是函数,那么把t1调用t2暂且表达为:t1t2,意义是t2的返回值是t1的参数,那么约束集构造为:

■,■■■t■■ t■■■

iff■,■■■t■■∧■,■■■t■■∧

(?坌(fn x=>t■■ce0)∈)■(?1,δ):

■,■■■t■■∧

■(?2,δ)?哿■(x,δ0)∧■(?0,δ0)?哿■(?,δ)

where δ0=[δ,?]k

and ce′0=ce0[x■δ0])∧

(?坌(fun fx=>t■■,ce0)∈)■(?1,δ):

■,■■■t■■∧

■(?2,δ)?哿■(x,δ0)∧■(?0,δ0)?哿■(?,δ)∧

(fun fx=>t■■,ce■∈■(f,δ0)

where δ0=[δ,?]k

and ce′0=ce0[f ■δ0,x■δ0])

其中,fun是递归函数,f为函数名,其它定义同fn。

3.3 求最小解 一种递归的计算集合的解的方法就是使用约束的图形形式化(Graph formulation of the constraints)。这种方法将会将把?∈Lab*和x∈Var*初始化为节点C(?)和r(?)(其中C(?)对应于上文所述的■(1),r(1)对应于上文所述的■(x))。对于每一个节点p,有一个数据领域D[p],被初始化为:

D[p]={t|({t}?哿p)∈C*〖e*〗}

为了更详细的描述,请看解决约束的算法。它的输入是约束集合C*〖e*〗,输出是解■,■∈■*×■*。它的主要操作都是基于下面的数据结构:

①一个工作表W,里面存储着一系列的节点,这些节点的边都需要遍历。

②一个数组D,每个节点都给出一个■*的元素。

③一条边E,每个节点都从一个可计算的前驱节点列表中给出约束列表。

节点集合由在■*的l中所有的C(1)和在Var*中所有的x的r(x)组成。这个算法的第一步是初始化数据结构。第二步建立一张图,并且执行初始化的程序片段到数据域。这一步的建立时使用了过程add(q,d):在D[q]中包含d,且如果d不是D[q]的一部分将q加入到工作表中。第三步是继续遍历直到工作表为空。第四步是用更熟悉的格式计算解。

解决约束的算法(Worklist算法)如下:

INPUT: C*〖e*〗

OUTPUT: ■,■

METHOD Step1: Initialisation

W :=nil;

for q in Nodes do D[q] :=?

for q in Nodes do E[q] :=nil;

Step2: Building the graph

for cc in C*〖e*〗do

case cc of

{t}?哿p:add(p,{t});

p1?哿p2:E[p1] :=cons(cc,E[p1]);

{t}?哿p?圯p1?哿p2:

E[p1] :=cons(cc,E[p1]);

E[p] :=cons(cc,E[p1]);

Step3:Iteration

while W≠nil do

q :=head(W);W :=tail(W);

for cc in E[q] do

case cc of

p1?哿p2:add(p2,D[p2]);

{t}?哿p?圯p1?哿p2:

if t∈D[p] then add(p2,D[p1]);

Step4:Recording the solution

for ? in Lab* do ■(?) :=D[C(?)];

for x in Lab* do ■(?) :=D[r(?)];

USING: procedure add (q,d) is

if (d?哿D[q])

then D[q] :=D[q]∪d;

W :=cons(q,W);

4 实验结果

4.1 被测程序 由于篇幅有限,本文的测试用例选择的代码比较短小,但是能说明问题。对于一个程序使用加入数据流的分析,加入上下文的分析可以使控制流图更加精确。

1.public boolean test(){

2. boolean result = false;

3. int a = 10;

4. int b = 5;

5. int max = 0;

6. if(a>b){

7. max = a;

8. int cmpRst=Compare(max, 8);

9. if(cmpRst>0) {

10. result = true; }

11. else { result = false; }}

12. else{ max=b; }

13.return result;

14.}

15.public int Compare(int a, int b){

16. int result = 0;

17. if(a > b) result = 1;

18. else result=-1;

19. return result;

20.}

4.2 加入上下文的控制流图的分析结果 针对测试程序,加入上下文的分析结果如图1。

分析测试程序可知,对于子程序Compare,如果没有加入上下文的分析,那么子程序中的两个分支是需要都体现在控制流图中的,默认的是两个分支都可达。但是此程序使用加入上下文分析后,可以准确的判断其中的一条分支是不可达的。同时对于主程序test,经过加入上下文的分析后,可知被测文件的13行else分支也是不可达的。

4.3 加入数据流和上下文的分析结果 如果同时构造加入数据流和上下文的约束集,可以得到如图2的结果。

由图可见,当加入了数据流和上下文的约束集之后,分析变得更精确。

5 结论

近年来,静态分析作为软件质量保障的手段之一越来越被重视。静态分析中的很多技术都以控制流图作为基础(例如:可利用表达式分析,忙表达式分析,到达定义分析,活性变量分析,常量传播分析,形态分析),所以提供一套精确的控制流图对提高静态分析的效率可以起到一定的作用。本文介绍的Uniform k-CFA分析,可以记录上下文相关变量环境,在一定程度上解决了过程间调用的问题。比起0-CFA分析和加入数据流的分析,加入上下文的分析可以进一步对控制流图进行精简。从实验结果中可以看到,同时使用Uniform k-CFA和加入数据流的分析可以比较精确的对控制流图进行精减,提高静态代码分析的效率,降低误报率。

参考文献:

[1]李金诺.一种基于约束分析精简控制流图方法的研究[J].计算机与现代化,2013(10):55-61.

[2]郁莲.软件测试方法与实践[M].北京:清华大学出版社,2008:6-9.

[3]潘古兵,周彦晖.基于静态分析和动态监测的XSS漏洞发现[J].计算机科学,2012(6A):51-53.

[4]Brian Chess,Jacob West等著.安全编程:代码静态分析[M].董启雄,韩平,程永敬等译.北京:机械工业出版社,2008:12-28.

[5]C. Bodei, P.Degano, F.Nielson, and H.R.Nielson. Control flow analysis for the -calculus. Lecture Notes: Computer Science 1466. 1998:84-98.

[6]C. Bodei, P.Degano, F.Nielson, and H.R.Nielson. Static analysis of processes for no read-up and no write-down. Lecture Notes in Computer Science 1578. 1999:120-134.

[7]Brian Chess, Jacob West. Secure Programming with Static Analysis. Boston: Pearson Education. 2007.

动态分析基本方法篇8

[关键词]Matlab矩阵状态变量分析法

[中图分类号]U1[文献标识码]A[文章编号]1007-9416(2010)03-0077-02

1 引言

Matlab最基本的功能是进行矩阵运算。电路理论中的基尔霍夫定律、支路电流法、网孔电流法以及节点电压法列写的方程组都可以以矩阵形式表示。另外,求解动态电路响应的问题是一个难点,状态变量分析法是提供了解决这一难题的一种很好的方法,其分析结果是一组一阶微分方程组,Matlab提供了微分方程组的数据值解。因而,可以应用Matlab求解电路习题。本文通过几个实例来说明 Matlab在电路解题中的应用。

2 Matlab简介

Matlab是一种以矩阵运算为基础,集数值运算、符号运算、数据可视化、仿真等多种功能于一体的科学计算软件。它适用于工程领域的分析设计与复杂计算。

由于Matlab具有其他计算语言无法比拟的优势,当前已成为美国等发达国家大学教学和科研中最常用的工具。已广泛应用于电路设计与仿真、信号处理、控制、机械等领域,是工程领域最为流行的软件之一。

3 Matlab在电路分析中的应用实例

3.1 Matlab基于基尔霍夫定律的应用

基尔霍夫定律是德国物理学家基尔霍夫在1845年提出的,是电路理论中最基本也是最重要的定律之一。它概括了电路中电流和电压分别遵循的基本规律。它包括基尔霍夫电流定律(KCL)和基尔霍夫电压定律(KVL)。KCL规定了电路中任一结点处电流必须服从的约束关系,而KVL则规定了电路中任一回路内电压必须服从的约束关系。下例是基于基尔霍夫定律的MATLAB矩阵运算在电路解题中的应用。例:求图1电路的电压U和电流I。

(1)建模

列3个回路电压方程:

整理方程组,将其变换成矩阵形式:

(2)matlab程序求解

clear,close all,clc

A=[-6 15 -1;6 -4 0;0 2 1]; B=[0 ; 10; -12];

X=A\B;

U=X(3);I=X(1);

disp('电压U(V):'), disp(U)

disp('电流I(A):'), disp(I)

(3)程序运行结果

电压U(V): -11.6923

电流I(A): 1.5641

3.2 Matlab在网孔电流法中的应用

网孔电流法是平面电路的分析方法,是以以假想存在的网孔电流作为电路的变量,利用基尔霍夫电压定律(KVL)列写网孔电压方程,进行网孔电流的求解,进而求出电路中各电流和电压的方法。网孔电流法分析步骤:(1)标出网孔电流的参考方向;(2)以各自的网孔电流方向为绕行方向,列KVL方程;(3)对列出的方程组进行求解。

网孔电流法列出的方程组可以以矩阵形式表示,Matlab具有强大的矩阵运算功能,为我们求解方程组提供了极大的方便,可以借助Matlab对方程组进行求解。该例是网孔电流法的Matlab求解应用。例:求图2电路的电压ux。

3.2.1建模

设各网孔电流如图,列网孔电流方程:

整理方程组,得:

将方程组变换成矩阵形式:

3.2.2matlab程序求解

clear,close all,clc

A=[1 0 0 0 0 0;0 8 0 -6 1 2;0 0 1 0 0 -2; 0 -6 0 7 -1 0;0 1 0 -1 0 0;0 0 0 -1 0 1];

B=[1; 4; 0; 0; 1; 0];

X=A\B;

Ux=X(6);

disp('电压Ux(V):'), disp(Ux)

3.2.3程序运行结果

电压Ux(V): 0.4000

3.3 Matlab在状态变量分析法的应用

一个电路的状态是指在某个给定时刻必须具备最少量的信息,这些信息与该时刻以后的激励,就能够完全确定以后任何时刻该电路的行为。状态变量是一组能够确定电路行为的最少变量。

电路中,能够反应电路储能多少的物理量就称为状态变量。动态电路中的储能元件只有电容和电感,其储能多少分别是通过电容电压和电感电流表示出来的,所以电容电压和电感电流就是状态变量。

状态变量分析法是求解动态电路响应问题的一种方法,是对电路建立状态方程后进而对电路进行分析的方法。用状态变量分析法分析动态电路主要有四个步骤:选择状态变量;列出状态方程;依初始条件求解状态方程;写输出方程并求解。

状态方程是一阶微分方程组,最适合用数值方法求解。特别是对于非线性电路和时变电路,其状态方程一般只能用数值方法求解。Matlab能够对一阶微分方程组进行数值方法求解。而Matlab提供强大的绘图,使得数学计算结果可以方便地实现了可视化。

举一例:如图3所示,已知R1=9Ω,R2=3Ω,C3=1.2F, C4=2F, L5=7H,输入激励为uS=8sin(t)v,画出iC3和uL5的响应输出波形。(设初始状态为0)

3.3.1建模

(1)写状态方程

在线性非时变电路中,由于求解电路响应所必需的初始条件可以由电容的初始电压和电感的初始电流完全确定,所以通常选取独立的电容电压uC和独立的电感电流iL作为状态变量。选择uC3、uC4、iL5作为状态变量,列方程,得:

用uC3、uC4、iL5和uS表示非状态变量iR1和iR2,得到:

代入方程组,有:

整理成标准形式的状态方程为:

(2)写输出方程

这里,要求C3上的电流和L5上的电压响应输出波形,故以iC3和uL5作为输出变量,有:

整理后可得标准形式的输出方程:

(3)matlab程序求解

%设x(1)=uC3, x(2)=uC4, x(3)=iL5

%编写函数,以fc.m为文件名存盘:

functionxdot=fc(t,x)

xdot=[-1/(1.2*3)*x(1)+1/(1.2*3)*x(2)+1/1.2*x(3);

1/(2*3)*x(1)-1/(2*3)*x(2); -1/7*x(1)-9/7*x(3)+8*sin(t)/7]

%主文件为main.m清单如下:

t_final=15; x0=[0;0;0];

[t,x]=ode45('fc',[0,t_final],x0);

subplot(2,1,1),plot(-1/3*x(:,1)+1/3*x(:,2)+x(:,3))

title('C3上的电流波形')

xlabel('t'), ylabel('i'), grid

subplot(2,1,2),plot(-1*x(:,1)-9*x(:,3)+8*sin(t))

title('L5上的电压波形')

xlabel('t'), ylabel('u'), grid

(4)程序运行结果(图4)

4 结语

以上举了几个Matlab在电路解题的应用实例。求解复杂电阻电路,列出的方程数多,如果单纯靠手工进行计算,既耗时又费力。Matlab的强大的矩阵运算功能,为我们求解方程组提供了极大的方便。另外,求解动态电路响应是一个难点,状态变量分析法是求解动态电路响应的一种很好的方法,状态变量分析法的分析结果是一组一阶微分方程组,Matlab为我们提供了微分方程组的数值解,Matlab强大的绘图,使得数学计算结果可以方便地实现了可视化,这是其它语言所不能比拟的。当然,Matlab的应用远远不止这些,还有待于我们进一步对它进行学习。

[参考文献]

[1] 蒲俊,吉家锋,伊良忠.MATLAB6.0数学手册[M].上海:浦东电子出版社,2002.

[2] 胡翔俊.电路分析[M].北京:高等教育出版社,2001.

[3] 蔡元宇,陈永祥,杨其允.电路及磁路[M].北京:高等教育出版社,2000.

[4] 陈怀琛,吴大正,高西全.MATLAB及在电子信息课程中的应用[M].北京:电子工业出版社,2002.

[5] 薛定宇,陈阳泉.高等应用数学问题的MATLAB求解[M].北京:清华大学出版社,2004.

上一篇:创新网络服务范文 下一篇:街区调研报告范文