% !Mode:: "TeX:UTF-8"

\chapter{表面组装过程优化的数学规划模型}[Mathematical programming models for surface assembly process optimization]
\label{ch2:chapter}

\section{引言}[Introduction]

建立准确反映研究对象特性的数学模型是分析和求解问题的首要环节。
表面组装过程优化作为一类组合优化问题，数学规划法是求解此类问题的主要方法之一。
以整数规划为代表的方法通过系统地搜索解空间、排除不可行解和次优解、逐步逼近最优解，在充足的求解时间下理论上能准确地获得问题的最优解。
然而，研究对象模型的构建必须充分考虑影响优化目标的主要因素和约束条件，以确保模型的实用性和有效性。
对于涉及多个优化变量和复杂决策过程的数学模型，其构建过程面临着约束条件非线性、过程环节间强耦合、优化目标影响因素复杂等诸多挑战，大幅增加了模型构建的难度；即使成功建立了问题的模型，也可能因过高的复杂度而难以将其直接应用到实际的生产环境中。

拆分和简化问题模型是建模过程中的常用策略，用于提升模型处理复杂数据的求解效率。
模型的拆分与构建应遵循从整体到个体、从主要目标到次要目标的原则。
合理地将表面组装过程中的优化问题进行拆分，聚焦于分解问题的主要优化目标，关注子模型之间的耦合关系与约束条件，可以显著降低问题求解的难度。
此外，对模型做出合理假设能有效凸显主要问题、弱化次要问题、省略非关键环节，有助于模型的进一步简化。
在数学规划领域，现有的通用求解方法对于线性模型展现出了高效的求解能力，因而有必要在建模过程中线性化调整模型，以确保其可解性。
可解的数学模型不仅可以验证解的可行性、定量分析解的质量，还可为启发式算法的设计提供参考基准，从而为算法的设计和改进提供依据。


表面组装过程的优化旨在调度和规划组装过程中拾取、贴装等工序，其决定了电路板的组装生产效率，
同时受到多重外部与内部因素的制约，加大了问题求解的难度。
此类问题的模型构建过程需要侧重于影响装配效率的关键因素，以降低模型的复杂度、提高模型的求解效率。
本章将研究单一品种电路板的组装过程建模问题，分析该问题的特点，确定表面组装过程的优化目标及约束条件，从贴片机的组装过程优化的角度出发，对模型进行拆解与分析，进而扩展至整个表面组装生产线负载平衡模型的建立。


\section{系统的描述与分析}[Description and analyses of the system]

\subsection{系统构成}[System configuration]

本文研究的装配并列式贴片头的贴片机平台系统构成如图\ref{ch2:figure:platform}所示，平台中主要设备的厂商、型号等信息如表\ref{ch2:table:platform}所示。实验平台为H 型龙门结构多自由度运动平台，X轴为单轴直驱运动模组，Y轴为两套平行安装的单轴直驱运动模组，X轴同步装配有一个悬臂及多个独立贴片头。系统采用轻量化悬臂设计，结合双伺服驱动系统，支持多轴同步运动，可实现复杂轨迹的快速响应，并确保高速运动下的稳定性。内置的吸嘴更换装置可根据元器件类型自动切换吸嘴。PCB传送与定位系统可自动调整宽度，适配不同尺寸基板。双视觉协同识别系统在贴片头作业过程中实时识别元件，通过补偿机械误差，确保贴装位置与预设位置的一致性。供料系统提供120个标准供料槽，配备的电动供料器具备吸料位置自动整列功能，减少了供料卡顿。操作系统与界面基于Windows 10平台，提供直观编程界面，支持在线程序编辑与优化。

\begin{figure}[!ht]
	\centering
	\includegraphics[scale=0.55]{chapter2/platform.eps}
	\bicaption[ch2:figure:platform]{}{贴片机平台}{Fig. $\!$}{Platform of surface mounter}
\end{figure} 

典型的表面组装生产线如图\ref{ch2:figure:real-assembly-line}所示，上板机、印刷机、贴片机和回流焊为其基本组成部分。在电子制造工艺流程中，各类设备的产能特性存在显著差异。丝网印刷机在焊膏涂覆环节展现出显著的速度优势，而回流焊接设备采用连续进板设计，其工艺节拍独立于前序工序，通常不会形成产能制约。AOI检测系统具备多工位并行检测能力，其图像处理耗时可忽略不计。与之对比的是表面组装设备，该工序需完成数百个异形元件的精密拾取与定位作业，其贴装周期直接决定了整线生产节拍。在生产线优化实践中，设备综合效率管理的核心在于突破关键瓶颈——由于表面组装工序的固有特性，其设备产能往往构成整线产能的核心制约因素，这使得表面的效率优化成为提升整体装配效率的关键突破点。

\begin{table}[H]
	\small
	\centering
	\bicaption[ch2:table:platform]{}{表面组装设备实验平台配置}{Table $\!$}{Platform configuration of surface assembly equipment}
	
	\begin{tabular}{p{3cm}<{\centering}p{4cm}<{\centering}p{3cm}<{\centering}}
		\toprule
		系统组成 &  设备型号 & 设备厂商  \\
		\midrule
		工控机 &  IPC-610-L & 研华科技  \\
		X轴驱动器 &  MCDLN35SE & Panasonic（松下）  \\
		Y轴驱动器 &  MDDLN55SE & Panasonic（松下）  \\
		Z轴驱动器 &  MMDKT2C09E & Panasonic（松下）  \\
		R轴驱动器 &  ZC-SR2 & 鸣志  \\
		X轴电机 &  MHMF082L1U2M & Panasonic（松下）  \\
		Y轴电机 &  MSMF102L1G6M & Panasonic（松下）  \\
		Z轴电机 &  MNMA2ACF1A& Panasonic（松下）  \\
		R轴电机 &  AM11HS3007-02 & 鸣志  \\
		\bottomrule 
	\end{tabular}
\end{table}



\begin{figure}
	\centering
	\includegraphics[scale=0.4]{chapter2/assembly-line.eps}
	\bicaption[ch2:figure:real-assembly-line]{}{表面组装生产线的系统构成}{Fig. $\!$}{System configuration of surface assembly line}
\end{figure} 


本文相关的实验均采用Python 3.11在集成开发环境PyCharm 2022.1.4软件中实现，相关的数学模型则采用优化器 Gurobi 11.0\cite{gurobi} 进行求解，算法均在配置为Intel Core i5-14600KF主频3.5GHz CPU 的计算机上实现。程序优化结果包含供料装置安装槽位、ANC库配置、元件的拾取和贴装顺序规划等，通过标准化文本格式文件导入到实验平台中。实验平台内置生产过程控制程序和统计程序：控制程序中的同步拾取和多轴运动等动作按最优条件执行，并可根据程序步骤实现贴片头自动更换吸嘴、在供料基座上拾取元件和前往预定贴装点放置元件等组装过程运动指令；统计程序可准确记录电路板传送时间、贴装时间等相关生产数据，其中贴装时间为开始准备生产到贴装完最后一个元件的用时，包含了贴装第一个元件前的贴片头吸嘴更换等过程，是后续对比实验所用的数据之一。

\subsection{表面组装过程优化}[Surface assembly process optimization]

表面组装过程的优化可划分为贴片机组装过程优化与生产线负载平衡优化两个方面。前者用于解决贴片机在组装过程中悬臂移动用时与组装动作用时总和的最小化问题；而后者则用于平衡生产线上贴片机的工作负载，减少其中作为生产效率提升瓶颈的贴片机的组装用时。
贴片机组装过程优化的结果用以评估生产线负载分配的平衡性，而组装线负载平衡的结果又是贴片机组装过程优化的输入。
尽管贴片机组装过程优化可被视为生产线负载平衡优化的一个组成部分，但由于其模型的构建本身已有较高的复杂度，若直接在生产线负载平衡优化中对多个决策过程进行建模，将大幅度增加模型复杂度，导致模型求解变得异常困难、甚至不可解。
在实施优化策略时，需要综合考虑两者的特点与关系，采取适当的策略与方法进行分别优化与处理。

贴片机的组装过程优化可被视为仓库选址、任务分配和路径规划相结合的综合性组合优化问题。
在电路板组装过程中，贴片头需从装载有电子元件的供料器中拾取元件，供料器在基座上的安装槽位可以等效为仓库选址问题。
任务分配问题需要确定贴片头在各个拾取周期内取料的槽位，槽位的分配直接影响元件拾取的次数，进而影响了组装效率。同时，不同元件类型所需的吸嘴类型决定了贴片头的吸嘴更换的次数，影响了悬臂移动过程的用时。
路径规划用于优化悬臂上贴片头贴装元件的路径，同时确保元件贴装位置与贴片头拾取元件类型相匹配。
不同子问题之间紧密耦合、相互影响，共同决定了表面组装过程的整体性能。
% 供料器的安装槽位影响贴片头的拾取效率，其布局应尽可能满足同步取料的条件，同时减少可能引入的吸嘴更换。此外，供料器的安装槽位和贴片头拾取的元件类型对整体的移动路径也有影响。一方面，拾取过程的移动路径是整个组装路径的组成部分；另一方面，贴片头拾取的元件类型限制了可移动的贴装元件的位置，相关限制条件在路径规划时必须加以考虑，以保证贴片头任务分配和路径规划解的一致性。


表面组装生产线负载平衡指的是解决元件在不同贴片机上的分配问题。分配给不同贴片机的元件类型、元件的贴装点数都会影响贴片机的组装效率。在元件分配过程中，供料器的可用数量会限制不同类型元件可分配的贴片机数量。
通常情况下，元件分配的组合数量庞大，即使是小规模数据也需要大量的计算资源，且随着问题规模的扩大，搜索过程的运算量也会迅速增加。
因此，提高对复杂解空间的搜索效率对组装线负载平衡优化至关重要。在确定装配时间时，贴片机组装过程用时已难以直接获得，将贴片机组装优化问题直接扩展到生产线负载平衡问题因复杂度较高更不具备可行性。在生产线元件分配过程中，通过提取组装效率相关的关键因素进行建模和优化，以及提取特征估计组装过程的用时，有利于降低问题求解的难度，实现对解空间的快速迭代搜索，进而获得高质量的解。


\section{多阶段模型的构建}[Multi-stage modelling]

\subsection{分析与假设}[Analyses and assumptions]

贴片机组装过程优化中的主要决策子问题、优化子目标和约束条件之间的关系如图\ref{ch2:figure:relationship}所示。
贴片机的组装过程优化可以被拆解为拾取过程和贴装过程的优化问题。前者解决了供料器的安装槽位和贴片头拾取元件类型的问题，而后者则决定了贴片头的贴装顺序问题。
这两个子问题之间存在着递进关系，即在确定贴片头的组装元件类型基础上，进一步分配对应的贴装点。
分层递进求解可以逐步缩减搜索空间的大小，降低问题的计算复杂度。
表面组装过程的各环节存在相关性，供料器的安装槽位影响贴片头的拾取位置和分配的元件类型，决定了拾取过程的移动路径；贴片头分配的元件类型影响着贴装过程的移动路径，同步拾取元件所必要的吸嘴更换带来悬臂往返ANC的移动过程。
为了提升表面组装效率，同时保证贴片头的吸嘴类型、元件类型、贴装点和拾取槽位的一致性，可能会产生贴片头的吸嘴更换和拾取元件过程的移动动作。
供料器的安装槽位和贴片头的元件分配共同决定了组装过程中悬臂的整体移动路径。

\begin{figure}[htpb]
	\centering
	\includegraphics[scale=0.75]{chapter2/obj-constr-problem.eps}
	\bicaption[ch2:figure:relationship]{}{表面组装优化中子目标、共同约束条件和子问题之间的关系}{Fig.$\!$}{The relationship among sub-objectives, constraints and sub-problems.}
\end{figure}

表面组装过程的目标是最小化组装时间，该指标与组装过程多项子目标相关，子目标可分为组装动作指标和移动路径指标。组装动作指标包括贴片头的元件拾取次数、吸嘴更换次数和元件贴装次数，其中元件贴装次数仅和组装数据相关，而元件拾取次数和吸嘴更换次数则取决于优化结果，同样是影响并列式贴片机整体组装效率的重要因素\cite{gao_hierarchical_2021}。悬臂的移动路径又可进一步分为拾取移动路径、往返移动路径和贴装移动路径，其中，往返移动路径指悬臂在电路板和供料器基座之间的往复运动。
在移动指标中，拾取移动指标和元件拾取次数关联度较大，贴装过程的移动指标对整体组装效率影响较小，往返移动路径则同拾贴周期数直接相关。

在表面组装过程中，多个优化子目标均会影响整体组装过程效率，且不同性能指标彼此之间存在关联性又相互冲突。
对于影响组装效率的主要因素——元件拾取次数和吸嘴更换次数，构造同步拾取可能会带来贴片头冗余的吸嘴更换动作，减少吸嘴更换次数又可能会导致拾取路径和拾取次数的增加，优化算法须在二者之间权衡。
贴片头的移动路径规划之间也存在相关性。
为了保证多个贴片头从预定槽位同步完成拾取动作，其需要根据实际情况调整吸嘴类型以满足拾取要求，过多的吸嘴更换则需要悬臂频繁往返于ANC，增加了移动路径的长度。
为了减少悬臂在电路板和供料器基座之间的移动路径，贴片头任务分配需要保证各拾贴周期尽可能多地拾取元件，其将会间接导致拾取移动路径增加，同时可能减少同步拾取的贴片头数、增加吸嘴更换，进而降低拾取过程的效率。



表面组装过程优化算法不仅要实现对不同元件类型及贴装点数的PCB数据的组装任务优化，同时要考虑实际生产过程中的约束条件。相关约束可被分为四类：

1）\emph{工作完整性约束}：指所有元件必须准确地装配在相应的PCB焊盘上，是表面组装任务的基本要求；

2）\emph{机械结构约束}：指贴片机组成构件之间的相互作用和限制关系，如各贴片头均有无法到达供料器槽位，供料器宽度不同导致的安插槽位位置干涉等；

3）\emph{可用工具约束}：指吸嘴、供料器的数量和一致性约束，数量约束为相关可用工具数量的有限性，一致性约束为吸嘴类型需要和元件类型匹配，以保证拾取过程的顺利进行。不合适的元件-吸嘴类型组合将导致抓取失败、废料率高等问题，会进一步降低组装效率；

4）\emph{外部约束}：指现场操作人员根据实际情况额外增加的限制，如调整部分供料器安装的槽位、禁用贴片头或槽位、更改供料器可用数目、指定贴片头所用吸嘴类型等，此类约束通常是根据机器状况所进行的适当调整，是保证组装过程顺利进行的必要条件。


表面组装生产线是对贴片机优化问题的进一步研究，其通过优化组装时间最长的贴片机实现整条生产线性能的提升。组装线的负载分配是指不同类型元件及其贴装点组装任务的调度。
对表面组装全过程进行建模在实现上具有较高的复杂度，前述已讨论了影响贴片机组装效率的主要因素，而通过拾贴周期数、吸嘴更换数和元件拾贴次数近似化贴片机的生产效率具有较高的准确度，可以实现组装线上贴片机负载平衡。
影响组装线调度的两种主要限制是工具限制和机器限制，工具限制指的是供料器、吸嘴等可用组装工具数量的有限性，而机器限制指的是不同类型的专用贴片机在生产线上协同工作时，必须由特定贴片机组装指定类型的元件。此外，在表面组装过程中，小尺寸或高度较低的元件通常被优先贴装，以保证后续组装过程中不会出现元件相撞的问题。

结合实际应用条件，适当简化问题有助于降低问题求解的难度，同时保证了模型解的可行性。本文对表面组装过程优化问题做出如下假设：

1） X 轴和 Y 轴电机的运动控制相互独立，悬臂移动用时仅和两个方向上的Chebyshev移动距离相关。

2） 相邻贴片头之间与相邻供料器槽位之间的间隔距离比为整数。

3） 只有特定类型的吸嘴才能拾取对应类型的元件，元件类型和吸嘴类型的匹配性是已知的。

4） ANC的配置是预先确定的，即各类型吸嘴的可用数量是已知的；更换吸嘴过程中，悬臂在不同吸嘴孔间的运动时间被忽略不计。

5） 所有待贴装元件均由带式供料器供给，其他类型供料器的拾取位置不在本文研究之列。

基于此，本文研究了表面组装过程分阶段的（混合）整数规划模型，模型可按贴片机和组装生产线分别进行建模。其中，贴片机模型可被进一步拆分为贴片头任务分配模型和贴装过程路径规划模型，前者以组装过程的关键效率指标为优化目标，旨在解决组装过程中贴片头拾取的槽位、组装的元件类型和装配的吸嘴类型，后者则基于已有的贴片头任务，对元件贴装过程路径进行规划。进一步地，生产线负载平衡优化是基于关键指标拟合的组装效率而构建的最小-最大组装线贴片机组装用时的模型。

\subsection{贴片头的任务分配模型}[Task assignment model for assembly-heads]\label{ch2:subsection:head-model}

贴片头任务分配模型仅考虑单台贴片机的分配结果，即贴片机索引集$ M = \left\{ 1 \right\}$，其优化目标\eqref{pick_model_obj}为最小化拾取过程相关的主要性能指标的加权和，包括拾贴周期数、吸嘴更换数、拾取次数和拾取移动距离四项，其中的拾取移动距离由贴片头拾取元件过程经过的槽位数表示。
\begin{equation}
	\min T^{\rm{CY}} \cdot \sum_{k \in K}{g}_{k1} + T^{\rm{NZ}} \cdot \sum_{k \in K}  \sum_{h \in H} n_{kh1} + T^{\rm{PU}} \cdot \sum_{s \in S} \sum_{k \in K} e_{sk1}+ T^{\rm{PM}} \cdot \sum_{k \in K} d_{k1}
	\label{pick_model_obj}
\end{equation}

% 约束\eqref{cycle_constr}和约束\eqref{component_cycle_constr}确定了拾取周期数。其中，约束\eqref{cycle_constr}表示贴片机按照拾贴周期索引递增的顺序完成元件的拾贴作业，用以加快模型的求解速度；而、
约束\eqref{cycle_constr}用于确保贴片头的元件分配结果和拾贴周期规划结果的一致性，由于$g_{km}$是0-1变量，其同时限制了贴片头在各拾贴周期至多被分配一类元件。
% constraint
% \begin{equation}
% 	g_{km} \geq g_{\left(k + 1\right)m} \quad \forall k \in K \backslash \left\{ \left| K \right| \right\}, m \in M
% 	\label{cycle_constr}
% \end{equation}
\begin{equation}
	\sum_{i \in I} x_{ikhm} \leq g_{km} \quad \forall k \in K, h \in H, m \in M
	\label{cycle_constr}
\end{equation}

约束\eqref{nozzle_assign_constr}用于确定贴片头分配的吸嘴类型。
贴片头上的吸嘴装配与其拾取元件之间不存在必然的关联性，即贴片头装配吸嘴是拾取元件的前提，但并不决定拾取元件动作的执行与否。
约束\eqref{nozzle_change_constr1}用于计算贴片头$h$在拾贴周期$k$和$k + 1$之间是否发生吸嘴更换，约束\eqref{nozzle_change_constr2}则用于计算当前电路板的最后一个拾贴周期到下一个电路板首个拾贴周期之间是否发生吸嘴更换，以提升连续拾贴作业的组装效率。
% nozzle change constraint
\begin{equation}
	x_{ikhm} \leq \sum_{j \in J} \mu_{ij} \cdot z_{jkhm} \quad \forall i \in I, k \in K, h \in H, m \in M
	\label{nozzle_assign_constr}
\end{equation}
\begin{equation}
	n_{khm} = \sum_{j \in J} \left( \left|  z_{jkhm} - z_{j\left( k + 1 \right)hm} \right| \right) \quad \forall k \in K \backslash \left\{ \left| K \right| \right\}, h \in H, m \in M
	\label{nozzle_change_constr1}
\end{equation}
\begin{equation}
	n_{\left| K \right| hm} = \sum_{j \in J} \left( \left|  z_{j\left| K \right|hm} - z_{j1hm} \right| \right) \quad \forall h \in H, m \in M
	\label{nozzle_change_constr2}
\end{equation}

约束\eqref{nozzle_change_constr1}可以被线性化为\eqref{linear_nzchange_constr}\cite{ashayeri_aggregated_2011}，通过引入两个非负整数项$n^{+}_{jkhm}$和$n^{-}_{jkhm}$，有
\begin{equation}
	\left\{
	\begin{array}{lr}
		n_{khm} = \frac{1}{2} \sum_{j^{\prime} \in J} \left( n^{+}_{j^{\prime}khm} + n^{-}_{j^{\prime}khm} \right), & \\   
		z_{jkhm} - z_{j\left( k + 1\right)hm} = n^{+}_{jkhm} - n^{-}_{jkhm}, & \quad \forall j \in J, k \in K \backslash \left\{ \left| K \right| \right\}, h \in H, m \in M\\
		n^{+}_{jkhm} \in \mathbb{N}_0,  n^{-}_{jkhm} \in \mathbb{N}_0 &  
	\end{array}
	\label{linear_nzchange_constr}
	\right.
\end{equation}
其中$\mathbb{N}_0$为非负整数集，同理，约束\eqref{nozzle_change_constr2}可以被进一步线性化处理。

并列式贴片机的拾取过程如图\ref{ch2:figure:pickup-operation}所示，为计算同步拾取次数，本章将各贴片头拾取元件的槽位转换为最左侧的贴片头所对齐的槽位，并称之为等效槽位。
约束\eqref{equ_slot_constr}用以计算各个拾贴周期中槽位$s$是否为等效槽位，拾贴周期$k$内的等效槽位数即为该周期的元件（同步）拾取次数。
\begin{equation}
	e_{skm} \leq \sum_{h \in H_{s}} y_{\left[s + \left(h - 1\right) \cdot \tau \right]khm} \leq N \cdot e_{skm} \quad \forall s \in S, k \in K, m \in M
	\label{equ_slot_constr}
\end{equation}
其中，贴片头集合$H_{s}$是$H$的子集，表示能从槽位$s$中拾取元件的贴片头索引集合，其计算方式为
\begin{equation*}
	H_{s} = \left\{ \max(1, \left| H \right| - \lfloor \frac{\left| S \right| - s}{\tau} \rfloor), \cdots, \min \left( \left| H \right|, \lceil  \frac{s}{ \tau } \rceil \right)  \right\}
\end{equation*}
\begin{figure}[htpb]
	\centering
	\includegraphics[scale=0.68]{chapter2/pickup-diagram.eps}
	\bicaption[ch2:figure:pickup-operation]{}{拾取过程示意图}{Fig.$\!$}{Schematic diagram of the pick-up process}
\end{figure}

约束\eqref{pickup_moving_constr}根据各拾贴周期中等效槽位的位置，计算贴片头拾取过程中悬臂移动经过的槽位数。
\begin{equation}
	d_{km} \geq s \cdot e_{skm} - s^\prime \cdot e_{s^\prime km} + N \cdot \left( e_{skm} + e_{s^\prime km} - 2 \right) \quad \forall k \in K, s \in S, s^\prime \in S, m \in M
	\label{pickup_moving_constr}
\end{equation}

约束\eqref{feeder_assign_constr}用以确定贴片头拾取的槽位、分配的元件类型以及元件供料器所分配的槽位之间结果的一致性。
\begin{equation}
	f_{ism} \leq \sum_{k \in K} \sum_{h \in H}  x_{ikhm} \cdot y_{skhm} \leq N \cdot f_{ism} \quad \forall i \in I, s \in S, m \in M 
	\label{feeder_assign_constr}
\end{equation}
其中的非线性项为两个0-1变量的乘积，可以用0-1中间变量$\gamma_{iskhm} = x_{ikhm} \cdot y_{skhm}$线性化处理，即
\begin{equation}
	\left\{
	\begin{array}{lr}
		\gamma_{iskhm} \leq x_{ikhm}, &  \\
		\gamma_{iskhm} \leq y_{skhm}, & \forall i \in I, s \in S, k \in K, h \in H, m \in M\\
		\gamma_{iskhm} \geq x_{ikhm} + y_{skhm} - 1, & \\
	\end{array}
	\label{linear_feederassign_constr}
	\right.
\end{equation}

约束\eqref{work_complete_constr}为工作完整性约束，即各类型元件的所有贴装点均被分配到给定拾贴周期的贴片头上。
\begin{equation}
	\sum_{k \in K} \sum_{h \in H} \sum_{m \in M} x_{ikhm} = \psi_{i} \quad \forall i \in I
	\label{work_complete_constr}
\end{equation}

约束\eqref{mechanism_constr1}--\eqref{mechanism_constr2}分别为机械结构中的贴片头左限位和右限位约束，即各贴片头存在物理上无法到达的取料槽位。
\begin{equation}
	 \sum_{s \in S} \left[  s - \left( h - 1\right) \cdot \tau \right] \cdot y_{skhm} \geq \sum_{s \in S} y_{skhm} \quad \forall k \in K, h \in H, m \in M
	\label{mechanism_constr1}
\end{equation}
\begin{equation}
	\sum_{s \in S} \left[ s + \left( \left| H \right| - h \right) \cdot \tau \right] \cdot y_{skhm} \leq \left| S \right| \quad \forall k \in K, h \in H, m \in M
	\label{mechanism_constr2}
\end{equation}

组装过程可用工具的有限性体现在约束\eqref{slot_capacity_constr}--\eqref{feeder_available_constr}。约束\eqref{slot_capacity_constr}确保各供料器槽位至多分配一类元件，
约束\eqref{nozzle_available_constr}和约束\eqref{feeder_available_constr}则分别表示有限的可用吸嘴和可用供料器。
\begin{equation}
	\sum_{i \in I} f_{ism} \leq 1 \quad \forall s \in S, m \in M
	\label{slot_capacity_constr}
\end{equation}
\begin{equation}
	\sum_{h \in H}  z_{jkhm} \leq \zeta_{j} \quad \forall j \in J,  k \in K, m \in M
	\label{nozzle_available_constr}
\end{equation}
\begin{equation}
	\sum_{s \in S} f_{ism} \leq \phi_{i} \quad \forall i \in I, m \in M
	\label{feeder_available_constr}
\end{equation}

贴片头分配的元件类型决定了其拾取的供料器槽位，约束\eqref{relation_constr} 确定了拾取槽位与元件分配结果之间的关系。
\begin{equation}
	\sum_{s \in S} y_{skhm} = \sum_{i \in I} x_{ikhm} \quad \forall k \in K, h \in H, m \in M
	\label{relation_constr}
\end{equation}

约束\eqref{pick_model_var_range1}--\eqref{pick_model_var_range4}确定了决策变量的取值范围。
\begin{equation}
	g_{km} \in \left\{ 0, 1 \right\}, \; d_{km} \in \mathbb{N}_0, \; n_{khm} \in \left\{ 0, 1 \right\} \quad \forall k \in K, h \in H, m \in M
	\label{pick_model_var_range1}
\end{equation}
\begin{equation}
	e_{skm} \in \left\{ 0, 1 \right\}, \; f_{ism} \in \left\{ 0, 1 \right\} \quad \forall k \in K, s \in S, i \in I, m \in M
	\label{pick_model_var_range2}
\end{equation}
\begin{equation}
	\gamma_{iskhm} \in \left\{ 0, 1 \right\}, \; x_{ikhm} \in \left\{ 0, 1 \right\} \quad \forall i \in I, s \in S, k \in K, h \in H, m \in M
	\label{pick_model_var_range3}
\end{equation}
\begin{equation}
	y_{skhm} \in \left\{ 0, 1 \right\}, z_{jkhm} \in \left\{ 0, 1 \right\} \quad \forall s \in S, j \in J, k \in K, h \in H, m \in M
	\label{pick_model_var_range4}
\end{equation}

优化目标\eqref{pick_model_obj}和约束条件\eqref{cycle_constr}--\eqref{nozzle_change_constr2}， \eqref{equ_slot_constr}--\eqref{feeder_assign_constr}，\eqref{work_complete_constr}--\eqref{pick_model_var_range4}共同构成了贴片头的任务分配模型。


\subsection{贴装过程的路径规划模型}[Path planning model for placement process]

贴装过程路径规划问题可以被视为受贴片头任务分配结果约束的路径规划问题，模型中的参数根据\ref{ch2:subsection:head-model}节中贴片头分配的元件类型和拾取的供料器槽位计算得到，并沿用了任务规划模型的索引、集合、参数和决策变量等符号。
为降低模型的规模，本小节将贴装过程中连续作业的贴片头构成的有序对称为移动弧，移动弧对应贴装过程中的一段移动路径。以$a=\left(h, h^\prime\right) \in A$为例，$w_{pp^\prime ka} = 1$表示悬臂上的贴片头$h$完成点$p$的贴装后，用贴片头$h^\prime$完成点$p^\prime$的贴装，其中，$h$被称为先序作业头，$h^\prime$被称为后序作业头。 $A_{h}$, $A_{h}^{\rm {FRM}}$和$A_{h}^{\rm {TO}}$是$A$的子集，$A_{h}$表示有序对中有贴片头$h$的弧集，$A_{h}^{\rm {FRM}}$表示贴片头$h$作为先序作业头的弧集合，$A_{h}^{\rm {TO}}$表示贴片头$h$作为后序作业头的弧集合。图\ref{ch2:figure:arc}展示了移动弧$a=\left(2,3\right)$的贴装过程，其中先序贴片头为头2，后序贴片头为头3，弧$a$同时是集合$A_2$、$A_3$、$A^{\rm FRM}_2$和$A^{\rm TO}_3$中的元素。

\begin{figure}[htpb]
	\centering
	\includegraphics[scale=0.8]{chapter2/arc-diagram.eps}
	\bicaption[ch2:figure:arc]{}{移动弧的演示图}{Fig.$\!$}{Demonstration of a moving arc}
\end{figure}

表面组装过程中悬臂的移动路径长度也是影响组装效率的性能指标之一，贴片头任务分配模型已解决拾取过程移动路径，而悬臂从供料器基座到电路板间往返路径和悬臂在电路板上贴装过程中的移动路径则由贴装过程路径规划模型确定。同样地，贴片机索引$M = \left\{ 1 \right\}$，贴装过程的路径规划目标函数为\eqref{place_model_obj}。
\begin{equation}
	\begin{aligned}
		\min \sum_{k \in K} \Big\{ \sum_{p \in P} \sum_{h \in H} D^{\rm{FW}}_{pkhm} \cdot u_{pkhm} + \sum_{p \in P} \sum_{p^\prime \in P} \sum_{a \in A} D^{\rm{PL}}_{pp^\prime a} \cdot w_{pp^\prime kam}  \\
		 + \sum_{p \in P} \sum_{h \in H} D^{\rm{BW}}_{pkhm} \cdot v_{pkhm} \Big\}
		 \label{place_model_obj}
	\end{aligned}
\end{equation}

优化目标\eqref{place_model_obj}表示贴片头的移动路径长度，共由三部分组成：从供料器基座前往电路板的移动路径长度，在电路板上进行贴装作业的移动路径长度以及从电路板返回供料器基座的移动路径长度，其中拾贴周期$k$中贴片头拾取元件的首个槽位$F^{\rm{BW}}_{km}$和最后一个槽位$F^{\rm{FW}}_{km}$是由贴片头的任务分配结果确定的，即
\begin{equation}
	F^{\rm{BW}}_{km} = \max_{h \in H} \left\{s \cdot y_{skhm} - \left( h - 1 \right) \cdot \tau \mid y_{skhm} > 0,  s \in S \right\}  \quad \forall k \in K, m \in M
\end{equation}
\begin{equation}
	F^{\rm{FW}}_{km} = \min_{h \in H} \left\{s \cdot y_{skhm} - \left( h - 1 \right) \cdot \tau \mid y_{skhm} > 0,  s \in S \right\} \quad \forall k \in K, m \in M
\end{equation}
据此可确定贴片头拾取完最后一个元件前往电路板上的贴装点$p$的移动路径长度，以及贴装完电路板上的贴装点$p$返回下个拾贴周期首个取料位置的路径长度，即
\begin{equation}
	\left\{
	\begin{aligned}
		 D^{\rm{BW}}_{pkhm} = \max\left\{ \left| X^{\rm{F1}} + F^{\rm{BW}}_{km} \cdot \frac{\rho}{\tau} - X_{p} + \left(h - 1\right) \cdot \rho \right|, \right. \\
		 \left. \left| Y^{\rm{F1}} - Y_{p} \right| \right\}   \\
		D^{\rm{FW}}_{pkhm} = \max\left\{ \left| X^{\rm{F1}} + F^{\rm{FW}}_{km} \cdot \frac{\rho}{\tau} - X_{p} + \left(h - 1\right) \cdot \rho \right|, \right. \\
		\left. \left| Y^{\rm{F1}} - Y_{p} \right| \right\}
	\end{aligned}	
	\right.
	\begin{aligned}
	\quad \forall p \in P, k \in K, \\
	 h \in H, m \in M 
	\end{aligned}	
\end{equation}

贴片头在电路板上进行贴装元件的移动路径长度可以根据其作业的先后顺序及对应的贴装点坐标确定，即
\begin{equation}
	D^{\rm{PL}}_{pp^\prime a} = \max_{a = \left( h, h^\prime \right)}\left\{ \left| X_{p} - X_{p^\prime} - \left(h - h^\prime\right) \cdot \rho \right|, \left|  Y_{p} - Y_{p^\prime} \right| \right\} \quad \forall a \in A, p \in P, p^\prime \in P
\end{equation}

约束\eqref{pick_model_constr}为贴片头任务分配一致性约束，即贴装过程中贴片头贴装的点对应的元件类型和贴片头任务分配的元件类型相同。
\begin{equation}
	\begin{aligned}
		\sum_{p^\prime \in P} \left( \sum_{a \in A^{\rm FRM}_h} w_{pp^\prime kam} + \sum_{a \in A^{\rm TO}_{h}} w_{p^\prime p kam} \right) + u_{pkhm} + v_{pkhm} \leq  2 \cdot \sum_{i \in I} \eta_{ip} \cdot x_{ikhm} \\
		\quad \forall p \in P, k \in K, h \in H, m \in M
	\label{pick_model_constr}	
	\end{aligned}
\end{equation}

约束\eqref{head_point_constr}为拾取过程移动路径的确定性约束，即各贴片头在从供料基座前往电路板、在电路板上贴装以及从电路板返回供料基座的过程中，至多经过一个贴装点，对应在贴装点上为点的出度和入度之和不大于2。
\begin{equation}
	\sum_{p \in P} \sum_{p^\prime \in P} \sum_{a \in A_{h}} w_{pp^\prime kam} + \sum_{p \in P} \left( u_{pkhm} + v_{pkhm} \right) \leq 2 \quad \forall k \in K, h \in H, m \in M
	\label{head_point_constr}
\end{equation}

约束\eqref{task_continuity_constr1}--\eqref{task_continuity_constr3}为贴装任务的连续性约束，即对于同一个贴装点，表示贴装先后顺序的弧对应的贴片头是一致的，以保证贴装过程移动路径的连续性。
\begin{equation}
	\begin{aligned}
		\sum_{p^\prime \in P} \sum_{a \in A^{\rm {TO}}_{h}} w_{p^\prime pkam} + u_{pkhm} = \sum_{p^\prime \in P} \sum_{a \in A^{\rm {FRM}}_{h}} w_{pp^\prime kam} + v_{pkhm} \\ \quad \forall k \in K, h \in H, p \in P, m \in M
		\label{task_continuity_constr1}
	\end{aligned}
\end{equation}
\begin{equation}
	u_{pkhm} \leq \sum_{p^\prime \in P} \sum_{a \in A^{\rm {FRM}}_{h}} w_{pp^\prime kam} + v_{phkm} \quad \forall k \in K, h \in H, p \in P, m \in M
	\label{task_continuity_constr2}
\end{equation}
\begin{equation}
	v_{pkhm} \leq \sum_{p^\prime \in P} \sum_{a \in A^{\rm {TO}}_{h}} w_{p^\prime pkam} + u_{pkhm} \quad \forall k \in K, h \in H, p \in P, m \in M
	\label{task_continuity_constr3}
\end{equation}

约束\eqref{start_edge_constr}和\eqref{end_edge_constr}表示悬臂从供料器基座到电路板，以及从电路板回到供料器基座的移动路径在各个拾贴周期都是唯一的，其中的唯一性包括贴片头和贴装点的唯一性。
\begin{equation}
	\sum_{p \in P} \sum_{h \in H} u_{pkhm} = 1 \quad \forall k \in K, m \in M
	\label{start_edge_constr}
\end{equation}
\begin{equation}
	\sum_{p \in P} \sum_{h \in H} v_{pkhm} = 1 \quad \forall k \in K, m \in M
	\label{end_edge_constr}
\end{equation}

约束\eqref{enter_edge_constr}和\eqref{leave_edge_constr}分别表示贴片头前往和离开各个贴装点的移动路径是唯一的。
\begin{equation}
	\sum_{k \in K} \left( \sum_{h \in H} u_{pkhm} + \sum_{p^\prime \in P} \sum_{a \in A} w_{pp^\prime kam} \right) = 1 \quad \forall p \in P, m \in M
	\label{enter_edge_constr}
\end{equation}
\begin{equation}
	\sum_{k \in K} \left( \sum_{h \in H} v_{pkhm} + \sum_{p^\prime \in P} \sum_{a \in A} w_{p^\prime pkam} \right)= 1 \quad \forall p \in P, m \in M
	\label{leave_edge_constr}
\end{equation}

约束\eqref{subtour_constr1}--\eqref{subtour_constr4}基于Dantzig-Fulkerson-Johnson的形式，通过引入非负连续变量 $\hat{w}_{pp^\prime m}$，$\hat{u}_{pm}$和$\hat{v}_{pm}$ 消除各拾贴周期的闭合子回路。   
\begin{equation}
	\hat{v}_{pm} + \sum_{p^\prime \in P} \hat{w}_{pp^\prime m} - \hat{u}_{pm} - \sum_{p^\prime \in P} \hat{w}_{p^\prime pm} = 1 \quad \forall p \in P, m \in M
	\label{subtour_constr1}
\end{equation}
\begin{equation}
	\hat{w}_{pp^\prime m} \leq \sum_{k \in K} \sum_{a \in A} \left(\left| P \right| - \left| K \right| + 1\right) \cdot w_{pp^\prime kam} \quad \forall p  \in P, p^\prime \in P, m \in M
	\label{subtour_constr2}
\end{equation}
\begin{equation}
	\hat{u}_{pm} \leq \sum_{k \in K} \sum_{h \in H} \left(\left| P \right| - \left| K \right| + 1 \right) \cdot  u_{pkhm} \quad \forall p \in P, m \in M
	\label{subtour_constr3}
\end{equation}
\begin{equation}
	\hat{v}_{pm} \leq \sum_{k \in K} \sum_{h \in H} \left(\left| P \right| - \left| K \right| + 1 \right) \cdot  v_{pkhm} \quad \forall p \in P, m \in M
	\label{subtour_constr4}
\end{equation}

约束\eqref{place_model_var_range1}--\eqref{place_model_var_range3}确定了决策变量的取值范围。
\begin{equation}
	w_{pp^\prime kam} \in \left\{ 0, 1 \right\} \quad p \in P, p^\prime \in P, k \in K, a \in A, m \in M
	\label{place_model_var_range1}
\end{equation}
\begin{equation}
	u_{pkhm} \in \left\{ 0, 1 \right\}, \;  v_{pkhm} \in \left\{ 0, 1 \right\}\quad p \in P, k \in K, h \in A, m \in M
	\label{place_model_var_range2}
\end{equation}
\begin{equation}
	\hat{w}_{pp^\prime m} \geq 0, \; \hat{u}_{pm} \geq 0, \; \hat{v}_{pm} \geq 0 \quad p \in P, p^\prime \in P, m \in M
	\label{place_model_var_range3}
\end{equation}

优化目标\eqref{place_model_obj}和约束条件\eqref{pick_model_constr}--\eqref{place_model_var_range3}构成了贴装过程的路径规划模型。

\subsection{生产线的负载平衡模型}[Workload balancing model for assembly line]

组装生产线的负载平衡模型是对多台贴片机组装任务分配的优化，其中，组装时间最长的贴片机是生产效率提升的瓶颈。
对整个生产线的完整建模将导致模型复杂度过高进而不可解。
本小节以贴片头任务分配模型为基础，进一步提出了生产线负载平衡模型，
该模型以加权关键子目标评估单台贴片机的组装时间，贴片机的索引集合$M$扩展至整个生产线中，贴片机索引$m$按组装的先后顺序递增编号，式\eqref{line_model_obj}为模型的优化目标，表示最小化组装用时最长的贴片机。
\begin{equation}
	\begin{aligned}
		\min \max_{m \in M} \left( T^{\rm{PL}} \cdot \sum_{i \in I} \sum_{k \in K} \sum_{h \in H} x_{ikhm} + T^{\rm{CY}} \cdot \sum_{k \in K} g_{km}  +  T^{\rm{NZ}} \cdot\sum_{k \in K} \sum_{h \in H} n_{khm}   \right.  \\
		\left.  + T^{\rm{PU}} \cdot  \sum_{s \in S} \sum_{k \in K} e_{skm} + T^{\rm{PM}} \cdot \sum_{k \in K} d_{km} \right)
		\label{line_model_obj}
	\end{aligned}
\end{equation}

优化目标相关约束\eqref{line_model_obj}在贴片头任务分配目标\eqref{pick_model_obj}的基础上增加了分配的贴装点数项，即$x_{ikhm}$。相关约束中，
% 工作完整性约束\eqref{work_complete_constr}扩展为生产线的工作完整性约束\eqref{line_completion_constr}，
可用工具约束\eqref{nozzle_available_constr}--\eqref{feeder_available_constr}则被扩展为生产线的可用工具限制，其中，可用供料器和可用吸嘴被分别调整为约束\eqref{line_feeder_limit_constr}和约束\eqref{line_nozzle_limit_constr}。
% \begin{equation}
% 	\sum_{k \in K} \sum_{h \in H}\sum_{m \in M} x_{ikhm} =  \psi_{i} \quad \forall i \in I
% 	\label{line_completion_constr}
% \end{equation}
\begin{equation}
	\sum_{s \in S} \sum_{m \in M} f_{ism} \leq \phi_{i} \quad \forall i \in I
	\label{line_feeder_limit_constr}
\end{equation}
\begin{equation}
	\sum_{m\in M} \max_{k \in K} \sum_{h \in H} z_{jkhm} \leq  \zeta_j \quad \forall j \in j
	\label{line_nozzle_limit_constr}
\end{equation}

在生产线相关的约束中，约束\eqref{line_assign_constr}用于确保贴片头的元件分配结果和生产线负载均衡结果的一致性。
\begin{equation}
	r_{im} \leq \sum_{k \in K} \sum_{h \in H} x_{ikhm} \leq N \cdot r_{im} \quad \forall i \in I, m \in M
	\label{line_assign_constr}
\end{equation}

表面组装生产线中新增的约束关系包括元件可分配贴片机约束和元件拾贴优先级约束。其中，约束\eqref{line_comp_constr}用于约束不同贴片机可组装的元件类型。
\begin{equation}
	r_{im} \leq \xi_{im}  \quad \forall i \in I, m \in M
	\label{line_comp_constr}
\end{equation}

在元件组装优先级约束中，具有拾贴优先级约束的元件分别被记为先序元件和后序元件，后序元件在开始拾贴作业前，需要确保所有先序元件的拾贴作业已完成，约束\eqref{line_priority_constr}用于约束不同贴片机之间的元件拾贴先后顺序。
\begin{equation}
	m - N \cdot \left( 1 -  r_{im} \right) \leq m^\prime + N \cdot (1 -  r_{i^\prime m^\prime}) \quad \forall q = \left(i, i^\prime \right) \in Q, m^\prime \in M, m \in M
	\label{line_priority_constr}
\end{equation}

在同一台贴片机进行元件拾取贴装时，同样存在优先级的约束，约束\eqref{machine_priority_constr}用以表明拾贴周期之间的优先级约束，即先序元件组装完成的拾贴周期需不晚于后序元件的组装开始的拾贴周期。
\begin{equation}
	\begin{aligned}
	 \max_{k \in K, h \in H} k \cdot x_{ikhm} + N \cdot \left( r_{im} + r_{i^\prime m} - 2  \right) \leq \min_{k \in K, h \in H}  \left\{ k \cdot x_{i^\prime khm} + \right. \\
	 \left. N \cdot \left( 1 - x_{i^\prime khm}\right) \right\} \quad \forall q = \left(i, i^\prime \right) \in Q, m \in M
	\end{aligned}
	 \label{machine_priority_constr}
 \end{equation}

与生产线负载平衡相关的决策变量取值范围为约束\eqref{line_var_constr}。
\begin{equation}
	r_{im} \in \left\{ 0, 1 \right\} \quad \forall i \in I, m \in M
	\label{line_var_constr}
\end{equation}

优化目标\eqref{line_model_obj}和约束条件\eqref{cycle_constr}--\eqref{nozzle_change_constr2}， \eqref{equ_slot_constr}--\eqref{feeder_assign_constr}，\eqref{mechanism_constr1}--\eqref{mechanism_constr2}，\eqref{relation_constr}--\eqref{pick_model_var_range4}，\eqref{line_feeder_limit_constr}--\eqref{line_var_constr}构成了表面组装生产线的负载平衡模型。


\section{模型的验证与分析}[Validation and analyses of the model]

\subsection{实例演示}[Example demonstration]\label{ch2:sub-section:example}

为说明本章提出模型的可行性，本节以一个实际电路板为例对提出的各个模型进行求解。电路板实例如图\ref{ch2:figure:pcb}所示，其中的贴片式元件由贴片机进行组装。示例电路板长度为150mm，宽度为30mm，共由3种吸嘴、8种元件和28个贴装点构成。取原点为电路板的左下角，坐标系为第一象限直角坐标系，表\ref{ch2:table:pcb}列出了电路板上的贴装点坐标和元件类型参数，元件$i$记为CP$_i$，吸嘴类型$j$记为NZ$_j$。本节以装配有6个贴片头、贴片头间隔为供料器槽位间隔2倍的并列式贴片机为例，分析贴片头的任务分配模型和贴装过程的路径规划模型；同时以三台贴片头数为6的并列式贴片机组成的表面组装生产线为例，进一步分析生产线负载平衡模型。
由于数据的元件种类和贴装点数较少，本节假定可用供料器槽位数为25，同表面组装过程优化相关的子目标的模型系数根据实际组装用时线性拟合的得到，有$T^{\rm{CY}} = 0.326$，$T^{\rm{NZ}}=0.870$，$T^{\rm{PU}}=0.159$，$T^{\rm{PL}}=0.041$，$T^{\rm{PM}}=0.030$。


\begin{table}[H]
	\small
	\centering
	\bicaption[ch2:table:pcb]{}{用于验证模型的PCB数据参数}{Table $\!$}{PCB data parameters for model validation}

	\begin{threeparttable} 
	\begin{tabular}{p{0.7cm}<{\centering}p{1.9cm}<{\centering}p{1.2cm}<{\centering}p{0.7cm}<{\centering}p{1.85cm}<{\centering}p{1.2cm}<{\centering}p{0.7cm}<{\centering}p{1.6cm}<{\centering}p{1.2cm}<{\centering}}
		\toprule
		 点$p$ & \hspace{8pt} 
		 \makecell[c]{$\left(X_p, Y_p\right)$\\ (mm)}   & 元件$i$\tnote{1} & 点$p$ & \hspace{8pt} \makecell[c]{$\left(X_p, Y_p\right)$\\ (mm)} & 元件$i$ &点$p$ & \hspace{4pt} \makecell[c]{$\left(X_p, Y_p\right)$\\ (mm)} & 元件$i$  \\
		\midrule
		1 & $\left(43.7, \textcolor{white}{0} 9.2\right) $ &  \hspace{6pt} CP$_1$ & 
		11 & $\left(68.2, 27.0\right) $ &  \hspace{6pt} CP$_2$ &
		21 & $\left(125.3, 13.0\right) $ &  \hspace{6pt} CP$_4$  \\

		2 & $\left(49.2, \textcolor{white}{0}9.2\right) $ &  \hspace{6pt} CP$_1$ & 
		12 & $\left(44.0, 43.5\right) $ &  \hspace{6pt} CP$_2$ &
		22 & $\left(105.8, 40.1\right) $ &  \hspace{6pt} CP$_4$  \\
		
		3 & $\left(54.2, \textcolor{white}{0}4.5\right) $ &  \hspace{6pt} CP$_1$ & 
		13 & $\left(65.0, 35.2\right) $ &  \hspace{6pt} CP$_2$ &
		23 & $\left(111.8, 40.1\right) $ &  \hspace{6pt} CP$_5$  \\
		
		4 & $\left(61.0, \textcolor{white}{0}4.5\right) $ &  \hspace{6pt} CP$_1$ & 
		14 & $\left(65.0,43.5\right) $ &  \hspace{6pt} CP$_2$ &
		24 & $\left(122.8, 40.1\right) $ &  \hspace{6pt} CP$_5$  \\
		
		5 & $\left(34.8, 32.0\right) $ &  \hspace{6pt} CP$_1$ & 
		15 & $\left(93.8,\textcolor{white}{0}9.5\right) $ &  \hspace{6pt} CP$_2$ &
		25 & $\left(125.0,21.7\right) $ &  \hspace{6pt} CP$_6$  \\
		
		6 & $\left(56.7, 24.5\right) $ &  \hspace{6pt} CP$_1$ & 
		16 & $\left(99.2,\textcolor{white}{0}9.5\right) $ &  \hspace{6pt} CP$_2$ &
		26 & $\left(117.3,40.1\right) $ &  \hspace{6pt} CP$_7$  \\
		
		7 & $\left(43.0, 35.2\right) $ &  \hspace{6pt} CP$_1$ & 
		17 & $\left(97.6,21.8\right) $ &  \hspace{6pt} CP$_3$ &
		27 & $\left(111.4,22.0\right) $ &  \hspace{6pt} CP$_7$  \\
		
		8 & $\left(53.7,35.2\right) $ &  \hspace{6pt} CP$_1$ & 
		18 & $\left(100.3,40.1\right) $ &  \hspace{6pt} CP$_3$ &
		28 & $\left(111.0, 13.0\right) $ &  \hspace{6pt} CP$_8$  \\
		
		9 & $\left(68.2,19.2\right) $ &  \hspace{6pt} CP$_1$ & 
		19 & $\left(125.3,\textcolor{white}{0}4.2\right) $ &  \hspace{6pt} CP$_3$  \\
		
		10 & $\left(43.0, 43.5\right) $ &  \hspace{6pt} CP$_1$ & 
		20 & $\left(128.5,40.1\right) $ &  \hspace{6pt} CP$_3$  \\
		
		\bottomrule 
	\end{tabular}
	\begin{tablenotes}
		\footnotesize
		\item[1] 数据中共有3组不同的吸嘴类型NZ$_1$--NZ$_3$，其中，CP$_1$的吸嘴类型为NZ$_1$，CP$_2$--CP$_3$的吸嘴类型为NZ$_2$，CP$_4$--CP$_8$的吸嘴类型为NZ$_3$  
	\end{tablenotes}    
	\end{threeparttable} 
\end{table}

\begin{figure}[htpb]
	\centering
	\includegraphics[scale=0.9]{chapter2/PCB.eps}
	\bicaption[ch2:figure:pcb]{}{电路板示意图}{Fig.$\!$}{Schematic of printed circuit board}
\end{figure}

\subsubsection{贴片头的任务分配实例}[Example of task assignment model for assembly heads]

表\ref{ch2:table:head_result}列出了贴片头在各拾贴周期分配的元件类型，元件分配类型决定了拾取槽位和装配的吸嘴类型，表\ref{ch2:table:feeder_result}给出了元件的供料器分配槽位。贴片头任务分配结果的拾贴周期数为5。以元件1为例，供料器分配结果为$f_{1, 19} = 1$，即元件1被分配到槽位19中。
以拾贴周期1为例，贴片头1--6拾取的元件类型分别为元件5、元件2、元件3、元件1、元件1和元件7，对应的拾取槽位分别为11、15、17、19、19和23，即$y_{\boldsymbol{11},1,\boldsymbol{1},1}=1$，$y_{\boldsymbol{15},1,\boldsymbol{2},1}=1$，$y_{\boldsymbol{17},1,\boldsymbol{3},1}=1$，$y_{\boldsymbol{19},1,\boldsymbol{4},1}=1$，$y_{\boldsymbol{19},1,\boldsymbol{5},1}=1$和$y_{\boldsymbol{23},1,\boldsymbol{6},1}=1$。
将拾贴周期1各贴片头拾取槽位转换为最左侧贴片头对齐的等效槽位，贴片头1、5的等效槽位$\hat{s}$均为11，贴片头2、3、4、6的等效槽位$\hat{s}$均为13，即$e_{\boldsymbol{11},1,1}=1$、$e_{\boldsymbol{13},1,1}=1$，该拾贴周期共计发生2次同步拾取，取料过程中等效槽位的跨度为2。
依此类推，拾贴周期2、3、4、5的拾取次数分别为2、2、3、2，共计11次；对应的拾取移动槽位分别是2、2、4、2，共计12个槽位。
吸嘴分配结果与元件分配结果一致，贴片头1和贴片头6装配有吸嘴NZ$_3$，贴片头2和头3装配有吸嘴NZ$_2$，贴片头4和头5装配有吸嘴NZ$_1$。拾贴周期3中贴片头1和拾贴周期5中贴片头6未拾贴元件，其装配吸嘴保持不变，整个组装过程的吸嘴更换次数为0。

\begin{table}
	\small
	\centering
	\bicaption[ch2:table:head_result]{}{贴片头任务分配模型的解}{Table $\!$}{Solution of head task assignment model}
	
	\begin{tabular}{p{2cm}<{\centering}p{1.5cm}<{\centering}p{1.5cm}<{\centering}p{1.5cm}<{\centering}p{1.5cm}<{\centering}p{1.5cm}<{\centering}p{1.5cm}<{\centering}}
		\toprule
		周期 &  H$_1$ & H$_2$ & H$_3$ & H$_4$ & H$_5$ & H$_6$  \\
		\midrule
		1 &  CP$_5$ & CP$_2$ & CP$_3$ & CP$_1$ & CP$_1$ & CP$_7$ \\
		2 &  CP$_5$ & CP$_2$ & CP$_3$ & CP$_1$ & CP$_1$ & CP$_7$ \\
		3 &   & CP$_2$ & CP$_3$ & CP$_1$ & CP$_1$ & CP$_8$ \\
		4 &  CP$_4$ & CP$_2$ & CP$_2$ & CP$_1$ & CP$_1$ & CP$_6$ \\
		5 &  CP$_4$ & CP$_2$ & CP$_3$ & CP$_1$ & CP$_1$ &  \\
		\bottomrule 
	\end{tabular}
\end{table}


\begin{table}
	\small
	\centering
	\bicaption[ch2:table:feeder_result]{}{贴片头任务分配模型中元件的供料器安装槽位}{Table $\!$}{Feeder slots for components of placement head task allocation model}
	
	\begin{tabular}{p{2cm}<{\centering}p{1cm}<{\centering}p{1cm}<{\centering}p{1cm}<{\centering}p{1cm}<{\centering}p{1cm}<{\centering}p{1cm}<{\centering}p{1cm}<{\centering}p{1cm}<{\centering}}
		\toprule
		元件 & CP$_1$ & CP$_2$ & CP$_3$ & CP$_4$ & CP$_5$ & CP$_6$ & CP$_7$ & CP$_8$ \\
		\midrule
		槽位 & 19 & 15 & 17 & 13 & 11 & 25 & 23 & 21 \\
		\bottomrule 
	\end{tabular}
\end{table}


\subsubsection{贴装过程的路径规划实例}[Example of path planning model for placement process]
贴装过程的路径规划讨论贴片机的悬臂移动过程。
在表\ref{ch2:table:pcb}给出的电路板数据和表\ref{ch2:table:head_result}的贴片头任务分配结果的约束下，贴装过程路径规划模型的解如表\ref{ch2:table:route_result}所示。
以拾贴周期1为例，悬臂上从供料器基座拾取本周期最后一个需要贴装的元件后，前往点24用贴片头1贴装元件，即$u_{\boldsymbol{24},1,\boldsymbol{1},1} = 1$；
随后依次用贴片头3放置元件至点13，即$w_{24, \boldsymbol{13}, 1, \left(1, \boldsymbol{3} \right), 1} = 1$; 
用贴片头2贴装元件至点20，即$w_{13, \boldsymbol{20}, 1, \left(3, \boldsymbol{2}\right), 1} = 1$;
用贴片头6贴装元件至点5，即$w_{20, \boldsymbol{5}, 1, \left(2, \boldsymbol{6}\right), 1} = 1$;
用贴片头4贴装元件至点6，即$w_{5, \boldsymbol{6}, 1, \left(6, \boldsymbol{4}\right), 1} = 1$;
用贴片头5贴装元件至点27，即$w_{6, \boldsymbol{27}, 1, \left(4, \boldsymbol{5}\right), 1} = 1$;
最后，悬臂完成当前拾贴周期的贴装任务后，出发返回供料器基座拾取下一个周期的元件，即$v_{27, 1, 5}=1$。
拾贴周期1的最后一次拾取动作由贴片头2和6在槽位17、25完成，对应的等效槽位为15；下一周期的首个拾取动作由贴片头1和6在槽位11、17完成，对应的等效槽位为11。
各拾贴周期拾取的元件类型和贴装点的元件类型相同。
图\ref{ch2:figure:route}以最左侧贴片头的位置为基准，展示了拾贴周期1的悬臂组装过程移动路径图。

\begin{figure}[H]
	\centering
	\includegraphics[scale=0.9]{chapter2/assembly-route-cycle.eps}
	\bicaption[ch2:figure:route]{}{第一个拾贴周期的悬臂移动路径}{Fig.$\!$}{Movement path of the gantry in the 1st PAP cycle}
\end{figure}

\begin{table}[H]
	\small
	\centering
	\bicaption[ch2:table:route_result]{}{贴装过程路径规划模型的解}{Table $\!$}{Solution of path planning model in placement process}
	
	\begin{tabular}{p{1cm}<{\centering}p{1cm}<{\centering}p{9cm}<{\centering}p{1cm}<{\centering}}
		\toprule
		周期 & 起始 & 贴装点访问顺序及贴片头作业顺序 & 返回   \\
		\midrule
		\multirow{2}{*}{1} & \multirow{2}{*}{$\hat{s} = 13$} & $p=24 \rightarrow
		 p=13 \rightarrow
		 p=20 \rightarrow
		 p=5 \rightarrow
		 p=6 \rightarrow
		 p=27 $ & \multirow{2}{*}{$\hat{s} = 11$}  \\
		& & $h=1 \, \rightarrow\,\,
		 h=3 \, \rightarrow\,\,
		 h=2 \, \rightarrow\,\,
		 h=6 \, \rightarrow\,\,
		 h=4 \, \rightarrow\,\,
		 h=5 $ & \\
		\cmidrule(lr){1-4}

		\multirow{2}{*}{2} & \multirow{2}{*}{$\hat{s} = 13$} & $p=23 \rightarrow
		 p=14 \rightarrow
		 p=17 \rightarrow
		 p=7 \rightarrow
		 p=9 \rightarrow
		 p=26 $ &  \multirow{2}{*}{$\hat{s} = 11$} \\
		& & $h=1 \, \rightarrow\,\,
		 h=3 \, \rightarrow\,\,
		 h=2 \, \rightarrow\,\,
		 h=6 \, \rightarrow\,\,
		 h=4 \, \rightarrow\,\,
		 h=5 $ &  \\
		\cmidrule(lr){1-4}

		\multirow{2}{*}{3} & \multirow{2}{*}{$\hat{s} = 13$} & $p=12 \rightarrow
		 p=18 \rightarrow
		 p=1 \rightarrow
		 p=4 \rightarrow
		 p=28 $ & \multirow{2}{*}{$\hat{s} = 11$}  \\
		& & $h=3 \, \rightarrow\,\,
		 h=2 \, \rightarrow\,\,
		 h=6 \, \rightarrow\,\,
		 h=4 \, \rightarrow\,\,
		 h=5 $ & \\
		\cmidrule(lr){1-4}

		\multirow{2}{*}{4} & \multirow{2}{*}{$\hat{s} = 15$} & $p=21 \rightarrow
		 p=16 \rightarrow
		 p=15 \rightarrow
		 p=10 \rightarrow
		 p=8 \rightarrow
		 p=25 $ & \multirow{2}{*}{$\hat{s} = 11$}  \\
		& & $h=1 \, \rightarrow\,
		 h=2 \, \rightarrow\,
		 h=3 \, \rightarrow\,
		 h=6 \, \rightarrow\,
		 h=4 \, \rightarrow\,
		 h=5 $ &  \\
		\cmidrule(lr){1-4}

		\multirow{2}{*}{5} &\multirow{2}{*}{$\hat{s} = 13$} & $p=22 \rightarrow
		 p=11 \rightarrow
		 p=19 \rightarrow
		 p=2 \rightarrow
		 p=3 $ & \multirow{2}{*}{$\hat{s} = 11$}  \\
		& & $h=1 \, \rightarrow\,\,
		 h=3 \, \rightarrow\,\,
		 h=2 \, \rightarrow\,\,
		 h=4 \, \rightarrow\,\,
		 h=5 $ & \\
		\bottomrule 
	\end{tabular}
\end{table}


\subsubsection{生产线的负载平衡实例}[Example of load balancing model for assembly line]
表面组装生产线负载平衡是不同元件分配给各贴片机的决策过程优化，同一类元件可能存在多个可用供料器，本小节假定有较多贴装点的元件1和元件2分别有3个和2个可用供料器，其余元件的可用供料器数为1。
表\ref{ch2:table:line_assignment}列出了表面组装生产线模型的分配结果。
以元件1为例，其分给贴片机1、贴片机2和贴片机3的点数分别为8、0和2，即$\sum_{k \in K} \sum_{h \in H} x_{1,k,h,\boldsymbol{1}} = 8$，$\sum_{k \in K} \sum_{h \in H} x_{1,k,h,\boldsymbol{2}} = 0$，$\sum_{k \in K} \sum_{h \in H} x_{1,k,h,\boldsymbol{3}} = 2$，各个类型元件分配的贴片机数不超过其可用供料器数的上限。
表\ref{ch2:table:line_performance}列出了各贴片机的优化子目标和加权目标值，贴片机的组装效率由加权性能指标的结果表示。由表可知，对于并列式贴片机，贴装点数不再是影响组装效率的唯一主要因素，拾取效率同样会对整体效率产生较大的影响。

\begin{table}[htbp]
	\small
	\centering
	\bicaption[ch2:table:line_assignment]{}{表面组装生产线的负载平衡后不同贴片机分到的各类元件贴装点数}{Table $\!$}{\centering Number of placement points assigned to each surface mounter after load balancing of the surface assembly line}
	
	\begin{tabular}{p{2cm}<{\centering}p{1cm}<{\centering}p{1cm}<{\centering}p{1cm}<{\centering}p{1cm}<{\centering}p{1cm}<{\centering}p{1cm}<{\centering}p{1cm}<{\centering}p{1cm}<{\centering}}
		\toprule
		 元件 & CP$_1$ & CP$_2$ & CP$_3$ & CP$_4$ & CP$_5$ & CP$_6$ & CP$_7$ & CP$_8$ \\
		\midrule
		贴片机1 & 8 & 0 & 0 & 0 & 0 & 0 & 0 & 0\\
		贴片机2 & 0 & 4 & 4 & 0 & 0 & 0 & 0 & 0\\
		贴片机3 & 2 & 2 & 0 & 2 & 2 & 1 & 2 & 1\\
		\cmidrule(lr){1-9}
		总数 & 10 & 6 & 4 & 2 & 2 & 1 & 2 & 1\\
		\bottomrule 
	\end{tabular}
\end{table}

\begin{table}[htbp]
	\small
	\centering
	\bicaption[ch2:table:line_performance]{}{表面组装生产线的负载平衡模型的主要性能指标}{Table $\!$}{	Main performance indexes of load balancing models for a surface assembly line}

	\begin{tabular}{p{1.2cm}<{\centering}p{1.2cm}<{\centering}p{1.2cm}<{\centering}p{2cm}<{\centering}p{2.4cm}<{\centering}p{1.6cm}<{\centering}p{1.2cm}<{\centering}}
		\toprule
		\multirow{2}{*}{贴片机} & \multicolumn{5}{c}{子目标} & \multirow{2}{*}{目标值}  \\
		\cmidrule(lr){2-6}
		 & 周期数 & 拾取数 & 吸嘴更换数 & 拾取移动槽位 & 拾贴点数 \\
		\midrule
		1 & 2 & 4 & 0 & 4 & 8 & 1.692 \\
		2 & 2 & 4 & 0 & 4 & 8 & 1.692 \\
		3 & 2 & 3 & 0 & 2 & 12 & 1.571 \\
		\bottomrule 
	\end{tabular}
\end{table}

\subsection{灵敏度分析}[Sensitivity analyses]

灵敏度分析旨在探究模型参数发生变动后，模型的最优解及其变化趋势的调整情况，进而评估模型对于参数变化的敏感性与稳定性。
在\ref{ch2:sub-section:example}节的模型实例演示中，分阶段模型的主要目标权重系数已通过线性拟合的方法获得。
本节将在此基础上，进一步分析模型优化过程中关键子目标的参数灵敏度。
在分阶段模型框架下，通过目标权重拟合所得的目标参数可能因组装数据的差异而出现参数值的变化，相比之下，依据贴装点间距离确定的目标参数模型结果则为确定值。因此，本节将探讨模型目标拟合权重系数（即$T^{\rm CY}$，$T^{\rm NZ}$，$T^{\rm PU}$，$T^{\rm PL}$和$T^{\rm PM}$）值的变动对贴片头任务分配模型及生产线负载平衡模型的最优解的影响。
表\ref{ch2:table:data-para}列出了用于灵敏度分析的PCB数据组1，并以贴片头数为6的并列式贴片机及由3台此类贴片机组成的组装生产线为对象，进行了模型的灵敏度分析。对于整数规划模型，原有模型中目标系数值和子目标的优化结果均会对参数的灵敏度分析产生影响，本节将参数变化范围的结果保留三位小数。


\begin{table}[htbp]
	\centering	
	\small
	\bicaption[ch2:table:data-para]{}{模型灵敏度分析的数据参数}{Table $\!$}{Data parameters for model sensitivity analysis}
	\begin{tabular}{p{3cm}<{\centering}p{1.5cm}<{\centering}p{1.5cm}<{\centering}p{1.5cm}<{\centering}p{1.5cm}<{\centering}p{1.5cm}<{\centering}}
	\toprule
	PCB & 1-1 & 1-2 & 1-3 & 1-4 & 1-5 \\
	\midrule
	吸嘴类型数 & 1 & 2 & 2 & 5 & 4\\
	元件类型数 & 1 & 2 & 2 & 3 & 8 \\
	可用供料器数 & 4 & 5 & 5 & 7 & 8 \\
	贴装点数 & 28 & 20 & 28 & 24 & 20 \\
	\bottomrule   
	\end{tabular}
\end{table}

表\ref{ch2:table:head-sensitivity}列出了贴片头任务分配模型中，目标参数变化对模型最优解的影响。
对于表面组装任务，贴片头中相关的关键子目标是决定组装效率的主要因素，本文认为子目标的值发生改变即最优解发生改变，并会对组装效率产生影响，表\ref{ch2:table:head-sensitivity}列出了各组数据主要目标值不变时参数的容许变化范围。
在主要目标中，周期项和元件拾取项存在着关联性，为了构成同步拾取，元件会被分配在不同的贴片头上，间接地降低了组装过程的周期数，从而使得周期项有相对大的可变化范围。
移动项因目标值较小、对组装效率贡献较低，因而容许变化范围较大。
拾取项和吸嘴更换项是决定组装效率的关键因素，其变化范围相对较小，反映了其对参数变化更加敏感。
可以看出，尽管参数的具体数值可能会因数据差异而有所调整，但这些调整有较大的容许变化范围使得模型的最优解保持不变，对组装效率不会产生影响，反映了组装过程模型的稳定性和鲁棒性。

\begin{table}[htbp]
	\small
	\centering
	\bicaption[ch2:table:head-sensitivity]{}{贴片头任务分配模型的参数灵敏度分析}{Table $\!$}{Parameter sensitivity analysis of head task assignment model}

	\begin{tabular}{p{1.2cm}<{\centering}
		p{0.8cm}<{\centering}p{0.1cm}<{\centering}p{0.8cm}<{\centering}
		p{1.1cm}<{\centering}p{0.1cm}<{\centering}p{1.1cm}<{\centering}
		p{0.8cm}<{\centering}p{0.1cm}<{\centering}p{0.8cm}<{\centering}
		p{1cm}<{\centering}p{0.1cm}<{\centering}p{0.8cm}<{\centering}}
		\toprule
		\multirow{2}{*}{PCB} & \multicolumn{12}{c}{目标项的参数} \\
		\cmidrule(lr){2-13}
		& \multicolumn{3}{c}{周期项： $T^{\rm CY}$}  & \multicolumn{3}{c}{吸嘴更换项： $T^{\rm NZ}$} & \multicolumn{3}{c}{拾取项： $T^{\rm PU}$}  & \multicolumn{3}{c}{移动项： $T^{\rm PM}$} \\
		\midrule
		1-1 & 0.279 & $\sim$ & $N$ 
			& \multicolumn{3}{c}{--} 
			& 0.000 & $\sim$ & 0.206 
			& 0.000 & $\sim$ & 0.041 \\
		1-2 & 0.030 & $\sim$ & $N$ 
			& \multicolumn{3}{c}{--} 
			& 0.000 & $\sim$ & $N$ 
			& 0.000 & $\sim$ & 0.326 \\
		1-3 & 0.120 & $\sim$ & $N$ 
			& 0.018 & $\sim$ & $N$ 
			& 0.060 & $\sim$ & 13.799 
			& 0.000 & $\sim$ & 0.079 \\
		1-4 & 0.030 & $\sim$ & $N$ 
			& 0.016 & $\sim$ & $N$ 
			& 0.000 & $\sim$ & 10.410 
			& 0.000 & $\sim$ & 0.326 \\
		1-5 & 0.060 & $\sim$ & $N$ 
			& 0.015 & $\sim$ & $N$ 
			& 0.030 & $\sim$ & $N$ 
			& 0.000 & $\sim$ & 0.158 \\
		\bottomrule 
	\end{tabular}
\end{table}

同理，表\ref{ch2:table:line-sensitivity}对生产线的负载平衡模型优化目标参数灵敏度进行了分析，选取了制约组装效率设备的主要子目标值作为评估最优解变化的基准。
在贴片头任务分配策略的基础上，进一步引入了贴装项的灵敏度分析。
由于生产线中周期项与贴装项之间存在关联性，平衡这两个子目标的过程呈现出相关性，从而使其有相对较大的允许变化范围。此外，拾取项的表现受到所分配元件类型及贴装点数的影响。在模型经过平衡优化后，拾取效率通常能达到较高水平，使得拾取项的参数变化范围相对较大。各项参数变化的影响和贴片头任务分配相同。对于生产线负载平衡模型，对小规模数据的负载均衡通常不会有吸嘴更换的动作，因而其参数变化不会对最优解产生影响。负载平衡模型其余主要目标参数值的可变化范围较大，其优化结果对目标参数的变化同样不敏感。


\begin{table}[H]
	\small
	\centering
	\bicaption[ch2:table:line-sensitivity]{}{生产线负载平衡模型的参数灵敏度分析}{Table $\!$}{Parameter sensitivity analysis of assembly line balancing model}

	\begin{tabular}{p{0.7cm}<{\centering}
		p{0.9cm}<{\centering}p{0.1cm}<{\centering}p{0.9cm}<{\centering}
		p{0.9cm}<{\centering}p{0.1cm}<{\centering}p{0.9cm}<{\centering}
		p{0.9cm}<{\centering}p{0.1cm}<{\centering}p{0.9cm}<{\centering}
		p{0.9cm}<{\centering}p{0.1cm}<{\centering}p{0.9cm}<{\centering}}
		\toprule
		\multirow{2}{*}{PCB} & \multicolumn{12}{c}{目标项的权重参数} \\
		\cmidrule(lr){2-13}
		 & \multicolumn{3}{c}{周期项： $T^{\rm CY}$} & \multicolumn{3}{c}{拾取项： $T^{\rm PU}$} & \multicolumn{3}{c}{移动项： $T^{\rm PM}$} & \multicolumn{3}{c}{贴装项：$T^{\rm PL}$} \\
		\midrule
		1-1 & 0.031 & $\sim$ & $N$ 
			& 0.157 & $\sim$ & 1.980
			& 0.157 & $\sim$ & 0.283 
			& 0.000 & $\sim$ & 0.326 \\
		1-2 & 0.034 & $\sim$ & $N$ 
			& 0.064 & $\sim$ & 0.305
			& 0.064 & $\sim$ & 0.305 
			& 0.000 & $\sim$ & 1.185 \\
		1-3 & 0.030 & $\sim$ & $N$ 
			& 0.000 & $\sim$ & $N$
			& 0.000 & $\sim$ & 0.348 
			& 0.000 & $\sim$ & 0.437 \\
		1-4 & 0.031 & $\sim$ & $N$ 
			& 0.000 & $\sim$ & 0.305
			& 0.000 & $\sim$ & 0.374 
			& 0.000 & $\sim$ & 0.326 \\
		1-5 & 0.000 & $\sim$ & $N$ 
			& 0.000 & $\sim$ & $N$
			& 0.000 & $\sim$ & 0.286 
			& 0.000 & $\sim$ & $N$ \\
		\bottomrule 
	\end{tabular}
\end{table}


\subsection{复杂度分析}[Complexity analyses]

模型的复杂度分析用于评估精确解法在解决实际问题时的难易程度，判断给定规模的问题需要的求解时间和内存空间。
贴片头任务分配模型的决策变量和约束数分别如式\eqref{ch2:equation:head-model-var}和式\eqref{ch2:equation:head-model-constr}所示，其中供料器槽位数$\left|S\right|$、贴片头数$\left|H\right|$和贴片机数$\left|M\right|$为与生产数据无关的常数，拾贴周期数$\left|K\right|$与贴装的点数$\left| P \right|$正相关。据此可知，贴片头任务分配模型变量和约束的规模均为$O\left( \left( \left| I \right| + \left| J \right|\right) \cdot \left| P \right| + \left| P \right| + \left| I \right| \right)$。对于复杂的PCB组装任务，其元件类型数和贴装点数同步增加将显著增加模型的规模。
\begin{equation}
	\Big\{ \left( \left| S \right| \cdot \left| I \right| + \left| S \right| + \left| I \right| + \left| J \right| \right) \cdot \left| K \right| \cdot \left| H \right| + 2 \cdot \left( \left| S \right| + 1 \right) \cdot \left| K \right| + 2 \cdot \left| S \right| \cdot \left| I \right| \Big\} \cdot \left| M \right|
	\label{ch2:equation:head-model-var}
\end{equation}
\begin{equation}
	\Big\{ \left( 4 + \left| I \right| \cdot \left| J \right| + \left| S \right| \cdot \left| I \right| \right) \cdot \left| K \right| \cdot \left| H \right| + \left( \left| S \right|^{2} + \left| S \right| + \left| J \right| \right) \cdot \left| K \right| + \left( \left| S \right| + 2 \right) \cdot \left| I \right| + \left| S \right| \Big\} \cdot \left| M \right|
	\label{ch2:equation:head-model-constr}
\end{equation}

贴装过程路径规划模型是在已知贴片头任务分配解的基础上构建的，其决策变量和约束数同贴装点数直接相关，分别如式\eqref{ch2:equation:route-model-var}和\eqref{ch2:equation:route-model-constr}所示。模型中的移动弧数$\left| A \right|$为与贴片头数$\left| H \right|$相关的常数，其变量和约束的规模均为$O\left(  \left| P \right|^3 + \left| P \right|^2 + \left| P \right|\right)$，贴装点数的增加会使得模型的规模迅速扩大。
\begin{equation}
	\left| P \right|^2 \cdot \left| K \right| \cdot \left| A \right| +  2 \cdot \left| P \right| \cdot \left| K \right| \cdot \left| H \right| + \left| P \right|^2 + 2 \cdot \left| P \right|
	\label{ch2:equation:route-model-var}
\end{equation}
\begin{equation}
	4 \cdot \left| P \right| \cdot \left| K \right| \cdot \left| H \right| + \left( 2 +   \left| H \right| \right) \cdot \left| K \right| + \left| P \right|^2 + 5 \cdot \left| P \right|
	\label{ch2:equation:route-model-constr}
\end{equation}


生产线负载均衡模型是贴片头任务分配模型的进一步拓展，其决策变量数在式\eqref{ch2:equation:head-model-var}的基础上增加了$\left| I \right|$项，约束数则为式\eqref{ch2:equation:head-model-constr}和式\eqref{ch2:equation:line-model-constr}之和，对应的规模分别为$O\left( \left( \left| I \right| + \left| J \right|  \right) \cdot \left| P \right| + \left| I \right| + \left| J \right|\right)$和$O\left( \left( \left| I \right| + \left| J \right|  \right) \cdot \left| P \right| + \left| I \right|\right)$，负载均衡的分配方式并未降低模型的复杂度。
\begin{equation}
	\left( \left| S \right| \cdot \left| I \right| + \left| S \right| + 2 \cdot  \left| I \right| \right) \cdot \left| M \right| + \left| I \right| + \left| J \right| + \left(\left| M \right|^2 + \left| M \right| \right) \cdot \left| Q \right|
	\label{ch2:equation:line-model-constr}
\end{equation}

上述分析说明了本文所研究的表面组装过程优化问题的复杂性，多阶段的数学规划模型求解方法受问题规模的影响较大。在处理大规模数据时，模型计算时间的急剧增长成为优化的瓶颈，因而需要采用启发式或近似算法进行替代，通过适度放宽最优性标准来获取可接受的计算效率。
传统的（混合）整数规划模型的规模主要取决于变量和约束的数量、问题结构、计算资源等因素，在常规的计算资源配置下，现有算法在可接受时间范围内能有效处理的问题规模上限为决策变量数量级小于$10^4$、约束数量级小于$5 \times 10^4$。
在PCB组装的应用场景中，模型复杂度主要取决于元件类型数和贴装点数两个维度，而本文所求解的大规模PCB数据通常元件类型数与贴装点数之积约为$2 \times 10^3$及其以上，远超出常规求解器的处理能力范围，需要进一步改进模型或设计启发式算法解决此类优化问题。


\section{本章小结}[Summary of this chapter]

% 本章对贴片机及其生产线的表面组装过程优化进行了详细阐述，分析了影响组装过程效率的主要约束与性能指标，设定了问题的假设条件，对其数学模型的构建进行了适当的简化。
% 在建模策略上，贴片机表面组装过程被分解为贴片头任务分配与贴装过程路径规划两部分。本章研究了贴片头任务分配模型中子目标与决策变量之间的内在关系，以影响组装效率的关键因素为优化目标，并依据工具匹配性、资源有限性及机械动作限位等约束条件，构建了整数线性规划模型。
% 本章根据贴片头任务分配的结果，确定了贴装过程路径规划模型的参数设定，将其视为中心位置已知的带约束的多拾贴周期路径规划问题；同时，综合考虑了贴片头作业顺序对移动路径的影响，以最小化悬臂移动路径为目标，构建了混合整数线性规划模型。
% 此外，本章以加权子目标评估组装效率，将工具有限性约束扩展至整个生产线，结合了可分配贴片机限制与拾贴作业顺序限制等条件，建立了负载平衡的最小-最大整数线性规划模型。
% 本章还讨论了模型的线性化处理技术，以确保模型的实用性和可解性，并通过引入一个电路板实例说明了模型的可行性。

本章阐述了贴片机及其生产线的表面组装过程优化问题，分析了影响组装过程效率的主要约束与性能指标。
在建模策略上，
% 贴片机的表面组装过程被分解为贴片头任务分配与贴装过程路径规划两部分。
本章以影响组装效率的关键因素为优化目标，依据工具匹配性、资源有限性及机械结构等约束条件，构建了贴片头任务分配的整数线性规划模型；根据贴片头任务分配的结果，确定了贴装过程路径规划模型的参数，将其视为中心位置已知的带约束的多拾贴周期路径规划问题，以最小化悬臂移动路径为目标，构建了混合整数线性规划模型。
此外，本章以加权子目标评估贴片机的组装效率，将工具有限性等约束扩展至生产线，并结合可分配贴片机与组装优先级等限制，建立了负载平衡的最小-最大整数线性规划模型。
最后，本章通过引入电路板实例说明了模型的可解性和可行性，并对模型的参数灵敏度和复杂度进行了分析。