- 1 -
基于遗传算法的资源约束型项目进度问题的优化
张扬
华东交通大学土木建筑学院,江西南昌(330013)
摘 要:本文针对基于仅有施工工艺逻辑关系的 CPM初始计划,提出了一种新的多资源约
束下施工计划优化的计算方法—遗传算法,针对资源受限项目特点,本文利用遗传算法的特
性,针对此问题设计了编码方式和解码规则、遗传算子、初始种群的产生方法进行了详细的
说明,并且利用 Patterson110标准案例对算法进行了测试,并且分析了算法参数对算法效果
的影响,并且取得了令人满意的结果。
关键词:工程调度;遗传算法;资源受限
中图分类号:C934 文献标识码:A
1. 问题的提出
自 20世纪 50年代诞生以来,关键线路法(CPM)作为最有效的工程项目计划的工具,在
建筑业得到了广泛的应用。在广泛应用的同时,关键线路法的缺陷也显现出来。传统的 CPM
理论假设,任一 CPM计划,资源的供给被认为是无限的,而在实际情况下资源是受到限制
的,这种问题就是我们所讨论的“资源有限,工期最短”问题,这是一种重要的资源优化问题。
即我们所说的资源受限项目调度问题 (Resource-Constrained Project Scheduling Problem,
RCPSP),要求在满足项目时序约束和资源约束的条件下,安排所有任务的开工日期和完工日
期,是项目的总工期最短。该问题在理论上属于 NP-hard问题,广泛应用于建筑业、制造业、
软件业等方面,因此研究 RCPSP问题有着重要的理论和现实意义 ]1[ 。基于该问题的普遍性、
实用性及复杂性,已有许多学者一直在研究 RCPSP,并取得一些成果。自 RCPSP被提出来
至今,人们提出了各种各样的优化方法来求解该问题。这些方法总体上可分为两大类:一类
是寻求最优解的精确解方法(Exact Algorithm),它包括分枝定界法、动态规划法和数学规划
中的 0-1 规划法等;另一类是寻求次优解的启发式(Heuristic)方法,包括传统的基于优先级
规则的方法和试图寻求全局最优解的现代优化方法,诸如禁忌搜索(Tabu Search)、模拟退火
(Simulated Annealing)和遗传算法(Genetic Algorithm) ]52[ − 等。
2. “资源受限-工期最短”问题的数学模型
经典 RCPSP 模型可描述为:单项目中共含有 J 个任务 j(j=1,2,...,J),每个任务只有一种
加工模式,设任务 j的工期为 P j。每个任务有两种约束,一是时序约束,即由于技术上的
要求,某些任务之间存在着紧前关系。若记 P j是任务 j的紧前任务集合,则对任一任务 i∈P j,
如果 i 还未结束,j 就不能开始进行。整个项目的紧前关系结构可用一个有向网络图表示,
图中节点代表任务,两个节点之间的弧线代表任务之间存在紧前关系。图中各任务顺序编号
应保证 P j中的任务编号小于 j的编号。任务 1是唯一最早开工的任务,任务 J是唯一最晚完
工的任务,均为虚任务(不消耗资源且工期为 0),分别代表整个项目的开始和结束。二是
资源约束,完成项目共需要 K种可再生的资源,第 k(k=1,2,...,K)种资源的总量为 R k,完成
任务 j 需要第 k 种资源量为 r kj,在项目完成前的任一时刻,正在加工的任务所利用的资源
总数不能超过资源总量。任务一旦开始不可中断。以上各个量均取整数值。
该问题的优化目标是在满足约束条件下对所有任务排序,确定各任务的开工时间和完工
- 2 -
时间,使项目总工期最短。此问题可建立如下概念性数学模型:
nfmin (1)
Subject to: jij dff ≥− , all Hji ∈),( (2)
k
s
ik br
t
≤∑ , Kk ,,2,1 KK= (3)
式中: n — 表示网络计划中最后一个活动;
jf —表示活动 j的完成时间, nj ,,2,1 KK= ;
H —表示相邻两活动逻辑关系的集合;
tS —表示在时刻 t正在进行的活动;
ikr —表示活动 i对第 k种资源的需求量;
kb —表示第 k种资源的总供给量;
K —表示资源总的种类。
式(1)是目标函数,表示最后一道活动的完成时间最早,也即项目工期最短;
式(2)是工艺逻辑关系(先后顺序)约束,即任何活动在其所有的紧前活动完成之前不能
开始;
式(3)是资源约束,即任意时刻所有进行中的活动对某种资源的需求量之和不能大于该资
源的供应量。式 3-3中的 tS 在得到最优解之前是不能确定的,此模型仅为概念性数学模型,
不能用来直求解。
3. 遗传算法原理
遗传算法(Genetic Algorithms,简称 GA)是完全不同与传统方法、模拟生命进化机制的
一种新的搜索和优化方法。七十年代中期,密执安大学的 John Holland和他的同事、学生提
出了这一算法,其目的是解释自然的自适应过程及设计一个体现自然界机理的软件系统。后
来这一算法被广泛应用于各种优化问题和机器学习、模式识别、人工智能等。它将计算机科
学与进化论思想有机结合起来,借助于生物进化机制与遗传学原理,根据优胜劣汰和适者生
存的原则,通过模拟自然界中生物群体由低级、简单到高级、复杂的生物进化过程,使所要
解决的问题从初始解逐渐逼近最优解或准最优解。作为一种新的全局优化搜索算法,遗传算
法因其简单易用,对很多优化问题能够较容易地解出令人满意的解,适用于并行分布处理等
特点而得到深入发展和广泛应用,己在科学研究和工程最优化领域中展现出独特魅力。遗传
算法的基本思想来源于 Darwin 进化论和 Mendel 遗传学说。Darwin 进化论认为每一物种在
不断发展的过程中都是越来越适应环境的。每个个体的特征被后代继承,但后代又不完全与
父体相同,其差异若适应环境,则被保留下来,否则将被淘汰。从物种整体的发展过程来看,
适应环境的物种个体特征被保留下来,适应环境的个体得以生存并繁衍,而不适应环境的个
体则渐渐被淘汰,这就是适者生存原理,也是遗传算法中对问题界的选择原则,即保存适应
值高的解,淘汰适应值低的解。Mendel的遗传学说则从微观角度—用基因来解释适者生存。
每个个体的特征是用一系列基因来控制的,每个基因有其特定的位置并控制个体的某个特
性,这样个体的适应值就可以“翻译”为一系列的基因代码,从而可以通过对基因代码的操作
来寻找适应值高的个体。这是遗传算法对问题解的处理方法—不是直接对问题解进行操作,
而是先将解“翻译”为代码,再对代码进行操作。生物进化的基本过程为:以初始的群体为起
- 3 -
点,经过竞争后,一部分群体被淘汰而无法再进入这个循环,而另一部分则成为新的群体。
优胜劣汰在这个过程中起着非常重要的作用。种群通过婚配的作用产生子代群体。进化的过
程中,可能会因为变异而产生新的个体。综合变异的作用,子代群体成长为新的群体而取代
旧的群体。在新的一个循环中新的群体将替代旧的群体而成为循环的开始,从而使生物群体
不断向前进化。
4. 遗传算法设计
4. 1编码
遗传算法主要通过遗传操作(交叉与变异)对种群中的个体施加结构重组处理,通过选择
操作不断优化群体中的个体结构,从而搜索到最优结构的个体,达到逼近问题的最优解的目
的。很明显遗传算法的过程就是它交替在编码空间和解空间中工作,它在编码空间对染色体
进行遗传运算,而在解空间对解进行评估和选择。它们之间的桥梁即是编码和解码。编码即
是将问题空间的解变量转换成遗传空间的染色体。相反,解码即是将染色体编码映射为问题
空间的操作。最初的遗传算法编码是二进制编码,但这种编码方法不能如实反应问题的真实
情况,兴建暗示出许多的不足。本文选用的是实数编码,这种编码方法能比较好的反应要解
决的实际问题,具有较高的搜索效率。
4. 2产生初始种群
初始化群体中的个体一般是随机产生的。在不具有问题解空间的先验知识的情况下,很
难判定最优解的数量及其在可行解空间中的分布情况。因此,我们往往希望在问题解空间中
均匀采样,随机生成一定数目的个体构成初始种群体。可以证明初始群体的位串译码到问题
空间之后,它也是均匀分布的。
用计算机表示 AON网络,而 AON网络在计算机内是通过关联矩阵 ]7[ 来实现的,它是
在生成活动调度的约束依据。项目的网络图如图所示,表示了一个有 7个活动的项目(其中
活动 1和 7是虚活动,代表项目的开始和结束活动接点),产生存储邻接矩阵如图所示。本
文是针对一个不完全的计划进行扩展,直至生成一个完全计划的过程。因此利用了串行调度
的思想来进行调度计划的生成。串行调度方案包含 n 个阶段 n(为项目的任务数量),对应每
个阶段 i有一个不完全计划 PS n和一个待调度任务 E n ,Pr(j)为可行活动中活动 j 的优先权系
数。在执行串行调度方案时先不考虑资源约束的影响。
0 1 1 0 0 0 0
0 0 0 1 1 0 0
0 0 0 0 0 1 0
0 0 0 0 0 0 1
0 0 0 0 0 1 0
0 0 0 0 0 0 1
0 0 0 0 0 0 0
1 2 3 4 5 6 7
1
2
3
4
5
6
7
紧 后 工 序
紧
前
工
序
图 1关联矩阵示例图
- 4 -
4. 3适应度函数
遗传算法进化过程中,染色体的好坏由适应度函数来评价,适应度函数值作为选择运算
的依据。遗传算法按照进化准则“优胜劣汰”,向着适应值增加的方向进行,所以目标函数的
寻优方向与适应度函数值增加的方向一致。为了理论分析的方便,最好保证适应度函数值非
负,若适应值为负须进行适当的转换。目标函数与适应度函数的关系依优化问题的类别而异。
最优化问题分为两大类,一类为求目标函数的全局最大值,另一类为求目标函数的全局最小
值.在遗传算法中规定适应度值必须为非负,在群体中,进化个体的适应度值越大,则其性
能越好。我们所要求的是项目的最短工期,利用前面的适应度函数可得到目标函数,即项目
工期。由于资源约束项目调度问题的目标是最小化项目工期,因此必须将原始目标函数转换
为适应度函数,以确保优秀个体具有大的适应度值。设 v k是当前种群的第 k个染色体,f(v k )
是该染色体的适应度值,T(v k )是该染色体所对应的目标函数值,即项目工期; T max是当前
种群中最差个体的目标函数值,即最大项目工期; T min是当前种群中最优个体的目标函数值,
即最小项目工期。目标函数转换为适应度函数的方法如下:
γ
γ
+−
+−=
minmax
kmax
k TT
)v(TT)v(f
其中 γ 是一正实数,其值限制在开区间(0,l)中。使用的 γ 目的为:①防止式子产生被零
除;②使选择行为从适应度比例选择调整到纯随机选择。当染色间适应度值的差距相对较大
时,为比例选择:当区别相对较小时,则选择趋于纯随机选择 ]8[ 。
4. 4算子设计
标准遗传算法的操作算子一般包括选择和复制、交叉、变异三种基本形式。它们构成了
遗传算法的核心,是模拟自然选择的遗传过程中发生的繁殖、杂交和突变现象的主要载体。
复制过程是在选择的基础上进行的。标准遗传算法中采用的选择方式为轮盘赌选择机
制。轮盘赌选择的思想是:根据个体适应值在该群体所有个体适应值的总和中所占的份额,
按比例确定个体的选择概率。个体的适应值越大,它在群体适应值总和中所占的份额就越大,
被选择的机会也就越大,在下一代中被复制的数目就越多,也正体现了“性能优良(适应值高)
的个体具有更强的竞争能力和更多的生存机会”的进化思想。
基因重组是结合来自父代交配种群中的信息产生新的个体,组合两个个体的特征组成一
个新个体。交叉是实现不同个体之间遗传信息交换的一种手段。常用的交叉方法有单点交叉
和多点交叉。在标准遗传算法中,交叉就是两交叉个体简单的交换某些对应位置的二进制字
串。例如,假设被选择进行交叉的两个父代个体分别为[011101001]和[101000110],随机生
成的交叉位置在第 3位,通过交换父代个体交叉点后的对应二进制字串来产生子代个体。该
过程可表示为:
图 2 交叉过程示意图
011 101001
101 000110
101 010001
011 000110
- 5 -
遗传算法中的变异是为模拟自然界生物的基因突变而提出的一种遗传操作。在标准遗传
算法中,变异是把二进制字串中的某一位码值取反(即 0变 1或 1变 0) 。例如,假设执行变
异操作的父代个体为[011101111],随机生成的变异位置在第 3位,则通过对父代个体变异点
处对应的二进制字串取反,来产生变异的子代个体。该过程可图示为:
图 3 变异过程示意图
遗传算法的计算流程图为:
开始
产生初
始种群
计算
适应度
最佳个体
变异
选择
交叉
是否满足
优化准则
结束
图 4 遗传算法流程图
5. 案例试验
为了便于描述,本文选取了一个案例,该案例是从 Patterson110案例里摘选出来的一个
案例,该案例具有 14个活动,该网络图的各项工作的活动持续时间,逻辑关系,以及资源
使用量如下表所示:
表 1 某项目工序施工时间、逻辑关系及资源需要量
活动
序号
持续
时间 后续活动
资源 1
需用量
资源 2
需用量
资源 3
需用量
1 0 2 3 4
2 6 9 10 0
3 4 5 6 7
4 3 8 11 0
5 1 10 0 0
6 6 12 0 0
7 2 8 11 0
8 1 13 0 0
9 4 14 0 0
10 3 12 0 0
11 2 12 0 0
12 3 13 0 0
13 5 14 0 0
14 0 0 0 0
01 |0| 101111 01 |1| 101111
- 6 -
图 5 进化过程
本文设定的遗传算法参数为种群规模数(population pop)为 100,遗传代数(generation)
为 100,交叉率(crossover)为 ,变异率(mutation)为 ,通过MATLAB语言编程来实现,
最终算出工期持续时间为 25天,与精确算法算出的工期一致,而用基于启发式算法的 Project
软件算出的在资源受限下的项目的工期为 29天,同样,基于MinTF 、MinD等的启发式算
法算出的工期不也不是最优解。可以从上图中看出适应度函数 fitness(v k )是收敛的并最终收
敛于 1,证明找到了最优解,从而证明了算法的有效性。
6. 结论
本文所设计的遗传算法在求解 RCPSP问题时时一种有效的算法,种群规模,遗传代数
对算法求解效果有一定影响,本文算例在种群规模、遗传代数分别取 50时没有找到最优解。
在遗传代数不变的情况下,随着种群规模扩大至 100后,算法的求解效果较好。本文的算例
与 Project软件的优化结果进行了比较,Project软件进行资源调配后的工期为 27天,所以相
比之下证明遗传算法应用于网络计划资源优化是有效的。本文队 Patterson110标准案例进行
了计算,将所有案例进行计算后发现,110个案例中有 104个找到了最优解。94%的案例能
够找到最优。相比之下 Project 启发式算法只有 82%的最优解保证率。实验结果说明了本文
提出的 GA算法的有效性。
参考文献
[1] 蒋根谋 . 多资源约束下包含资源使用顺序关系最优施工计划的确定 [J],铁道科学与工程学
报,2006,(2)3:56-62.
[2] 张连营, 骆刚, 鹿丽宁.遗传算法在工程项目资源优化中的应用[J].天津大学学报, 2001, (34)2: 188-192.
[3] 刘士新, 王梦光, 唐加福.一种求解资源受限工程调度问题的遗传算法[J].系统工程学报,2002,17(1):1-7.
[4] Hartmann competitive genetic algorithm for resource-constrained project scheduling [J].Naval Research
Logistics, 1998, 45: 733-750.
[5] 刘士新 , 王梦光 , 聂义勇 .多执行模式资源受限工程调度问题的优化算法 [J].系统工程学
报,2001,16(1):55-60.
[6] 张文修, 梁怡.遗传算法的数学基础.西安:西安交通大学出版社[M],.
[7] 赵道致, 廖华.遗传算法在项目进度计划中的应用研究[J],工业工程与管理,2004,9(6):54-57.
[8] 陈志勇, 工程网络计划中资源优化问题的研究[D].大连:大连理工大学, 2006.
- 7 -
Optimization of the Resource-constrained Project
Scheduling Problem based on the GA
ZHANG Yang
School of Civil and Architectural Engineering, East China Jiaotong University, Nanchang(330013)
Abstract
This paper has proposed a new method for solving the RCPSP(resource-constrained project
programming)problems, based on the initial network only with the technological precedence named
Genetic Algorithm(GA).For the RCPSP, the coding scheme and decoding rule, fitness function genetic
operators and the way of generating initial population were described. And we made a study for a set of
project instance of Patterson110 which has been widely used, and analysed the impact of the
parameters of algorithm on the performs of the algorithms, the results reveal that the GA is effective for
the RCPSP.
Key Words: project scheduling; Genetic Algorithm; resource-constrained
作者简介:张扬,男,1983年生,硕士研究生,主要研究方向是工程项目管理。
<<
/ASCII85EncodePages false
/AllowTransparency false
/AutoPositionEPSFiles true
/AutoRotatePages /All
/Binding /Left
/CalGrayProfile (Dot Gain 20%)
/CalRGBProfile (sRGB )
/CalCMYKProfile (. Web Coated \050SWOP\051 v2)
/sRGBProfile (sRGB )
/CannotEmbedFontPolicy /Warning
/CompatibilityLevel
/CompressObjects /Tags
/CompressPages true
/ConvertImagesToIndexed true
/PassThroughJPEGImages true
/CreateJDFFile false
/CreateJobTicket false
/DefaultRenderingIntent /Default
/DetectBlends true
/ColorConversionStrategy /LeaveColorUnchanged
/DoThumbnails false
/EmbedAllFonts true
/EmbedJobOptions true
/DSCReportingLevel 0
/EmitDSCWarnings false
/EndPage -1
/ImageMemory 1048576
/LockDistillerParams false
/MaxSubsetPct 100
/Optimize true
/OPM 1
/ParseDSCComments true
/ParseDSCCommentsForDocInfo true
/PreserveCopyPage true
/PreserveEPSInfo true
/PreserveHalftoneInfo false
/PreserveOPIComments false
/PreserveOverprintSettings true
/StartPage 1
/SubsetFonts true
/TransferFunctionInfo /Apply
/UCRandBGInfo /Preserve
/UsePrologue false
/ColorSettingsFile ()
/AlwaysEmbed [ true
]
/NeverEmbed [ true
]
/AntiAliasColorImages false
/DownsampleColorImages true
/ColorImageDownsampleType /Bicubic
/ColorImageResolution 300
/ColorImageDepth -1
/ColorImageDownsampleThreshold
/EncodeColorImages true
/ColorImageFilter /DCTEncode
/AutoFilterColorImages true
/ColorImageAutoFilterStrategy /JPEG
/ColorACSImageDict <<
/QFactor
/HSamples [1 1 1 1] /VSamples [1 1 1 1]
>>
/ColorImageDict <<
/QFactor
/HSamples [1 1 1 1] /VSamples [1 1 1 1]
>>
/JPEG2000ColorACSImageDict <<
/TileWidth 256
/TileHeight 256
/Quality 30
>>
/JPEG2000ColorImageDict <<
/TileWidth 256
/TileHeight 256
/Quality 30
>>
/AntiAliasGrayImages false
/DownsampleGrayImages true
/GrayImageDownsampleType /Bicubic
/GrayImageResolution 300
/GrayImageDepth -1
/GrayImageDownsampleThreshold
/EncodeGrayImages true
/GrayImageFilter /DCTEncode
/AutoFilterGrayImages true
/GrayImageAutoFilterStrategy /JPEG
/GrayACSImageDict <<
/QFactor
/HSamples [1 1 1 1] /VSamples [1 1 1 1]
>>
/GrayImageDict <<
/QFactor
/HSamples [1 1 1 1] /VSamples [1 1 1 1]
>>
/JPEG2000GrayACSImageDict <<
/TileWidth 256
/TileHeight 256
/Quality 30
>>
/JPEG2000GrayImageDict <<
/TileWidth 256
/TileHeight 256
/Quality 30
>>
/AntiAliasMonoImages false
/DownsampleMonoImages true
/MonoImageDownsampleType /Bicubic
/MonoImageResolution 1200
/MonoImageDepth -1
/MonoImageDownsampleThreshold
/EncodeMonoImages true
/MonoImageFilter /CCITTFaxEncode
/MonoImageDict <<
/K -1
>>
/AllowPSXObjects false
/PDFX1aCheck false
/PDFX3Check false
/PDFXCompliantPDFOnly false
/PDFXNoTrimBoxError true
/PDFXTrimBoxToMediaBoxOffset [
]
/PDFXSetBleedBoxToMediaBox true
/PDFXBleedBoxToTrimBoxOffset [
]
/PDFXOutputIntentProfile ()
/PDFXOutputCondition ()
/PDFXRegistryName ()
/PDFXTrapped /Unknown
/Description <<
/FRA <FEFF004f007000740069006f006e00730020007000650072006d0065007400740061006e007400200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000500044004600200064006f007400e900730020006400270075006e00650020007200e90073006f006c007500740069006f006e002000e9006c0065007600e9006500200070006f0075007200200075006e00650020007100750061006c0069007400e90020006400270069006d007000720065007300730069006f006e00200061006d00e9006c0069006f007200e90065002e00200049006c002000650073007400200070006f0073007300690062006c0065002000640027006f00750076007200690072002000630065007300200064006f00630075006d0065006e007400730020005000440046002000640061006e00730020004100630072006f0062006100740020006500740020005200650061006400650072002c002000760065007200730069006f006e002000200035002e00300020006f007500200075006c007400e9007200690065007500720065002e>
/ENU (Use these settings to create PDF documents with higher image resolution for improved printing quality. The PDF documents can be opened with Acrobat and Reader and later.)
/JPN <FEFF3053306e8a2d5b9a306f30019ad889e350cf5ea6753b50cf3092542b308000200050004400460020658766f830924f5c62103059308b3068304d306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e305930023053306e8a2d5b9a30674f5c62103057305f00200050004400460020658766f8306f0020004100630072006f0062006100740020304a30883073002000520065006100640065007200200035002e003000204ee5964d30678868793a3067304d307e30593002>
/DEU <FEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e0020005000440046002d0044006f006b0075006d0065006e00740065006e0020006d00690074002000650069006e006500720020006800f60068006500720065006e002000420069006c0064006100750066006c00f600730075006e0067002c00200075006d002000650069006e0065002000760065007200620065007300730065007200740065002000420069006c0064007100750061006c0069007400e400740020007a0075002000650072007a00690065006c0065006e002e00200044006900650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f0062006100740020006f0064006500720020006d00690074002000640065006d002000520065006100640065007200200035002e003000200075006e00640020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002e>
/PTB <FEFF005500740069006c0069007a006500200065007300740061007300200063006f006e00660069006700750072006100e700f5006500730020007000610072006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000500044004600200063006f006d00200075006d00610020007200650073006f006c007500e700e3006f00200064006500200069006d006100670065006d0020007300750070006500720069006f0072002000700061007200610020006f006200740065007200200075006d00610020007100750061006c0069006400610064006500200064006500200069006d0070007200650073007300e3006f0020006d0065006c0068006f0072002e0020004f007300200064006f00630075006d0065006e0074006f0073002000500044004600200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002c002000520065006100640065007200200035002e0030002000650020007300750070006500720069006f0072002e>
/DAN <FEFF004200720075006700200064006900730073006500200069006e0064007300740069006c006c0069006e006700650072002000740069006c0020006100740020006f0070007200650074007400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006d006500640020006800f8006a006500720065002000620069006c006c00650064006f0070006c00f80073006e0069006e006700200066006f00720020006100740020006600e50020006200650064007200650020007500640073006b00720069006600740073006b00760061006c0069007400650074002e0020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e006500730020006d006500640020004100630072006f0062006100740020006f0067002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002e>
/NLD <FEFF004700650062007200750069006b002000640065007a006500200069006e007300740065006c006c0069006e00670065006e0020006f006d0020005000440046002d0064006f00630075006d0065006e00740065006e0020007400650020006d0061006b0065006e0020006d00650074002000650065006e00200068006f0067006500720065002000610066006200650065006c00640069006e00670073007200650073006f006c007500740069006500200076006f006f0072002000650065006e0020006200650074006500720065002000610066006400720075006b006b00770061006c00690074006500690074002e0020004400650020005000440046002d0064006f00630075006d0065006e00740065006e0020006b0075006e006e0065006e00200077006f007200640065006e002000670065006f00700065006e00640020006d006500740020004100630072006f00620061007400200065006e002000520065006100640065007200200035002e003000200065006e00200068006f006700650072002e>
/ESP <FEFF0055007300650020006500730074006100730020006f007000630069006f006e006500730020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000500044004600200063006f006e0020006d00610079006f00720020007200650073006f006c00750063006900f3006e00200064006500200069006d006100670065006e00200070006100720061002000610075006d0065006e0074006100720020006c0061002000630061006c006900640061006400200061006c00200069006d007000720069006d00690072002e0020004c006f007300200064006f00630075006d0065006e0074006f00730020005000440046002000730065002000700075006500640065006e00200061006200720069007200200063006f006e0020004100630072006f00620061007400200079002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002e>
/SUO <FEFF004e00e4006900640065006e002000610073006500740075007300740065006e0020006100760075006c006c006100200076006f0069006400610061006e0020006c0075006f006400610020005000440046002d0061007300690061006b00690072006a006f006a0061002c0020006a006f006900640065006e002000740075006c006f0073007400750073006c00610061007400750020006f006e0020006b006f0072006b006500610020006a00610020006b007500760061006e0020007400610072006b006b007500750073002000730075007500720069002e0020005000440046002d0061007300690061006b00690072006a0061007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f006200610074002d0020006a00610020004100630072006f006200610074002000520065006100640065007200200035002e00300020002d006f0068006a0065006c006d0061006c006c0061002000740061006900200075007500640065006d006d0061006c006c0061002000760065007200730069006f006c006c0061002e>
/ITA <FEFF00550073006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000500044004600200063006f006e00200075006e00610020007200690073006f006c0075007a0069006f006e00650020006d0061006700670069006f00720065002000700065007200200075006e00610020007100750061006c0069007400e00020006400690020007300740061006d007000610020006d00690067006c0069006f00720065002e0020004900200064006f00630075006d0065006e00740069002000500044004600200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002e>
/NOR <FEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f00700070007200650074007400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006d006500640020006800f80079006500720065002000620069006c00640065006f00700070006c00f80073006e0069006e006700200066006f00720020006200650064007200650020007500740073006b00720069006600740073006b00760061006c0069007400650074002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e006500730020006d006500640020004100630072006f0062006100740020006f0067002000520065006100640065007200200035002e00300020006f0067002000730065006e006500720065002e>
/SVE <FEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006e00e40072002000640075002000760069006c006c00200073006b0061007000610020005000440046002d0064006f006b0075006d0065006e00740020006d006500640020006800f6006700720065002000620069006c0064007500700070006c00f60073006e0069006e00670020006f006300680020006400e40072006d006500640020006600e50020006200e400740074007200650020007500740073006b00720069006600740073006b00760061006c0069007400650074002e0020005000440046002d0064006f006b0075006d0065006e00740065006e0020006b0061006e002000f600700070006e006100730020006d006500640020004100630072006f0062006100740020006f00630068002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006100720065002e>
>>
>> setdistillerparams
<<
/HWResolution [2400 2400]
/PageSize [ ]
>> setpagedevice