CN109800936B - 基于树状搜寻的调度方法与使用该方法的电子装置 - Google Patents
基于树状搜寻的调度方法与使用该方法的电子装置 Download PDFInfo
- Publication number
- CN109800936B CN109800936B CN201810108724.6A CN201810108724A CN109800936B CN 109800936 B CN109800936 B CN 109800936B CN 201810108724 A CN201810108724 A CN 201810108724A CN 109800936 B CN109800936 B CN 109800936B
- Authority
- CN
- China
- Prior art keywords
- scheduling
- processes
- priority
- candidate
- dispatching
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 331
- 238000004519 manufacturing process Methods 0.000 claims abstract description 67
- 238000004088 simulation Methods 0.000 claims abstract description 25
- 238000001914 filtration Methods 0.000 claims description 18
- 230000000977 initiatory effect Effects 0.000 claims 1
- 230000000875 corresponding effect Effects 0.000 description 25
- 238000010586 diagram Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000010845 search algorithm Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000002068 genetic effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41865—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/04—Manufacturing
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32252—Scheduling production, machining, job shop
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32266—Priority orders
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32269—Decision, of job release, select job to be launched next in shop
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32306—Rules to make scheduling decisions
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/34—Director, elements to supervisory
- G05B2219/34379—Job management
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/45—Nc applications
- G05B2219/45031—Manufacturing semiconductor wafers
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Quality & Reliability (AREA)
- Entrepreneurship & Innovation (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Software Systems (AREA)
- Automation & Control Theory (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Educational Administration (AREA)
- Operations Research (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- General Factory Administration (AREA)
Abstract
本公开内容公开了一种基于树状搜寻的调度方法与使用此方法的电子装置。此方法先接收多笔工单并且起始调度,其中各笔工单中包括多个制作工序。此方法从各笔工单中选择尚未加入调度并且制造流程排序最前的制作工序,以选出多个优先工序。依据多个派工法则计算所述多个优先工序的执行优先顺序,并且依据执行优先顺序从所述多个优先工序中选择多个候选工序。接着,分别将所述多个候选工序列为调度中可供调度的下一个工序,并且依据上述的派工法则进行调度模拟,以取得所述多个候选工序的多个调度指标。最后,依据所取得的调度指标来进行调度。
Description
技术领域
本公开内容涉及一种调度方法与使用该方法的电子装置。
背景技术
对于半导体、计算机设备、电子业和电路板等制造业者来说,目前市面上的调度系统或软件工具的价格昂贵,并且无法订制化以符合使用上的需求。
目前调度技术的主要核心方向包括精确解(exact method)、派工法则(dispatching rule)以及启发式搜寻法(metaheuristic)三种。精确解例如分支定界(branch and bound),常应用于实验室或研究机构,虽能够取得调度的最佳解,但由于所花费的时间极长而不适用于产业当中。派工法则例如G&T(Giffler and Thompson)算法,可以在短时间内完成调度,但质量不理想。启发式搜寻法例如基因算法(Genetic algorithm),虽然在问题规模(例如,工作单量、机台数量等)较小的时候可以在短时间内完成质量良好的调度,但是随着问题规模增大,所需的处理时间会大幅增加。
据此,提出一种能够因应使用者不同需求、准确且处理时间短的调度方法是本领域技术人员所共同致力的目标。
发明内容
本公开内容公开了一种基于树状搜寻的调度方法与使用此方法的电子装置,能够在合理的时间内取得良好的调度质量。
本公开内容的基于树状搜寻的调度方法适用于电子装置。此方法先接收多笔工单并且起始调度,其中各笔工单中包括多道制作工序。此方法还从各笔工单中选择尚未加入调度并且制造流程排序最前的制作工序,以选出多道优先工序。依据多个派工法则计算这些优先工序的调度执行优先顺序,并且依据调度执行优先顺序从这些优先工序中选择多道候选工序。接着,这些候选工序为调度中下一道可供调度的工序,并且依据上述的派工法则进行调度模拟,以取得这些候选工序的多个调度指标。最后,依据所取得的调度指标来进行调度。
本公开内容的电子装置包括接收组件、存储组件、以及处理器。接收组件用以接收数据。存储组件用以存储多个模块。处理器耦接于接收组件以及存储组件,并且用以加载并执行这些模块。这些模块包括数据撷取模块、树状调度模块、节点过滤模块以及节点选取模块。数据撷取模块用以透过接收组件接收多笔工单,其中各笔工单包括多道制作工序。树状调度模块用以起始调度。节点过滤模块用以选择各笔工单中尚未加入该调度,且制造流程排序最前的制作工序,以取得这些工单的多道优先工序。节点过滤模块更用以依据多个派工法则计算这些优先工序的调度执行优先顺序,并且依据调度执行优先顺序从这些优先工序中选择多道候选工序。节点选取模块用以分别将候选工序列为可供调度的下一道工序,并且依据所选择的派工法则对此些候选工序进行调度模拟,以取得此些候选工序的多个调度指标。树状调度模块更用以依据此些调度指标来进行调度。
基于上述,本公开内容实施例所提出的基于树状搜寻的调度方法以及使用此方法的电子装置,能够同时采用多个派工法则,藉由多个派工法则的群体决策来有效地降低误排的风险。此外,本公开内容实施例中所采用的派工法则是可以被选择,并且再利用树状搜寻的算法来逐层进行调度。据此,在调度时能够良好地适应使用者的需求。
为让本公开内容的上述特征和优点能更明显易懂,以下将参照附图详细说明本公开内容的实施例。
附图说明
图1示意性示出了本公开内容一实施例的电子装置的概要方块图。
图2示意性示出了本公开内容一实施例的调度方法的流程图。
图3示意性示出了本公开内容一实施例的知识库的示意图。
图4A至图4F示意性示出了本公开内容一实施例的调度方法的示意图。
图5A至图5F示意性示出了本公开内容一实施例的调度方法的示意图。
图6A至图6C示意性示出了本公开内容一实施例的调度方法的示意图。
符号说明
100:电子装置
110:接收组件
120:存储组件
121:数据撷取模块
122:树状调度模块
123:节点过滤模块
124:节点选取模块
130:处理器
GT1~GT6:甘特图
R:根节点
RL:知识库
S210~S270:基于树状搜寻的调度方法的步骤
SI:调度指标
TR:树状拓扑
具体实施方式
为使本公开内容的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开内容作进一步的详细说明。
本公开内容实施例所提出的调度方法同时采用多个派工法则,由群体决策来有效地降低误排的风险。特别是,本公开内容在进行调度时所采用的多个派工法则可依据当前调度的需求及目标(例如,最小化总完工时间、迟交个数最少等)来从知识库中选择,并且在选出所采用的派工法则后,利用树状搜寻的算法来逐层进行调度。因此,本公开内容实施例所提出的调度方法能够因应使用者不同的需求来进行调度,并且同时具有合理的处理时间与良好的调度质量。
图1示意性示出了本公开内容一实施例的电子装置的概要方块图。请参考图1,本公开内容的调度方法适用于电子装置100。电子装置100例如是个人计算机(personalcomputer,PC)、工作站(work station)、服务器(server)、笔记本电脑(notebook)、个人数字助理(personal digital assistant,PDA)、智能型手机(smart phone)、平板计算机(tablet PC)等具有运算能力的电子装置,本公开内容并不在限于此。电子装置100包括接收组件110、存储组件120以及处理器130。
接收组件110用以从外部接收各种数据。在一实施例中,接收组件110可用以接收欲调度的多笔工单。在另一实施例中,接收组件110可用以接收调度时的调度目标(例如,最小化总完工时间、准交率最高等)。接收组件110可以是电子装置100的键盘、鼠标、麦克风或触控屏幕等输入设备,也可以是数据撷取卡或网络适配器等,本公开内容并不限于此。
存储组件120用以存储数据,可以是任意型式的同定式或可移动式随机存取内存(Random Access Memory,RAM)、只读存储器(Read-Only Memory,ROM)、闪存(Flashmemory)、硬盘或其他类似装置或这些装置的组合,而用以记录可由处理器130执行的多个模块,这些模块可加载处理器130以对接收组件110所接收到的多笔工单进行调度。
处理器130可以是中央处理单元(Central Processing Unit,CPU),或是其他可程序化之一般用途或特殊用途的微处理器(Microprocessor)、数字信号处理器(DigitalSignal Processor,DSP)、可程序化控制器、特殊应用集成电路(Application SpecificIntegrated Circuits,ASIC)、可程序化逻辑设备(Programmable Logic Device,PLD)或其他类似装置或这些装置的组合。处理器130耦接于接收组件110与存储组件120,而可存取并执行记录在存储组件120中的模块,以对接收组件110所接收到的多笔工单进行调度。
上述模块至少包括数据撷取模块121、树状调度模块122、节点过滤模块123以及节点选取模块124。这些模块例如是固件或计算机程序,被加载至处理器130来对多笔工单执行本公开内容实施例的基于树状搜寻的调度方法。以下即举实施例说明本公开内容基于树状搜寻的调度方法的详细步骤。
图2示意性示出了本公开内容一实施例的调度方法的流程图。请参照图2,本实施例的方法适用于图1实施例的电子装置100,以下即搭配电子装置100中的各项组件说明本公开内容的基于树状搜寻的调度方法的详细步骤。
在步骤S200中,处理器130会建立知识库并将其记录于存储组件120中。在一实施例中,知识库中记录有多个可用派工法则以及各个可用派工法则与多个调度目标之间的多个相关性。
图3示意性示出了本公开内容一实施例的知识库的示意图。请参考图3,知识库(Rule Library)RL所记录的多个可用派工法则例如包括最短处理时间(ShortestProcessing Time,SPT)、先进先出(First In,First Out,FIFO)、到达时间(Arrival Time,AT)、到达时间-总剩余处理时间(Arrival Time-Total Remaining Process Time,AT-RPT)以及修正交期(Modified Due Date,MDD)等等。本领域技术人员可以从派工法则的相关文献中获得上述各个可用派工法则的介绍与说明,故在此不再一一详述。调度目标可以为最小化总完工时间、最小化订单延迟时间以及准交率最高等。类似地,本领域技术人员可以从派工法则的相关文献中获得上述各个调度目标的介绍与说明,故在此不再一一详述。
在本实施例中,各个可用派工法则与多个调度目标之间的相关性是以黑点数量为表示,黑点数量越多表示相关性越高,反之,黑点数量越少表示相关性越低。明确地说,黑点数量越多表示对应的可用派工法则越能够满足对应的调度目标,而黑点数量越少表示对应的可用派工法则与对应的调度目标之间越无关联。知识库RL中所记录的相关性可以从派工法则的相关文献中收集并整理出来,本公开内容并不限于此。
如图3所示,SPT法则与最小化总完工时间、最小化订单延迟时间以及准交率最高的相关性皆为三个黑点;FIFO法则与最小化总完工时间、最小化订单延迟时间以及准交率最高的相关性分别为三个、一个以及三个黑点;AT-RPT法则与最小化总完工时间、最小化订单延迟时间以及准交率最高的相关性分别为三个、五个以及三个黑点;MDD法则与最小化总完工时间、最小化订单延迟时间以及准交率最高的相关性分别为一个、三个以及三个黑点。
从另一观点来看,针对同一调度目标而言,具有越多黑点数的可用派工法则表示其越能够满足此调度目标。举例而言,使用SPT法则比使用MDD法则更能够满足最小化总完工时间的调度目标;而使用MDD法则比使用FIFO法则更能够满足最小化订单延迟时间的调度目标,以此类推。
值得一提的是,图3实施例的知识库RL内容可以由数据撷取模块121将从公元1994年至今的派工法则的相关文献中统计整理所得,用以作为说明用示范例,但本公开内容并不在此限制知识库RL的内容与表示方式。本领域技术人员应当可依其需求来表示、新增或修改知识库RL的内容。
此外,本公开内容亦不在此限制知识库RL的建立方式。在其他实施例中,电子装置100可以预先透过接收组件110接收知识库RL并将其存储在存储组件120中,然后跳过步骤S200而直接从步骤S210开始本公开内容的基于树状搜寻的调度方法。
在步骤S210中,处理器130会通过接收组件110接收多笔工单,并且取得各笔工单的制作工序。具体来说,处理器130的数据撷取模块121会通过接收组件110接收多笔工单,一笔工单可以是用来制造一个工件,其中会包括多道制作工序以及各道制作工序的工时信息,而数据撷取模块121会将上述的信息从所接收的工单中撷取出来。
如下表1所示,在本实施例中,接收组件110接收到三笔工单J1、J2与J3。工单J1包括两道工序;工单J2包括三道工序;而工单J3包括两道工序。以工单J1来说,两道工序依序是执行机台M1、12个时间单位以及执行机台M4、15个时间单位,以此类推。括号里的数字用以代表所需的时间单位数。
J1 | M1(12) | M4(15) | |
J2 | M3(10) | M2(9) | M4(15) |
J3 | M2(9) | M1(12) |
表1
必须说明的是,在本实施例中,一道制作工序执行时会占用某一特定的制造机台,因此,使用同一制造机台的两道以上制作工序并不能在同一时间执行。
在接收到多笔工单之后,在步骤S220中,处理器130会选择至少一个调度目标。在本实施例中,所选的调度目标例如是知识库RL中所记录的其中一个或多个调度目标。举例而言,使用者可例如是经过厂商需求访谈,并理解了厂商需求后再依需求来输入调度目标。接收组件110会接收来自外部(例如,用户输入)的选择讯号。在本实施例中,选择讯号例如是选择最小化总完工时间作为调度目标。在另一实施例中,调度目标除了最小化总完工时间之外,还包括最小化订单延迟时间等,本公开内容并不在此限制选择用来调度的调度目标。应用本公开内容者可自行依需求来选择一个或多个调度目标,以增加调度时的弹性。
在步骤S230中,处理器130会依据所选择的调度目标,从知识库RL中选择多个派工法则。具体来说,处理器130会通过节点过滤模块123,依据知识库RL中所记录的相关性,来挑选出与所选的调度目标相关性较高的多个派工法则。在本实施例中,处理器130会挑选出三个派工法则,但本公开内容并不限制所选的派工法则的数量。在其他实施例中,派工法则亦可是由用户来自行从知识库RL中选择。
请参考图3,由于在本实施例中的调度目标为最小化总完工时间,因此处理器130会选择SPT、FIFO以及AT-RPT三个法则。在选择了派工法则后,开始对工单的制作工序进行调度。在本实施例中,处理器130会通过树状调度模块122来起始一个调度,建立树状拓扑的根节点。
在步骤S240中,处理器130会选择各笔工单中尚未加入调度,且制造流程排序最前的制作工序,以取得所接收的多笔工单的多道优先工序。明确地说,处理器130会通过节点过滤模块123选出各工单中待调度的第一道制作工序,来展开树状拓扑TR的第一层节点。
图4A至图4F示意性示出了本公开内容一实施例的调度方法的示意图。图4A至图4F以表1中的三笔工单J1、J2、J3为例,来说明本实施例的调度方法。在本实施例中,除了根节点R之外,树状拓扑TR中的一个节点是用来表示一道制作工序,而就在较下层才加入调度的节点来说,其运行时间不早于在较上层就加入调度的节点的运行时间。必须说明的是,在本公开内容的实施例中,各个节点将以(工单,机台)的方式来表示一道制作工序。请再参照表1,以工单J1为例,其第一道制作工序所执行的是机台M1,故将其表示为(J1,M1),第二道制作工序所执行的是机台M4,故将其表示为(J1,M4),以此类推。
如图4A所示,在尚未有制作工序加入调度时,表1的三笔工单J1、J2与J3中待调度的第一道制作工序分别是(J1,M1)、(J2,M3)与(J3,M2)。因此,处理器130的节点过滤模块123会在步骤S240从三笔工单J1、J2与J3的多道制作工序中选出优先工序(J1,M1)、(J2,M3)与(J3,M2),再将根节点R作为起始节点,开始向树状拓扑的第一层展开节点。在本实施例中,树状拓扑TR的第一层节点为优先工序(J1,M1)、(J2,M3)与(J3,M2)。
在步骤S250中,处理器130会依据所选的多个派工法则,来计算优先工序的调度执行优先顺序,并且依据调度执行优先顺序来从优先工序中选出多道候选工序。具体来说,处理器130会先透过节点过滤模块123,分别依据派工法则来排序优先工序进而得到候选工序。
如图4B所示,依据SPT法则排序优先工序(J1,M1)、(J2,M3)、(J3,M2)时,以工时作为优先指标。从表1的各笔工单中可以看出,由于优先工序(J1,M1)、(J2,M3)、(J3,M2)所需耗费的工时分别为12、10、9个时间单位,因此优先工序(J1,M1)、(J2,M3)、(J3,M2)的排序分别为3、2、1。换句话说,在依据SPT法则进行调度时,工序(J3,M2)会优先于工序(J2,M3),且工序(J2,M3)会优先于工序(J1,M1)。
依据FIFO法则排序优先工序(J1,M1)、(J2,M3)、(J3,M2)时,由于调度中并没有任何工序,因此优先工序(J1,M1)、(J2,M3)、(J3,M2)的排序相同。在本实施例中,相同的排序皆设定为1,但不限于此。
依据AT-RPT法则排序优先工序(J1,M1)、(J2,M3)、(J3,M2)时,处理器130例如会分别计算到达时间与总剩余处理时间的差,以作为优先指标。举例来说,优先工序(J1,M1)的到达时间为0,而总剩余时间为27(12+15=27),因此优先工序(J1,M1)的优先指标为-27(0-(12+15)=-27)。同理,优先工序(J2,M3)的优先指标为-34(0-(10+5+9)=-34);而优先工序(J3,M2)的优先指标为-21(0-(12+9)=-21)。在本实施例中,优先指标越小的工序越优先,因此优先工序(J1,M1)、(J2,M3)、(J3,M2)的排序分别为2、1、3。换句话说,在依据AT-RPT法则进行调度时,工序(J2,M3)会优先于工序(J1,M1),且工序(J1,M1)会优先于工序(J3,M2)。
值得一提的是,不同的派工法则所对应的优先指标计算方式也不相同,而本领域技术人员可从派工法则的相关文献中习得各种派工法则对应的优先指标的计算方式,在本公开内容中不再一一赘述。
随后,处理器130会透过节点过滤模块123,分别整合优先工序对应各个派工法则的多个排序,以取得调度执行优先顺序。
从图4B中可以看出,优先工序(J1,M1)对应SPT、FIFO、AT-RPT法则的排序分别为3、1、2;优先工序(J2,M3)对应SPT、FIFO、AT-RPT法则的排序分别为2、1、1;优先工序(J3,M2)对应SPT、FIFO、AT-RPT法则的排序分别为1、1、3。在本实施例中,处理器130会分别计算优先工序(J1,M1)、(J2,M3)、(J3,M2)的排序的平均值,以取得调度执行优先顺序。具体来说,优先工序(J1,M1)的排序的平均值为2;优先工序(J2,M3)的排序的平均值为1.333;而优先工序(J3,M2)的排序的平均值为1.667。因此,优先工序(J1,M1)、(J2,M3)、(J3,M2)的调度执行优先顺序为2、1.333、1.667。
在另一实施例中,处理器130也可例如是计算优先工序对应各个派工法则的排序的加权平均值,以取得调度执行优先顺序,而非只是计算平均值。举例而言,处理器130可依据各个派工法则与调度目标的相关性来设定权重。当派工法则对应于调度目标的相关性越高时,设定越高的权重,而当派工法则对应于调度目标的相关性越低时,设定越低的权重,本公开内容并不限于此。
在一些实施例中,两道或两道以上的优先工序例如会具有相同的最低调度执行优先顺序。在此情况下,处理器130例如会随机地从中过滤其中之一,或例如修正所设定的权重值来重新计算,本公开内容并不限于此。
接着,处理器130会透过节点过滤模块123,依据调度执行优先顺序来从优先工序中选出多道候选工序。换句话说,节点过滤模块123会依据调度执行优先顺序来过滤掉至少一道优先工序。在本实施例中,处理器130通过节点过滤模块123过滤掉一道优先工序,但本公开内容并不限制所过滤的优先工序的数量。
请再参考图4B,从所取得调度执行优先顺序可知,优先工序(J1,M1)具有最低的调度执行优先顺序。因此,处理器130会将优先工序(J1,M1)过滤掉,而留下优先工序(J2,M3)、(J3,M2)作为候选工序。
在步骤S260中,处理器130会分别将多个候选工序列为调度中可供调度的下一个工序,并且依据各个派工法则来进行调度模拟,以取得多个候选工序的多个调度指标。具体来说,处理器130会通过存储组件120中的节点选取模块124,分别将多个候选工序列为调度中可供调度的下一道工序,然后分别依据多个派工法则对多道候选工序进行调度模拟,以计算多道候选工序对应于各个派工法则的多个模拟调度结果。
请参考图4C,在本实施例中,处理器130将候选工序(J2,M3)列为调度的下一道工序,此时调度中的调度前置状态仅包括一道制作工序(J2,M3)。当调度进行到树状拓扑的第二层、第三层或更多层时,调度前置状态中的工序数量将随之增加。随后,处理器130会分别依据SPT、FIFO、AT-RPT法则来进行调度模拟,以取得如甘特图GT1至GT3的模拟调度结果。另一方面,当处理器130将候选工序(J3,M2)列为调度的下一道工序,此时调度中的调度前置状态仅包括一道制作工序(J3,M2)。随后,处理器130会分别依据SPT、FIFO、AT-RPT法则来进行调度模拟,以取得如甘特图GT4至GT6的模拟调度结果。
举例来说,甘特图GT1是将制作工序(J2,M3)列为调度中的第一道工序,并依据SPT法则来排序工单J1、J2、J3的模拟调度结果。从甘特图GT1可以看出,当制作工序(J2,M3)列为调度中的第一道工序,且依据SPT法则来进行调度模拟时,工单J1、J2、J3所需的总完工时间为63个时间单位。以此类推,当制作工序(J2,M3)列为调度中的第一道工序,且依据FIFO法则来进行调度模拟时,工单J1、J2、J3所需的总完工时间为42个时间单位;而当依据AT-RPT法则来进行调度模拟时,工单J1、J2、J3所需的总完工时间亦为42个时间单位。
举另一例来说,甘特图GT4是将制作工序(J3,M2)列为调度中的第一道工序,并依据SPT法则来排序工单J1、J2、J3的模拟调度结果。从甘特图GT4可以看出,当制作工序(J3,M2)列为调度中的第一道工序,且依据SPT法则来进行调度模拟时,工单J1、J2、J3所需的总完工时间为49个时间单位。以此类推,当制作工序(J3,M2)列为调度中的第一道工序,且依据FIFO法则来进行调度模拟时,工单J1、J2、J3所需的总完工时间为42个时间单位;而当依据AT-RPT法则来进行调度模拟时,工单J1、J2、J3所需的总完工时间亦为42个时间单位。
在取得多个模拟调度结果之后,处理器130会分别整合多个调度前置状态对应于各个派工法则的模拟调度结果,以取得候选工序的调度指标。
如图4D所示,候选工序(J2,M3)对应SPT、FIFO、AT-RPT法则的总完工时间分别为63、42、42个时间单位,处理器130会计算出上述总完工时间的平均值并将其作为候选工序(J2,M3)的调度指标。在本实施例中,候选工序(J2,M3)的调度指标为49个时间单位。另一方面,候选工序(J3,M2)对应SPT、FIFO、AT-RPT法则的总完工时间分别为49、42、42个时间单位,处理器130会计算出上述总完工时间的平均值并将其作为候选工序(J3,M2)的调度指标。在本实施例中,候选工序(J3,M2)的调度指标为44.3个时间单位。
类似地,在另一实施例中,处理器130也可例如是计算候选工序对应各个派工法则的总完工时间的加权平均值,以取得对应的调度指标,而非只是计算平均值。举例而言,处理器130可依据各个派工法则与调度目标的相关性来设定权重。当派工法则对应于调度目标的相关性越高时,设定越高的权重,而当派工法则对应于调度目标的相关性越低时,设定越低的权重,本公开内容并不限于此。
类似地,在一些实施例中,两道或两道以上的候选工序例如具有相同的最佳调度指标。在此情况下,处理器130例如会选择这些候选工序中,调度执行优先顺序较高的候选工序作为当选工序,或是随机地从此些候选工序中选择其中之一作为当选工序,或是修正所设定的权重值来重新计算,本公开内容不限于此。
在步骤S270中,处理器130会依据调度指标来进行调度。在本实施例中,处理器130会通过节点选取模块124选择最佳的调度指标所对应的候选工序来作为当选工序,并且通过树状调度模块122将所选出的当选工序加入为调度中的下一道工序。
如图4D所示,由于候选工序(J3,M2)的调度指标为44.3,小于候选工序(J2,M3)的调度指标49。因此,对于最小化总完工时间的调度目标来说,候选工序(J3,M2)的调度指标优于候选工序(J2,M3)的调度指标。更明确地说,候选工序(J3,M2)的调度指标为在树状拓扑TR的当前层中的最佳调度指标,而候选工序(J2,M3)的调度指标为在树状拓扑TR的当前层中的次佳调度指标。在本实施例中,对应于最佳调度指标的候选工序(J3,M2)会被选为当选工序,并且此当选工序会被加入为调度的下一道工序。
基于上述的步骤S240至步骤S270,可展开树状拓扑中的第一层节点,并从中选出其中之一来加入调度。类似地,以选中的节点作为新的起始节点,并且重复步骤S240至步骤S270,便能够再次展开树状拓扑TR中的第二层节点,并从中选出其中之一来加入调度,以此类推。
在本实施例中,如图4E所示,将制作工序(J3,M2)当作新的起始节点,处理器130可展开第二层的节点,分别为制作工序(亦称优先工序)(J1,M1)、(J2,M3)、(J3,M1)。随后,处理器130会以类似的方式从中挑选出候选工序(J1,M1)、(J2,M3),并更从中选出当选工序(J1,M1)。其中,从工单J1、J2、J3的多道制作工序中选出优先工序、从优先工序中挑选候选工序,以及从候选工序中选出当选工序的方式已于前述段落中详细说明,故在此不再赘述。
通过不断重复步骤S240至步骤S270,工单J1、J2、J3的制作工序将会被一一加入调度之中,最后获得如图4F中甘特图与树状拓扑TR所示的调度结果,其中调度中的制作工序依序为(J3,M2)、(J1,M1)、(J2,M3)、(J2,M2)、(J1,M4)、(J3,M1)、(J2,M4),而总完工时间为42个时间单位。
在一实施例中,某些特定工单属于急件,因此除了最小化总完工时间之外,更增加最小化订单延迟时间作为调度目标来选择派工法则。以下将举另一实施例说明以不同调度目标来选择派工法则的情境,前述段落已介绍过的步骤细节将不再赘述。
在本实施例中,以下表2作为接收组件110所接收到的工单,表2与表1的差别在于,表2的最后一个字段中增加了工单的交期信息,用以要求各工单的完成时间。举例来说,工单J1的交期为60个时间单位;工单J2的交期为40个时间单位;而工单J3的交期为38个时间单位。
J1 | M1(12) | M4(15) | 60 | |
J2 | M3(10) | M2(9) | M4(15) | 40 |
J3 | M2(9) | M1(12) | 38 |
表2
若以产距倍数(交期/最少所需工时)作为指标,工单J1的产距倍数为2.2(60/(12+15)=2.2),工单J2的产距倍数为1.1(40/(10+9+15)=1.1),工单J3的产距倍数为1.8(38/(9+12)=1.8)。因此,在本实施例中,工单J2相对来说是为急单。
基于最小化订单延迟时间的调度目标,本实施例将不会再选择FIFO法则。具体请参考图3,FIFO法则与最小化订单延迟时间的相关性低(一个黑点),因此,本实施例中将会选择与最小化订单延迟时间的调度目标较为相关的SPT、AT-RPT与MDD法则。
图5A至图5F示意性示出了本公开内容一实施例的调度方法的示意图。请参考图5A至图5F,如图5A所示,本实施例中所展开的第一层节点为制作工序(亦称优先工序)(J1,M1)、(J2,M3)、(J3,M2)。
如图5B所示,依据SPT法则,优先工序(J1,M1)、(J2,M3)、(J3,M2)的排序分别为3、2、1;依据AT-RPT法则,优先工序(J1,M1)、(J2,M3)、(J3,M2)的排序分别为2、1、3。
依据MDD法则排序优先工序(J1,M1)、(J2,M3)、(J3,M2)时,处理器130例如会分别计算“交期”与“现在时间加上总剩余处理时间”的最大值,以作为优先指标。举例来说,优先工序(J1,M1)的交期为60个时间单位,而现在时间加上总剩余处理时间为27(0+27=27)个时间单位,因此优先工序(J1,M1)的优先指标为60。同理,优先工序(J2,M3)的优先指标为40(Max{40,0+34}=40);而优先工序(J3,M2)的优先指标为38(Max{38,0+21}=38)。因此,优先工序(J1,M1)、(J2,M3)、(J3,M2)的排序分别为3、2、1。换句话说,在依据MDD法则进行调度时,工序(J3,M2)会优先于工序(J2,M3),且工序(J2,M3)会优先于工序(J1,M1)。
在本实施例中,如图5B所示,处理器130会依据上述的排序来计算出优先工序(J1,M1)、(J2,M3)、(J3,M2)的调度执行优先顺序为2.666667、1.666667、1.666667,并且从中挑选出候选工序(J2,M3)、(J3,M2)。
随后,处理器130会分别将候选工序(J2,M3)、(J3,M2)列为调度中的下一道工序,以得到两个调度前置状态后,依据各个派工法则对两个调度前置状态进行调度模拟。如此一来,将得到图5C中以甘特图GT1至GT6表示的对应于各个派工法则的多个模拟调度结果。举例来说,甘特图GT2是将制作工序(J2,M3)列为调度中的第一道工序,并依据MDD法则来进行工单J1、J2、J3的模拟调度。从甘特图GT2可以看出,当制作工序(J2,M3)列为调度中的第一道工序,且依据MDD法则来进行调度模拟时,工单J1、J2、J3所需的总完工时间为49个时间单位,以此类推。
接着,如图5D所示,处理器130会计算候选工序(J2,M3)的调度指标为51.3个时间单位;而候选工序(J3,M2)的调度指标为44.3个时间单位。据此,处理器130会将对应于最佳调度指标44.3的候选工序(J3,M2)加为调度的下一道工序,并且继续展开下一层节点。在本实施例中,下一层节点为制作工序(亦称优先工序)(J1,MI)、(J2,M3)、(J3,M1)。
类似地,如图5E所示,处理器130会从优先工序(J1,M1)、(J2,M3)、(J3,M1)中依据调度执行优先顺序来选出候选工序(J2,M3)、(J3,M1),随后再次分别将候选工序(J2,M3)、(J3,M1)列为调度中的下一道工序,以得到两个调度前置状态后,依据各个派工法则对两个调度前置状态进行调度模拟。
在本实施例中,将候选工序(J2,M3)列为调度中的下一道工序后,得到依序包括制作工序为(J3,M2)、(J2,M3)的调度前置状态;将候选工序(J3,M1)列为调度中的下一道工序后,得到依序包括制作工序为(J3,M2)、(J3,M1)的调度前置状态。接着,处理器会依据多种派工法则来对各个调度前置状态进行模拟调度以得到多个模拟调度结果,进而取得候选工序(J2,M3)、(J3,M1)的调度指标。
如图5E所示,处理器130会计算候选工序(J2,M3)的调度指标为44.3个时间单位;而候选工序(J3,M1)的调度指标为58.3个时间单位。据此,如图5E所示,处理器130会将对应于最佳调度指标44.3的候选工序(J2,M3)加为调度的下一道工序,并且继续展开下一层节点。
值得注意的是,如图4F中的甘特图与树状拓扑TR所示,在使用SPT、FIFO与AT-RPT法则进行群体决策的实施例中,最后所获得的调度结果的前两道工序分别为(J3,M2)与(J1,M1)。然而,如图5F中的甘特图与树状拓扑TR所示,在使用SPT、MDD与AT-RPT法则进行群体决策的本实施例中,对相同工单进行调度最后所得到的调度结果的前两道工序分别为(J3,M2)与(J2,M3)。由此可以看出,由于本实施例中是以最小化订单延迟时间来作为调度目标选择派工法则,使得工单J2中的制作工序被提前到树状拓扑的第二层(即,调度中的第二个工序)就开始执行。
重复上述的步骤,可以获得如图5F中甘特图与树状调度所示的调度结果,调度中的制作工序依序为(J3,M2)、(J2,M3)、(J2,M2)、(J2,M4)、(J1,M1)、(J1,M4)、(J3,M1),总完工时间为49个时间单位,而工单J2的完工时间为34个时间单位。如此一来,由于总完工时间仍然是选择节点的考虑条件,因此通过本公开内容实施例的调度方法,能够在不牺牲过多的总完工时间的前提下,让工单J2在40个时间单位的交期内完工。
在上述的实施例中,在从候选工序选出当选工序后,处理器130会将其加入调度中的下一道工序,从而逐一将制作工序加入调度当中。值得一提的是,在一些实施例中,处理器130会以递归的方式来搜寻节点,以增加调度的质量。具体来说,在符合特定条件的情况下,处理器130会将已加入调度的当选工序置换为在树状拓扑中与该当选工序同层的另一道候选工序,并继续进行调度。以下将举实施例对递归搜寻节点的方式进行说明
在本实施例中,以下表3作为接收组件110所接收到的工单,并且以最小化总完工时间作为唯一的调度目标。
J1 | M1(13) | M2(53) |
J2 | M1(54) | M2(42) |
J3 | M2(1) | M1(9) |
J4 | M1(78) | M2(50) |
表3
图6A示意性示出了本公开内容一实施例的调度方法的示意图。请参考图6A,在进行第一次步骤S240至S270后,树状拓扑TR的第一层节点由制作工序(J1,M1)、(J3,M2)、(J2,M2)、(J4,M1)过滤出候选工序为(J1,M1)、(J3,M2)、(J2,M2),且其调度指标SI分别为127、131、146个时间单位;而第一层的当选工序为对应于最佳调度指标SI(即,127个时间单位)的制作工序(J1,M1)。
接着,处理器130会以当选工序(J1,M1)作为新的起始节点再次执行步骤S240至S270后,得到树状拓扑TR的第二层节点分别为制作工序(J2,M1)、(J3,M2)、(J4,M1)、(J1,M2),并且再过滤出候选工序为(J2,M1)、(J4,M1)、(J1,M2),且其调度指标SI分别为136、135、141个时间单位,而第二层的当选工序为最佳调度指标SI(即,135个时间单位)的制作工序(J4,M1)。
值得注意的是,对于最小化总完工时间为调度目标来说,第二层的当选工序(J4,M1)的调度指标SI(即,135个时间单位)是劣于第一层中的候选工序(J3,M2)的次佳调度指标SI(即,131个时间单位)。这个现象表示若在树状拓扑TR的第一层中将对应于最佳调度指标(即,127个时间单位)的制作工序(J1,M1)加为调度的下一个工序,则至少需要135个时间单位的总完成时间。因此,处理器130会将制作工序(J1,M1)的调度指标更新为135个单位时间。此外,处理器130更将第一层的当选工序替换为对应于第一层中次佳调度指标(即,131个时间单位)的制作工序(J3,M2),并且将已加入调度的制作工序(J1,M1)替换为此当选工序(J3,M2)。随后,再以第一层中新的当选工序作为起始节点重新展开树状拓扑TR的第二层节点。
请参考图6B,以当选工序(J3,M2)向下展开的下一层节点分别为制作工序(J2,M1)、(J3,M1)、(J4,M1)、(J1,M1),且过滤出的候选工序为(J2,M1)、(J3,M1)、(J1,M1),其调度指标SI分别为137、130、152个时间单位,而第二层的当选工序为对应于最佳调度指标SI(即,130个时间单位)的制作工序(J3,M1)。
由于第二层的当选工序(J3,M1)的调度指标SI(即,130个时间单位)优于第一层中的候选工序(J1,M1)的次佳调度指标SI(即,135个时间单位)。因此,处理器130会将当选工序(J3,M1)加入为调度中制作工序(J3,M2)的下一道制作工序。值得一提的是,在其他实施例中,倘若第二层的当选工序的调度指标SI等于第一层中的候选工序的次佳调度指标时,处理器130会继续将第二层的当选工序加入为调度中的下一道制作工序。
接着,处理器130会以当选工序(J3,M1)作为新的起始节点再次执行步骤S240至S270后,得到树状拓扑TR的第三层节点分别为制作工序(J2,M1)、(J4,M1)、(J1,M1),且过滤出候选工序为(J2,M1)、(J4,M1)、(J1,M1),其调度指标SI分别为129、148、127个时间单位,而第三层的当选工序为最佳调度指标SI(即,127个时间单位)的制作工序(J1,M1)。
由于第三层的当选工序(J1,M1)的调度指标SI(即,127个时间单位)是优于第二层中的候选工序(J2,M1)的次佳调度指标SI(即,137个时间单位)。因此,处理器130会将当选工序(J1,M1)加入为调度中制作工序(J3,M1)的下一道制作工序。以此类推来重复上述的步骤,便能够获得如图6C的树状拓扑TR所示的调度结果,调度中的制作工序依序为(J3,M2)、(J3,M1)、(J1,M1)、(J2,M1)、(J1,M2)、(J2,M2)、(J4,M1)、(J4,M2),并且总完成时间为122个时间单位。
综上所述,本公开内容实施例所提出基于树状搜寻的调度方法与使用此方法的电子装置同时采用多个派工法则,通过多个派工法则的群体决策来有效地降低误排的风险。特别是,本公开内容实施例在进行调度时所采用的多个派工法则可依据当前调度的需求及目标(例如,最小化总完工时间等)来从知识库中选择,并且在选出所采用的派工法则后,利用树状搜寻的算法来逐层进行调度。因此,本公开内容实施例所提出的调度方法能够因应使用者不同的需求来进行调度。另一方面,本公开内容实施例更在树状搜寻时利用递归的方式来寻找节点,据此能够同时具有合理的处理时间与良好的调度质量。
以上所述的具体实施例,对本公开内容的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,以上所述仅为本公开内容的具体实施例而已,并不用于限制本公开内容,凡在本公开内容的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开内容的保护范围之内。
Claims (20)
1.一种基于树状搜寻的调度方法,适用于电子装置,所述调度方法包括以下步骤:
接收多笔工单并且起始一调度,其中各所述工单包括多道制作工序;
选择各所述工单中尚未加入该调度,且制造流程排序最前的该制作工序,以取得所述多笔工单的多道优先工序;
依据多个派工法则计算所述多道优先工序的调度执行优先顺序,并且依据该调度执行优先顺序从所述多道优先工序中选择多道候选工序;
分别将所述多道候选工序列为该调度中的下一道工序以作为树状拓扑的根节点以外的多个节点,并且依据所述多个派工法则进行调度模拟,以取得所述多道候选工序的多个调度指标;以及
依据所述多个调度指标来进行该调度。
2.根据权利要求1所述的调度方法,还包括:
建立一知识库,其中该知识库记录多个可用派工法则以及各所述可用派工法则与多个调度目标之间的多个相关性,其中所述多个调度指标关联于所述多个调度目标的其中之一。
3.根据权利要求2所述的调度方法,还包括:
选择所述多个调度目标的其中之一;以及
依据该知识库中所述多个可用派工法则与所选的调度目标之间的相关性,从所述多个可用派工法则中选出所述多个派工法则。
4.根据权利要求1所述的调度方法,其中依据多个派工法则计算所述多道优先工序的调度执行优先顺序的步骤包括:
分别依据所述多个派工法则,排序所述多道优先工序;以及
分别整合所述多道优先工序对应所述多个派工法则的多个排序,以取得该调度执行优先顺序。
5.根据权利要求4所述的调度方法,其中分别整合所述多道优先工序对应所述多个派工法则的多个排序,以取得该调度执行优先顺序的步骤包括:
针对各所述优先工序,计算对应所述多个派工法则的所述多个排序的加权平均,以计算该调度执行优先顺序。
6.根据权利要求1所述的调度方法,其中分别将所述多道候选工序列为该调度中的下一道工序,并且依据所述多个派工法则进行调度模拟,以取得所述多道候选工序的多个调度指标的步骤包括:
分别将所述多道候选工序列为该调度中的下一道工序,以得到所述多道候选工序对应的多个调度前置状态;
分别依据所述多个派工法则对所述多个调度前置状态进行调度模拟,以计算所述多个调度前置状态对应于各派工法则的多个模拟调度结果;
分别整合所述多个调度前置状态对应于所述多个派工法则的所述多个模拟调度结果,以取得所述多道候选工序的所述多个调度指标。
7.根据权利要求6所述的调度方法,其中分别整合所述多个调度前置状态对应于所述多个派工法则的所述多个模拟调度结果,以取得所述多道候选工序的所述多个调度指标的步骤包括:
针对各所述候选工序,计算对应所述多个派工法则的所述多个模拟调度结果的加权平均,以作为该候选工序的该调度指标。
8.根据权利要求1所述的调度方法,其中所述多个调度指标包括最佳调度指标以及次佳调度指标,其中依据所述多个调度指标来进行该调度包括:
选出该最佳调度指标对应的该候选工序作为一当选工序;以及
将所选出的该当选工序加入为该调度中的该下一道工序。
9.根据权利要求8所述的调度方法,还包括:
重复所述步骤,继续选择各所述工单中尚未加入该调度,且制造流程排序最前的该制作工序,以取得所述多笔工单的多道优先工序,从所述多道优先工序中选择多道候选工序,取得所述多道候选工序的多个调度指标并依据所述多个调度指标进行调度,以从所述多笔工单中的所述多道制作工序选出另一当选工序;
当判断所选的该另一当选工序的该调度指标优于或等于该次佳调度指标,将所选的该另一当选工序加入为该调度中的再下一道工序;以及
当判断所选的该另一当选工序的该调度指标劣于该次佳调度指标,将该调度中的最后一道工序替换为该次佳调度指标所对应的该候选工序。
10.根据权利要求9所述的调度方法,其中当判断所选的该另一当选工序的该调度指标劣于该次佳调度指标,所述调度方法还包括:
更新该最佳调度指标所对应的该候选工序的该调度指标。
11.一种电子装置,包括:
接收组件,用以接收数据;
存储组件,用以存储多个模块;以及
处理器,耦接于该接收组件以及该存储组件,用以加载并执行所述多个模块,其中所述多个模块包括:
数据撷取模块,用以透过该接收组件接收多笔工单,其中各所述工单包括多道制作工序;
树状调度模块,用以起始一调度;
节点过滤模块,用以:
选择各所述工单中尚未加入该调度,且制造流程排序最前的该制作工序,以取得所述多笔工单的多道优先工序;以及
依据多个派工法则计算所述多道优先工序的调度执行优先顺序,并且依据该调度执行优先顺序从所述多道优先工序中选择多道候选工序;以及
节点选取模块,用以分别将所述多道候选工序列为该调度中的下一道工序以作为树状拓扑的根节点以外的多个节点,并且依据所述多个派工法则进行调度模拟,以取得所述多道候选工序的多个调度指标,
其中该树状调度模块还用以依据所述多个调度指标来进行该调度。
12.根据权利要求11所述的电子装置,其中该存储组件还用以记录一知识库,其中该知识库记录多个可用派工法则以及各所述可用派工法则与多个调度目标之间的多个相关性。
13.根据权利要求11所述的电子装置,其中该处理器选择所述多个调度目标的其中之一,并且依据该知识库中所述多个可用派工法则与所选的该调度目标之间的所述多个相关性,从所述多个可用派工法则中选出所述多个派工法则。
14.根据权利要求11所述的电子装置,其中该节点过滤模块用以:
分别依据所述多个派工法则,排序所述多道优先工序;以及
分别整合所述多道优先工序对应所述多个派工法则的多个排序,以取得该调度执行优先顺序。
15.根据权利要求14所述的电子装置,其中该节点过滤模块用以:
针对各所述优先工序,计算对应所述多个派工法则的所述多个排序的加权平均,以计算该调度执行优先顺序。
16.根据权利要求11所述的电子装置,其中该节点选取模块用以:
分别将所述多道候选工序列为该调度中的下一道工序,以得到所述多道候选工序对应的多个调度前置状态;
分别依据所述多个派工法则对所述多个调度前置状态进行调度模拟,以计算所述多个调度前置状态对应于各派工法则的多个模拟调度结果;
分别整合所述多个调度前置状态对应于所述多个派工法则的所述多个模拟调度结果,以取得所述多道候选工序的所述多个调度指标。
17.根据权利要求16所述的电子装置,其中该节点选取模块用以:
针对各所述候选工序,计算对应所述多个派工法则的所述多个模拟调度结果的加权平均,以作为该候选工序的该调度指标。
18.根据权利要求11所述的电子装置,其中所述多个调度指标包括最佳调度指标以及次佳调度指标,其中该树状调度模块还用以:
选出该最佳调度指标对应的该候选工序作为一当选工序;以及
将所选出的该当选工序加入为该调度中的该下一道工序。
19.根据权利要求18所述的电子装置,其中该处理器还用以:
重复执行该节点过滤模块以及该节点选取模块,以选出另一当选工序;
当判断所选的该另一当选工序的该调度指标优于或等于该次佳调度指标,将所选的该另一当选工序加入为该调度中的再下一道工序;以及
当判断所选的该另一当选工序的该调度指标劣于该次佳调度指标,将该调度中的最后一道工序替换为该次佳调度指标所对应的该候选工序。
20.根据权利要求19所述的电子装置,其中当判断所选的该另一当选工序的该调度指标劣于该次佳调度指标,该处理器还用以:
更新该最佳调度指标所对应的该候选工序的调度指标。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106139611A TWI633504B (zh) | 2017-11-16 | 2017-11-16 | 基於樹狀搜尋的排程方法與使用此方法的電子裝置 |
TW106139611 | 2017-11-16 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109800936A CN109800936A (zh) | 2019-05-24 |
CN109800936B true CN109800936B (zh) | 2021-09-14 |
Family
ID=63960051
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810108724.6A Active CN109800936B (zh) | 2017-11-16 | 2018-02-02 | 基于树状搜寻的调度方法与使用该方法的电子装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10642257B2 (zh) |
CN (1) | CN109800936B (zh) |
TW (1) | TWI633504B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020040763A1 (en) * | 2018-08-23 | 2020-02-27 | Siemens Aktiengesellschaft | Real-time production scheduling with deep reinforcement learning and monte carlo tree search |
US10909641B2 (en) * | 2018-10-19 | 2021-02-02 | Gridspan Energy LLC | Systems and methods for modular mobile energy storage |
US11256241B1 (en) | 2019-09-12 | 2022-02-22 | Veo Robotics, Inc. | Optimized factory schedule and layout generation |
CN111882097B (zh) * | 2019-10-11 | 2024-07-23 | 北京嘀嘀无限科技发展有限公司 | 一种车辆维护人员调度方法和系统 |
TWI739229B (zh) * | 2019-12-03 | 2021-09-11 | 財團法人工業技術研究院 | 快篩派工法則方法和裝置 |
CN111445079B (zh) * | 2020-03-31 | 2022-07-05 | 华中科技大学 | 一种应用于车间计划投产的多保真仿真优化方法及设备 |
CN112036693B (zh) * | 2020-07-28 | 2022-04-08 | 成都飞机工业(集团)有限责任公司 | 基于有限加权工序故障率的工序排序法 |
TWI741760B (zh) * | 2020-08-27 | 2021-10-01 | 財團法人工業技術研究院 | 學習式生產資源配置方法、學習式生產資源配置系統與使用者介面 |
CN115374015B (zh) * | 2022-10-24 | 2023-02-10 | 埃克斯工业有限公司 | 调度算法的测试方法、测试模拟装置及介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5890134A (en) * | 1996-02-16 | 1999-03-30 | Mcdonnell Douglas Corporation | Scheduling optimizer |
CN1529261A (zh) * | 2003-10-05 | 2004-09-15 | 华中科技大学 | 一种带状态性能反馈的规则调度方法及其调度系统 |
TW200525386A (en) * | 2004-01-20 | 2005-08-01 | Univ Chung Yuan Christian | System and method using knowledge mining technique to determine job dispatching rules |
CN101459098A (zh) * | 2007-12-14 | 2009-06-17 | 北京北方微电子基地设备工艺研究中心有限责任公司 | 一种晶片优化调度的方法和装置 |
CN103439886A (zh) * | 2013-07-26 | 2013-12-11 | 同济大学 | 一种半导体生产线自适应动态调度装置 |
CN105843189A (zh) * | 2016-04-09 | 2016-08-10 | 北京化工大学 | 一种用于半导体生产线基于简化仿真模型的高效调度规则选择方法 |
CN106094757A (zh) * | 2016-07-15 | 2016-11-09 | 郑州航空工业管理学院 | 一种基于数据驱动的动态柔性作业车间调度控制方法 |
JP2017021454A (ja) * | 2015-07-07 | 2017-01-26 | 富士通株式会社 | スケジューリング方法、情報処理装置およびスケジューリングプログラム |
CN106372778A (zh) * | 2016-08-23 | 2017-02-01 | 江苏亿科达科技发展有限公司 | 基于动态规则引擎的车辆调度系统及方法 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5099431A (en) * | 1989-10-23 | 1992-03-24 | International Business Machines Corporation | Automated re-work shop order scheduling system |
US6269353B1 (en) | 1997-11-26 | 2001-07-31 | Ishwar K. Sethi | System for constructing decision tree classifiers using structure-driven induction |
TW483039B (en) * | 2001-05-25 | 2002-04-11 | Taiwan Semiconductor Mfg | Wafer start order release system |
US20030061266A1 (en) * | 2001-09-27 | 2003-03-27 | Norman Ken Ouchi | Project workflow system |
TWI230880B (en) | 2002-08-20 | 2005-04-11 | Taiwan Semiconductor Mfg | Semiconductor dispatching integration system and method using the same to dispatch |
US7370326B2 (en) | 2004-04-02 | 2008-05-06 | Emulex Design & Manufacturing Corporation | Prerequisite-based scheduler |
US7848836B2 (en) | 2004-11-19 | 2010-12-07 | Siemens Aktiengesellschaft | Scheduling system and work order scheduling protocol for such a system |
TWI276932B (en) * | 2005-02-17 | 2007-03-21 | Powerchip Semiconductor Corp | Methods for determining tool assignment sequence and manufacturing systems using the same |
GB0513045D0 (en) * | 2005-06-27 | 2005-08-03 | Vidus Ltd | Resource scheduling method and system |
US20080216077A1 (en) * | 2007-03-02 | 2008-09-04 | Applied Materials, Inc. | Software sequencer for integrated substrate processing system |
US7720100B2 (en) | 2007-05-11 | 2010-05-18 | Applied Micro Circuits Corporation | Packet preclassification using search tree algorithms |
EP2224384A1 (en) * | 2009-02-25 | 2010-09-01 | Siemens Aktiengesellschaft | Method and system for scheduling a manufacturing process |
US8576430B2 (en) * | 2010-08-27 | 2013-11-05 | Eastman Kodak Company | Job schedule generation using historical decision database |
CN102035698B (zh) | 2011-01-06 | 2012-07-25 | 西北工业大学 | 基于决策树分类算法的http隧道检测方法 |
CN102622667B (zh) * | 2012-02-13 | 2016-08-03 | 浪潮通用软件有限公司 | 一种基于多产品多生产线生产模式下的均衡排产方法 |
US9146551B2 (en) * | 2012-11-29 | 2015-09-29 | Asm Ip Holding B.V. | Scheduler for processing system |
US9195939B1 (en) | 2013-03-15 | 2015-11-24 | Cavium, Inc. | Scope in decision trees |
EP3011706B1 (en) * | 2013-06-19 | 2017-09-13 | Huawei Technologies Co., Ltd. | P-select n-port round robin arbiter for scheduling requests |
US20160189266A1 (en) * | 2014-12-27 | 2016-06-30 | Brian D. Johnson | Technologies for rule-guided autonomous goal achievement |
EP3299794A1 (en) * | 2016-09-21 | 2018-03-28 | F. Hoffmann-La Roche AG | Automated scheduler for laboratory equipment |
US10649993B2 (en) * | 2016-11-14 | 2020-05-12 | International Business Machines Corporation | Continuous caster scheduling with template driven search |
-
2017
- 2017-11-16 TW TW106139611A patent/TWI633504B/zh active
-
2018
- 2018-02-02 CN CN201810108724.6A patent/CN109800936B/zh active Active
- 2018-02-05 US US15/888,096 patent/US10642257B2/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5890134A (en) * | 1996-02-16 | 1999-03-30 | Mcdonnell Douglas Corporation | Scheduling optimizer |
CN1529261A (zh) * | 2003-10-05 | 2004-09-15 | 华中科技大学 | 一种带状态性能反馈的规则调度方法及其调度系统 |
TW200525386A (en) * | 2004-01-20 | 2005-08-01 | Univ Chung Yuan Christian | System and method using knowledge mining technique to determine job dispatching rules |
CN101459098A (zh) * | 2007-12-14 | 2009-06-17 | 北京北方微电子基地设备工艺研究中心有限责任公司 | 一种晶片优化调度的方法和装置 |
CN103439886A (zh) * | 2013-07-26 | 2013-12-11 | 同济大学 | 一种半导体生产线自适应动态调度装置 |
JP2017021454A (ja) * | 2015-07-07 | 2017-01-26 | 富士通株式会社 | スケジューリング方法、情報処理装置およびスケジューリングプログラム |
CN105843189A (zh) * | 2016-04-09 | 2016-08-10 | 北京化工大学 | 一种用于半导体生产线基于简化仿真模型的高效调度规则选择方法 |
CN106094757A (zh) * | 2016-07-15 | 2016-11-09 | 郑州航空工业管理学院 | 一种基于数据驱动的动态柔性作业车间调度控制方法 |
CN106372778A (zh) * | 2016-08-23 | 2017-02-01 | 江苏亿科达科技发展有限公司 | 基于动态规则引擎的车辆调度系统及方法 |
Non-Patent Citations (2)
Title |
---|
"TFT-LCD厂的ARRAY制造系统仿真与调度技术研究";于洪伟;《中国优秀硕士学位论文全文数据库 信息科技辑》;20120615;全文 * |
"复合优先级控制策略研究及其在半导体生产线调度中的应用";王遵彤 等;《中国机械工程》;20051130;第16卷(第22期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109800936A (zh) | 2019-05-24 |
US20190146463A1 (en) | 2019-05-16 |
US10642257B2 (en) | 2020-05-05 |
TWI633504B (zh) | 2018-08-21 |
TW201923667A (zh) | 2019-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109800936B (zh) | 基于树状搜寻的调度方法与使用该方法的电子装置 | |
CN105260237B (zh) | 异构多核平台的任务调度系统及其调度方法 | |
CN108846623A (zh) | 基于多目标蚁群算法的整车物流调度方法及装置、存储介质、终端 | |
US8849733B2 (en) | Benchmarking progressive systems for solving combinatorial problems | |
CN111984426A (zh) | 任务调度方法、装置、电子设备及存储介质 | |
CN110389822A (zh) | 执行任务的节点调度方法、装置和服务器 | |
CN115578023A (zh) | 一种装配车间调度方法、装置、设备和存储介质 | |
CN110232486B (zh) | 基于k最短路径的多车间综合调度方法 | |
CN109409848A (zh) | 开放式流程的节点智能推荐方法、终端设备及存储介质 | |
CN116841717B (zh) | 一种根据任务紧急程度实时生成排序的方法及系统 | |
CN114281256A (zh) | 基于分布式存储系统的数据同步方法、装置、设备及介质 | |
CN104077361B (zh) | 一种用于大数据的排序方法及系统 | |
CN113010310A (zh) | 作业数据的处理方法、装置和服务器 | |
CN107104829B (zh) | 一种基于网络拓扑数据的物理设备匹配分配方法及装置 | |
CN109377111A (zh) | 基于改进模拟退火算法的作业调度方法和装置 | |
CN112257977B (zh) | 模糊工时下资源受限的物流项目工期优化方法及系统 | |
CN114547286A (zh) | 一种信息搜索方法、装置及电子设备 | |
CN116050559A (zh) | 为工作站筛选派工规则的电子装置和方法 | |
CN110968428B (zh) | 云工作流虚拟机配置和任务调度协同优化方法 | |
CN108920269B (zh) | 容器的i/o传输任务的调度方法和装置 | |
JP4801525B2 (ja) | 最適解探索システム、およびそれに用いられるサーバ、最適解探索プログラム、記録媒体 | |
CN110928253A (zh) | 自动制造系统的动态加权启发式调度方法 | |
CN115456537B (zh) | 仓库拣货路径规划方法及系统 | |
CN111061640B (zh) | 一种软件可靠性测试用例筛选方法及系统 | |
CN108647302B (zh) | 一种数据库排序方法及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |