CN104662566A - 用于将排程问题切分成子问题的方法和*** - Google Patents
用于将排程问题切分成子问题的方法和*** Download PDFInfo
- Publication number
- CN104662566A CN104662566A CN201280053934.0A CN201280053934A CN104662566A CN 104662566 A CN104662566 A CN 104662566A CN 201280053934 A CN201280053934 A CN 201280053934A CN 104662566 A CN104662566 A CN 104662566A
- Authority
- CN
- China
- Prior art keywords
- task
- station
- node
- scheduling problem
- cutting
- 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.)
- Granted
Links
Classifications
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/45—Exploiting coarse grain parallelism in compilation, i.e. parallelism between groups of instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10072—Tomographic images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/12—Edge-based segmentation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Educational Administration (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Operations Research (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
计算***接收用户输入的排程问题数据。排程问题数据涉及排程问题,且该排程问题数据包括一个或多个站以及待通过至少一个站执行的任务。计算***使用排程问题数据建构图形问题。图形问题包括图形。计算***使用切分算法将图形切分成子图形以产生满足一阈值的切分结果,且计算***从切分结果中的子图形中识别一个或多个任务异常。一个或多个任务异常为可分配至多于一个子图形的任务。计算***使用切分结果产生关于一个或多个任务异常的排程子问题。
Description
技术领域
本发明的实施方式大致涉及排程(scheduling),更具体地,涉及将排程问题切分成子问题。
背景技术
解决制造排程问题的困难可与问题大小有关。典型的制造排程问题涉及大量的站(stations)和待在这些站上执行的很多任务。例如,排程可取决于工具数量、批次(lots)数量、操作的顺序、约束条件等等。传统的排程***花费大量的时间和计算资源来解决涉及许多变量和因素的排程问题。困难随着排程问题大小的增大而非常快地增长。因此,大的排程问题不可能被直接解决。
数据数据数据数据算法计算机存储介质计算机存储介质数据数据数据数据算法存储器存储器数据数据数据数据算法附图说明
本发明在附图中以举例而非限制的方式图示,其中,相同的参考标记指示相同的元件。应注意,本文中对“一”或“一个”实施方式的不同引用不一定指同一个实施方式,并且这些引用是指至少一个。
图1为图示利用排程问题切分器模块的排程***的框图。
图2为排程问题切分器模块的一个实施方式的框图。
图3A至3D图示了表示排程问题的示例性图表。
图4图示了用于将排程问题切分成为排程子问题的方法的一个实施方式。
图5图示了示例性排程子问题和示例性任务异常(exception)。
图6图示了示例性计算机***。
具体实施方式
本发明的实施方式涉及用于将排程问题切分成排程子问题的方法和***。计算***接收用户输入的排程问题数据。排程问题数据识别站和待通过至少一个站执行的任务。计算***使用排程问题数据建构一个图形问题。该图形问题可以包括图形,计算***可使用切分算法将该图形分割成子图形,以产生满足一阈值的切分结果。阈值的实例可包括(且不限于):产生具有最少任务异常的切分结果、产生具有最少数量的任务类型的切分结果、产生具有最少数量的成为异常的任务配方(task recipes)的切分结果。计算***从子图形中识别任务异常。任务异常可以是被分配至多于一个子图形的任务。计算***使用切分结果产生排程子问题。各实施方式通过将大的排程问题自动切分成子问题并且识别与这些子问题相关联的一个或更多个任务异常,极大减少了用以解决制造排程问题的时间和资源的量。
图1为图示了制造***100的框图,该制造***100包括制造***数据源(例如,制造执行***(manufacturing execution system;MES)101)、调度器(dispatcher)103和排程***105(例如通过网络120通信)。网络120可以是局域网(local area network;LAN)、无线网络、移动通信网络、广域网(wide areanetwork;WAN)(诸如因特网),或类似的通信***。
在一个实施方式中,排程***105包括排程问题切分器模块107。在另一实施方式中,排程***105(例如通过网络120与外部排程问题切分器模块107通信。MES101、调度器103、排程***105和排程问题切分器模块107可分别由任何类型的计算装置主存(hosted),这些计算装置包括服务器计算机、网间连接计算机(gateway computer)、桌上型计算机、膝上型计算机、平板计算机、笔记本计算机、个人数字助理(personal digital assistant;PDA)、移动通信装置、蜂窝式电话、智能电话、手持式计算机,或类似的计算装置。可选地,MES101、调度器103、排程***105和排程问题切分器模块107的任何组合可被主存于单个计算装置上,该计算装置包括服务器计算机、网间连接计算机、桌上型计算机、膝上型计算机、移动通信装置、蜂窝式电话、智能电话、手持式计算机,或类似计算装置。
排程***105可从排程问题切分器模块107接收与排程问题相关的输入以产生关于一个或更多个任务可何时执行以及在哪些站(工具)上执行的排程。排程可以是各站处理的任务列表。排程可包括任务开始时间。站可被认证以执行某些任务。任务可以是用于制造半导体的任务,且可存在不同类型的任务。任务的实例可包括(且不限于)制造产品的任务、使用主光罩(reticle)制造工具的任务、检查主光罩制造工具的任务、处理大量晶片的任务等等。
排程问题切分器模块107可识别排程问题并且将排程问题自动地切分成更小的排程子问题。排程问题可涉及一组任务T和一组(例如,组S)站,站也称为工具。例如,排程问题可涉及四十个至五十个站和多于两千个任务。每一任务可在一个或更多个站上处理。若存在不相交的任务子集,诸如任务子集T1和任务子集T2,以使得T为任务子集T1和任务子集T2的并集,并且存在类似的不相交的站子集,诸如站子集S1及站子集S2,以使得组S为站子集S1和站子集S2的并集,则排程问题切分器模块107可将排程问题切分,并且其中任务子集T1中的任务仅可在站子集S1中的站上处理,且任务子集T2中的任务仅可在站子集S2中的站上处理。
排程问题切分器模块107可自动地将制造排程问题转换成图形理论问题,并且可将切分算法应用于图形理论问题以解决该问题。排程问题切分器模块107可将该解决方案从图形理论问题格式(format)转换回用于排程问题的格式,其中排程问题可由更小的子问题以及与这些子问题相关联的一个或更多个任务异常来表示。排程问题切分器模块107可将反映更小排程子问题的数据提供至排程***105,排程***105可使用该数据为待执行的各种任务临时地排定时间。在一个实施方式中,排程***105被耦接至工厂***数据源(例如,MES101、ERP)以接收批次数据和设备状态数据,并且排程***105使用排程子问题数据、批次数据和设备状态数据以临时地排程待执行的任务。在一个实施方式中,排程***105可以包括图形用户界面(graphical user interface;GUI)产生器111以产生用户界面109(例如,GUI)且向用户(例如,工业工程师)提供用户界面109(例如,GUI)。用户界面109可使用户(例如,工业工程师)能够将临时排程模型化。在一个实施方式中,排程***105向调度器103提供全部排程。调度器103可通过MES101集成以相应地调度(例如)晶片批次。
图2为排程问题切分器模块200的一个实施方式的框图。在一个实施方式中,排程问题切分器模块200可与图1的排程问题切分器模块107相同。排程问题切分器模块200可包括图形产生器子模块205、图形切分器子模块210、问题翻译器子模块215和用户界面(UI)产生器子模块225。
用户界面产生器子模块225可产生用户界面202,该用户界面202可接收一组排程问题数据251作为排程问题的用户输入。排程问题切分器模块200也可从制造***中的另一***接收一组排程问题数据251或该排程问题数据251的一部分。排程问题数据251可定义待执行的任务(例如,一组任务T)和用于执行该任务的一组(例如,组S)站或工具。排程问题数据251也可描述是否可在一个或更多个站上处理任务,且排程问题数据251可识别用于执行该任务的一个或更多个站。排程问题数据251可存储于数据存储库250中,该数据存储库250被耦接至排程问题切分器模块200。对于存储在数据存储库250中的多个排程问题,可能存在多组排程问题数据251。数据存储库250可为永久性存储单元。永久性存储单元可为本地存储单元或远程存储单元。永久性存储单元可为磁性存储单元、光学存储单元、固态存储单元、电子存储单元(主存储器)或类似的存储单元。永久性存储单元可为单片(monolithic)装置或分布式的一组装置。如本文中所使用的“组”代表任何正整数个项目。
图形产生器子模块205可使用特定排程问题的排程问题数据251以将排程问题格式转换为图形问题格式。图形产生器子模块205可建构图形问题以表示排程问题。图形产生器子模块205可产生图形问题的图形253。图形253可存储在数据存储库250中。在数据存储库250中可存储用于各种排程问题的图形253。图形253可以是用以将来自某一集合(collection)的对象(objects)之间的成对关系模型化的数学结构。图形253可代表顶点或节点的集合以及连接顶点(节点)对的边的集合。边在下文中也被称为线。图形253可包括图形特性,例如(但不限于)用于排程问题的S组站中的各站(例如,s1、s2……sn)可为图形中的节点,并且在图形253中可存在连接对应于一对站的节点的边(线),以指示存在可在该对站上执行的至少一个任务。
排程问题数据251可包括(例如)由用户输入所定义的、一个或更多个权重类型和/或权重值。图形产生器子模块205可基于诸如与站有关的约束条件(constraints)而分配权重至图形253中的各对被连接的站,以指示(例如)被连接的站的重要性。图形产生器子模块205可基于排程问题数据251而将权重分配至图形253中的线。可计算的权重类型的实例可包括(且不限于):可在被连接的两个站上执行的任务的百分比,其中基于任务的重要性(例如,基于用户输入的任务优先级)对该百分比加权;可在被连接的两个站上处理的操作或路线步骤的百分比;可在被连接的两个站上处理的操作或路线步骤的百分比,利用该操作的期望批次的百分比进行加权;以及指示一个任务相对于另一任务的重要性的百分比(例如,任务1之后应是任务2)。各实施方式同时应用于工作现场(job shop)排程和流程现场(flow shop)排程,其中在工作现场排程中,各任务是独立的,而在流程现场排程中,任务表示用于单个制造批次的多个操作并且应以特定顺序处理用于一个批次的任务。被分配至线的权重值可反映流程现场排程,以指示相邻操作的重要性(也称为先验约束(precedentconstraint))。图形产生器子模块205可进一步基于其他参数调整权重,其他参数诸如但不限于:站之间的物理距离、站之间的物理相似性、品牌(brand)或站类型。
图3A为排程问题的示例性图形300。排程问题的排程问题数据可包括站s1、s2、s3、s4和任务t1至t11。图形300可包括每个站的节点(例如,节点301A至301D)。图形300可包括连接节点对的线(例如,线303A至303F),这些线指示存在可在对应于被连接节点的两个站上执行的一些任务。可基于排程问题数据分配线303A至303F。例如,排程问题数据可以指定任务t1可在站s1上处理;任务t2、t3和t4可在站s1和s2上处理;任务t5和t6可在站s2上处理;任务t7可在站s3上处理;任务t8和t9可在站s3和s4上处理;任务t10可在站s4上处理;任务t11可在站s2和s3上处理。基于此数据,例如在图形300中可存在将表示站s1的节点301A连接至表示站s2的节点30B的线303A,以指示存在可在两个站s1和s2上执行的至少一个任务(例如,t2、t3、t4)。线303A至303F也可以被分配权重(例如,305A至305F)。在一个实施方式中,线权重指示可在对应于被该线连接的节点的两个站上处理的任务数量。图3B为具有基于可在两个站上处理的任务数量而分配的权重的示例性图形350。例如,值“3”可作为权重307分配至线303A,以指示站两个s1和s2可处理由排程问题数据定义的三个任务(例如,t2、t3和t4)。在另一实施方式中,线权重指示反映相邻操作的重要性的流程现场排程。
回到图2,图形切分器子模块210可将图形253分割成为子图形,以将排程问题切分成排程子问题来产生满足阈值的切分结果255。阈值的实例可包括(且不限于):产生具有最少任务异常的切分结果255、产生具有最少数量的任务类型的切分结果255、产生具有最少数量的成为异常的任务配方的切分结果255。任务异常可以是可在多于一个子图形中的站上执行的任务。例如,任务异常可以是可由站子集S1中的站和站子集S2中的站执行的任务。图形切分器子模块210可通过应用切分算法切分图形253的线以产生切分结果255。切分结果255可表示已分割的图形253的子图形。切分结果255可存储在数据存储库250中。切分可以是将图形253的顶点(节点)分割成为两个不相交的子集。切分C=(S,T)的大小可为切分集(cut-set)中的线的数量。若对线加权,则切分的值可以是权重的和。在一个实施方式中,图形切分器子模块210将最小切分算法应用于图形253,该最小切分算法为进行最小切分以将图形253切分成两个子图形(例如,G1和G2)的算法。可使用将图形切分成任一数量的子图形的各种切分算法。若用于切分的切分集具有最小的部分(elements)数量,则切分可为最小切分。例如,横跨三条线的切分可产生六个部分(例如,每条被切分的线为两个部分),横跨两条线的切分可产生四个部分。横跨两条线的切分可为最小切分。图形切分器子模块210可基于总权重切分线。图3C为根据各种实施方式的、基于线的总权重切分线的排程问题的示例性图形370。图形370可具有基于可在由线连接的两个站上处理的任务数量的线权重(例如,权重371A至371F)。基于总权重切分线的切分结果可(例如)为两个子图形G1和G2。图形切分器子模块可切分具有最小总权重的线。例如,可切分线303B、303D、303E和303F。图3D为在切分具有最小总权重的线(例如,连接s1和s4的线、连接s2和s3的线、连接s1和s3的线、连接s4和s2的线)之后,可切分成子图形G1391A和子图形G2391B的排程问题的示例性图形390。
对于每一子图形(子图形G1391A和子图形G2391B),图形切分器子模块210可识别站集(例如,S)的子集(例如,S1、S2),其中每个站子集有相应子集的任务(任务子集)。例如,在图3D中,图形切分器子模块210可识别站子集S1对应于子图形G1391A。站子集S1可包括站s1和站s2。图形切分器子模块210还可识别站子集S2对应于子图形G2391B。站子集S2可包括站s3和站s4。图形切分器子模块210可识别站子集S1具有相应的任务子集T1,以及站子集S2具有相应的任务子集T2。任务子集T1可包括任务t1至t6。任务子集T2可包括任务t7至t10。
图形切分器子模块210也可使用切分结果255中的子图形以识别一个或更多个任务异常。该一个或更多个任务异常可被分组以形成另一任务子集(例如,T3)。例如,图形切分器子模块210可确定如果将图形390切分成子图形G1391A及子图形G2391B,那么可能仅存在一个任务异常。该任务异常可由权重值“1”373表示,该权重值可表示可以在s2(站2)和s3(站3)上处理的任务11(t11)。例如,因为任务t11可在处于不同子图形中的站上处理,所以t11为任务异常。
问题翻译器子模块215可使用子图形、每个子图形的站子集和每个子图形的任务子集来识别排程问题的子问题。问题翻译器子模块215可(例如)使用存储于数据存储库250中的模板257和/或配置数据259以将子图形转换成子问题的格式。问题翻译器子模块215可将站子集和对应于站子集的任务子集分组为子问题。例如,站子集S1和任务子集T1可被分组以形成子问题1,站子集S2和任务子集T2可被分组以形成子问题2。问题翻译器子模块215也可识别与排程问题的子问题相关联的任务异常。例如,问题翻译器子模块215可将任务t11识别为与子问题1和子问题2相关联的任务异常。问题翻译器子模块215可产生另一组任务(例如,T3)以表示一个或更多个任务异常。最小数量的任务异常可以是最佳子图形的指示。例如,子图形G1391A和子图形G2391B可产生一个任务异常。在此实例中,子图形G1和子图形G2可指示图形的最佳切分。
图4为用于将排程问题切分成排程子问题的方法400的一个实施方式的流程图。方法400可由处理逻辑执行,处理逻辑可包括硬件(例如,电路、专用逻辑、可编程逻辑、微码(microcode),等等)、软件(例如,在处理装置上执行的指令),或硬件与软件的组合。在一个实施方式中,方法400由排程问题切分器模块107执行,该排程问题切分器模块107由图1的计算装置主存。
在方框401处,处理逻辑接收用户输入的排程问题数据。排程问题数据可包括从制造***中的另一***接收的数据。排程问题数据的用户输入可包括(例如)且不限于:站的序号、描述特定站的站数据(例如,状态)、待执行的任务(例如,一组任务T)、用于执行任务的一组(例如,组S)站或工具、权重类型和权重值。权重类型和权重值可为用于站和/或任务的。排程问题数据也可描述是否可在一个或更多个站上处理任务,并且可识别哪些站可执行任务。
在方框403处,处理逻辑使用排程问题数据建构图形问题。处理逻辑可应用来自用户输入的权重(若存在)以建构加权图形问题。在方框405处,处理逻辑通过应用切分算法将图形切分成子图形,以产生满足阈值的切分结果。阈值的实例可包括(且不限于):产生具有最少任务异常的切分结果、产生具有最少数量任务类型的切分结果、产生具有最少数量的成为异常的任务配方的切分结果。处理逻辑选择满足阈值的子图形的最佳切分。阈值可以是用户定义的阈值。当建构图形时,处理逻辑可应用不同的边(线)权重。不同权重可使得不同类型的异常最少化。在方框407处,处理逻辑识别来自切分结果中的子图形的一个或更多个任务异常。在方框409处,处理逻辑使用切分结果产生关于一个或更多个任务异常的排程子问题。随后,处理逻辑可向排程***提供子问题和任务异常。排程***可使用试探法(heuristic)以将任务异常自动分配至子问题。例如,试探法可基于子问题的带宽(bandwidth)。在另一实例中,可(例如)通过排程***通知用户(例如,处理工程师)一个或更多个任务异常,且该用户可将任务异常分配至子问题。图5图示了通过图3A至3D中的图形所描述的排程问题的示例性排程子问题及示例性任务异常。例如,处理工程师可确定子问题1不具有足够的工作,并且可将任务异常任务11分配至子问题1。
回到图4,方法400的部分可为迭代法。迭代次数可基于可配置和/或用户定义的值。例如,处理逻辑可执行多次迭代,直至(例如)识别了最小数量的的任务异常。例如,在方框405处,处理逻辑可初始地切分图形(例如,图3B中的图形350),其中子图形1可包括站s1和站s4,并且子图形2可包括站s2和站s3。利用这种切分,处理逻辑可识别(例如)五个任务异常。例如,任务t2、t3和t4可在站s1和s2上执行,并且任务t8和t9可在站s4和s1上执行。随后,在方框405处,处理逻辑可切分图形并且识别(例如)一个任务异常(例如,任务t11可在站s2和s3上执行),其中子图形1可包括站s1和s2,子图形2可包括站s4和s3。在方框405处,处理逻辑可比较来自各种切分的任务异常的数量,并且可选择产生最少数量任务异常的切分。例如,处理逻辑可选择该切分,其中子图形1可包括站s1和s2,且子图形2可包括站s4和s3,因为该特定的切分产生一个任务异常。
图6为图示示例性计算装置600的框图。在一个实施方式中,该计算装置对应于主存图1的排程问题切分器模块107的计算装置。计算装置600包括一组指令,该指令用于使该机器执行本文所述任何一个或更多个方法。在可选的实施方式中,该机器可连接(例如,网络连接)至LAN、内联网、外联网,或因特网中的其他机器。该机器可在客户端-服务器网络环境中的服务器机器的容量(capacity)中操作。该机器可为个人计算机(personal computer;PC)、机顶盒(set-top box;STB)、服务器、网络路由器、交换机或桥接器,或任何能够运行一组指令622(顺序或以其他方式)的机器,该组指令622规定了待由该机器完成的动作。进一步地,虽然仅图示了单个机器,但是术语“机器”也应当理解为包括任何个别地或联合地运行一组(或多组)指令622以执行本文所述之任何一个或更多个方法的机器的集合。
示例性计算机装置600包括通过总线630互相通信的处理***(处理装置)602、主存储器604(例如,只读存储器(ROM)、闪存、诸如同步DRAM(SDRAM)的动态随机存取存储器(DRAM)等等)、静态存储器606(例如,闪存、静态随机存取存储器(SRAM)等等)和数据存储装置618。
处理装置602表示一个或更多个通用处理装置,诸如微处理器、中央处理单元等等。更特别地,处理装置602可为复杂指令集计算(complex instruction setcomputing;CISC)微处理器、精简指令集计算(reduced instruction set computing;RISC)微处理器、超长指令字(very long instruction word;VLIW)微处理器,或实施其他指令集的处理器或实施指令集组合的处理器。处理装置602也可为一个或更多个专用处理装置,诸如特定应用集成电路(application specific integratedcircuit;ASIC)、现场可编程门阵列(field programmable gate array;FPGA)、数字信号处理器(digital signal processor;DSP)、网络处理器,等等。处理装置602被配置以运行用于执行本文所述操作及步骤的排程问题切分器模块670。
计算装置600可进一步包括网络界面装置608。计算装置600还可包括视频显示单元610(例如,液晶显示器(liquid crystal display;LCD)或阴极射线管(cathode ray tube;CRT))、字母数字输入装置612(例如,键盘)、光标控制装置614(例如,鼠标)和信号产生装置616(例如,扬声器)。
数据存储库装置618可包括计算机可读存储介质628,在该计算机可读存储介质628上存储实施本文所述方法或功能中的任何一个或多个的一组或多组指令(例如,排程问题切分器模块670的指令)。排程问题切分器模块670也可在其被计算装置600执行期间完全地或至少部分地常驻于主存储器604内和/或处理装置602内,主存储器604和处理装置602也构成计算机可读介质。排程问题切分器模块670可进一步经由网络接口装置608在网络620上传输或接收。
虽然计算机可读存储介质628在示例性实施方式中图示为单个介质,但是术语“计算机可读存储介质”应当包括存储一组或多组指令622的单个介质或多个介质(例如,集中式或分布式数据库,和/或相关联的高速缓存(caches)和服务器)。术语“计算机可读存储介质”也应当包括能够存储、编码或携带一组指令622的任何介质,该指令用于由机器运行且使得机器执行本发明的任何一个或更多个方法。术语“计算机可读存储介质”相应地应当包括(但不限于):固态存储器、光学介质和磁性介质。
在上述描述中阐述了许多细节。然而,对于了解本发明之益处的一般技术人员显而易见的是,本发明的实施方式可在不需要这些特定细节的情况下实现。在某些情况下,将公知的结构及装置以方框框图形式而非详细地图示,以避免模糊本描述。
通过对计算机存储器内的数据位操作的算法和符号表示而呈现详细描述的某些部分。这些算法描述和表示是数据处理技术领域的技术人员用以最有效地将他们的成果之主旨传达给所属领域其他技术人员的手段。此处,算法通常被设想为带来预期结果的一系列自洽性的步骤。该步骤为需要对物理量进行物理操作的那些步骤。通常而非必须地,这些量采取能够存储、传送、组合、比较以及其他可控的电信号或磁信号的形式。已证明,主要由于常见的用途,有时将这些讯号称为位、值、元素、符号、字符、术语、数字等等是便利的。
然而,应注意到,所有这些和类似术语皆与适当的物理量相关联且仅为应用于这些量的便利标记。除非特别叙述,否则如自上文中显而易见的,应理解在本描述的全文中,利用诸如“接收”、“建构”、“切分”、“识别”、“产生”、“分配”、“发送”等术语的论述代表计算装置或类似电子计算装置的动作或处理,该计算装置或类似电子计算装置对在计算机***寄存器和存储器中表示为物理(例如,电子)量的数据进行操作并将其转换为在计算机***存储器或寄存器或其他这种信息存储装置中类似表示为物理量的其他数据。
本发明的实施方式还涉及用于执行本文操作的设备。该设备可为了所需目的而特别地建构,或该设备可包含通用计算机,该通用计算机由存储在计算机中的计算机程序而有选择地启动或重新配置。该计算机程序可存储于计算机可读存储介质中,诸如但不限于包括光盘、只读光盘(Compact Disk-Read OnlyMemory;CD-ROMs)及磁性光盘的任何类型光碟;只读存储器(ROMs);随机存取存储器(random access memories;RAMs);EPROM、EEPROM;磁卡或光学卡,或适合于存储电子指令的任何类型的介质。
应理解,上述描述意欲为说明性而非限制性的。在阅读且理解上述描述之后,许多其他实施方式将对本领域技术人员是显而易见的。因此,本发明的范围应参照所附权利要求以及该权利要求所被授予的等价物的全部范围来决定。
Claims (20)
1.一种方法,所述方法包含以下步骤:
接收用户输入的排程问题数据,所述排程问题数据涉及排程问题,且所述排程问题数据包含一个或多个站以及待通过至少一个站执行的多个任务;
使用所述排程问题数据建构图形问题,所述图形问题包含图形;
使用切分算法将所述图形切分成子图形以产生满足一阈值的切分结果;
从所述切分结果中的所述子图形中识别一个或多个任务异常,其中所述一个或多个任务异常为可分配至多于一个子图形的任务;和
通过计算***使用所述切分结果来产生关于所述至少一个任务异常的多个排程子问题。
2.如权利要求1所述的方法,其中满足所述阈值的所述切分包含产生最少数量的任务异常的切分、产生最少数量的任务类型的切分、或产生最少数量的成为异常的任务配方的切分。
3.如权利要求1所述的方法,其中所述图形包含多个节点以及一条或多条线,所述多个节点表示涉及所述排程问题的站,所述一条或多条线成对地连接所述多个节点以表示与对应于所述连接的节点的所述站相关的任务。
4.如权利要求1所述的方法,其中建构所述图形的步骤进一步包含以下步骤:
将权重分配至在所述图形中表示站的节点或者在所述图形中连接一对节点的线中的至少一个,其中所述线表示与对应于所述连接的节点对的所述站相关的至少一个任务,且所述权重指示与对应于所述节点对的所述站相关的多个任务中的至少一个任务、与对应于所述节点对的所述站相关的任务百分比、或任务优先级。
5.如权利要求1所述的方法,所述方法进一步包含以下步骤:
向排程***发送指示所述多个排程子问题的数据以基于所述数据排程任务时间。
6.如权利要求1所述的方法,其中按照规定的流程顺序处理所述多个任务。
7.如权利要求1所述的方法,其中所述多个任务涉及制造半导体。
8.一种非临时性计算机可读储存介质,所述非临时性计算机可读储存介质包括指令,所述指令当被处理装置执行时使得所述处理装置执行一方法,所述方法包含以下步骤:
接收用户输入的排程问题数据,所述排程问题数据涉及排程问题,且所述排程问题数据包含一个或多个站以及待通过至少一个站执行的多个任务;
使用所述排程问题数据建构图形问题,所述图形问题包含图形;
使用切分算法将所述图形切分成子图形以产生满足一阈值的切分结果;
从所述切分结果中的所述子图形中识别一个或多个任务异常,其中所述一个或多个任务异常为可分配至多于一个子图形的任务;和
通过所述处理装置使用所述切分结果来产生关于所述至少一个任务异常的多个排程子问题。
9.如权利要求8所述的非临时性计算机可读储存介质,其中满足所述阈值的所述切分包含产生最少数量的任务异常的切分、产生最少数量的任务类型的切分、或产生最少数量的成为异常的任务配方的切分。
10.如权利要求8所述的非临时性计算机可读储存介质,其中所述图形包含多个节点以及一条或多条线,所述多个节点表示涉及所述排程问题的站,所述一条或多条线成对地连接所述多个节点以表示与对应于所述连接的节点的所述站相关的任务。
11.如权利要求8所述的非临时性计算机可读储存介质,其中建构所述图形的步骤进一步包含以下步骤:
将权重分配至在所述图形中表示站的节点或者在所述图形中连接一对节点的线中的至少一个,其中所述线表示与对应于所述连接的节点对的所述站相关的至少一个任务,且所述权重指示与对应于所述节点对的所述站相关的多个任务中的至少一个任务、与对应于所述节点对的所述站相关的任务百分比、或任务优先级。
12.如权利要求8所述的非临时性计算机可读储存介质,进一步包含:
向排程***发送指示所述多个排程子问题的数据以基于所述数据排程任务时间。
13.如权利要求8所述的非临时性计算机可读储存介质,其中所述多个任务涉及制造半导体。
14.一种***,所述***包含:
存储器;和
处理装置,所述处理装置与所述存储器耦接以:
接收用户输入的排程问题数据,所述排程问题数据涉及排程问题,且所述排程问题数据包含一个或多个站以及待通过至少一个站执行的多个任务;
使用所述排程问题数据建构图形问题,所述图形问题包含图形;
使用切分算法将所述图形切分成子图形以产生满足一阈值的切分结果;
从所述切分结果中的所述子图形中识别一个或多个任务异常,其中所述一个或多个任务异常为可分配至多于一个子图形的任务;和
使用所述切分结果产生关于所述至少一个任务异常的多个排程子问题。
15.如权利要求14所述的***,其中满足所述阈值的所述切分包含产生最少数量的任务异常的切分、产生最少数量的任务类型的切分、或产生最少数量的成为异常的任务配方的切分。
16.如权利要求14所述的***,其中所述图形包含多个节点以及一条或多条线,所述多个节点表示涉及所述排程问题的站,所述一条或多条线成对地连接所述多个节点以表示与对应于所述连接的节点的所述站相关的任务。
17.如权利要求14所述的***,其中建构所述图形进一步包含:
将权重分配至在所述图形中表示站的节点或者在所述图形中连接一对节点的线中的至少一个,其中所述线表示与对应于所述连接的节点对的所述站相关的至少一个任务,且所述权重指示与对应于所述节点对的所述站相关的多个任务中的至少一个任务、与对应于所述节点对的所述站相关的任务百分比、或任务优先级。
18.如权利要求14所述的***,进一步包含:
向排程***发送指示所述多个排程子问题的数据以基于所述数据排程任务时间。
19.如权利要求14所述的***,其中按照规定的流程顺序处理所述多个任务。
20.如权利要求14所述的***,其中所述多个任务涉及制造半导体。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161553851P | 2011-10-31 | 2011-10-31 | |
US61/553,851 | 2011-10-31 | ||
US13/655,934 US9798947B2 (en) | 2011-10-31 | 2012-10-19 | Method and system for splitting scheduling problems into sub-problems |
US13/655,934 | 2012-10-19 | ||
PCT/US2012/062632 WO2013066902A2 (en) | 2011-10-31 | 2012-10-30 | Method and system for splitting scheduling problems into sub-problems |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104662566A true CN104662566A (zh) | 2015-05-27 |
CN104662566B CN104662566B (zh) | 2018-09-11 |
Family
ID=48193014
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280053934.0A Active CN104662566B (zh) | 2011-10-31 | 2012-10-30 | 用于将排程问题切分成子问题的方法和*** |
Country Status (5)
Country | Link |
---|---|
US (1) | US9798947B2 (zh) |
KR (1) | KR102033131B1 (zh) |
CN (1) | CN104662566B (zh) |
TW (1) | TWI564823B (zh) |
WO (1) | WO2013066902A2 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107247628A (zh) * | 2017-06-22 | 2017-10-13 | 华中科技大学 | 一种面向多核***的数据流程序任务划分与调度方法 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019046836A (ja) * | 2017-08-30 | 2019-03-22 | パナソニックIpマネジメント株式会社 | 生産システムおよび生産方法ならびに生産ライン管理装置 |
DE102021204043B3 (de) | 2021-04-22 | 2022-02-03 | Robert Bosch Gesellschaft mit beschränkter Haftung | Scheduler und, insbesondere computerimplementiertes, Verfahren zur Maschinenzeitplanung zum Durchführen einer Gruppe von Jobs einer Aufgabe mit einem Maschinensatz |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050278049A1 (en) * | 2004-05-25 | 2005-12-15 | Asml Netherlands B.V. | Method of planning tasks in a machine, method of controlling a machine, supervisory machine control system, lithographic apparatus, lithographic processing cell and computer program |
US20080216077A1 (en) * | 2007-03-02 | 2008-09-04 | Applied Materials, Inc. | Software sequencer for integrated substrate processing system |
US20080218518A1 (en) * | 2007-03-06 | 2008-09-11 | Zhou Yunhong | Balancing collections of vertices in a network |
US20090106184A1 (en) * | 2007-10-19 | 2009-04-23 | Yahoo! Inc. | Locating dense and isolated sub-graphs |
CN102123075A (zh) * | 2010-01-12 | 2011-07-13 | 财团法人工业技术研究院 | 适用于多媒体串流的网络分组传送***与方法 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE68926701T2 (de) * | 1988-08-09 | 1997-02-20 | Matsushita Electric Ind Co Ltd | Datenverarbeitungsgerät zur parallelen Dekodierung und parallelen Ausführung von Befehlen mit variabler Wortlänge |
JPH04365162A (ja) * | 1991-06-13 | 1992-12-17 | Matsushita Electric Ind Co Ltd | 資源割当解析方法とスケジューリング方法およびそのシステム |
KR950029969A (ko) * | 1994-04-13 | 1995-11-24 | 김광호 | 하이퍼큐브 멀티컴퓨터의 타스크할당 방법 및 장치 |
US6112023A (en) * | 1997-02-24 | 2000-08-29 | Lucent Technologies Inc. | Scheduling-based hardware-software co-synthesis of heterogeneous distributed embedded systems |
US6490566B1 (en) | 1999-05-05 | 2002-12-03 | I2 Technologies Us, Inc. | Graph-based schedule builder for tightly constrained scheduling problems |
US6735596B2 (en) * | 2001-06-07 | 2004-05-11 | Guy Charles Corynen | Computer method and user interface for decision analysis and for global system optimization |
US6701201B2 (en) | 2001-08-22 | 2004-03-02 | International Business Machines Corporation | Decomposition system and method for solving a large-scale semiconductor production planning problem |
US20050137734A1 (en) | 2003-12-23 | 2005-06-23 | Asml Netherlands B.V. | Method of operating a lithographic apparatus or lithographic processsing cell, lithographic apparatus and lithographic processing cell |
US7614037B2 (en) * | 2004-05-21 | 2009-11-03 | Microsoft Corporation | Method and system for graph analysis and synchronization |
US7827305B2 (en) * | 2005-06-22 | 2010-11-02 | Hewlett-Packard Development Company, L.P. | Determination of a state of flow through or a cut of a parameterized network |
WO2007089674A2 (en) * | 2006-01-27 | 2007-08-09 | The Arizona Board Of Regents, A Body Corporate Acting On Behalf Of Arizona State University | Methods for generating a distribution of optimal solutions to nondeterministic polynomial optimization problems |
CN101079121A (zh) * | 2006-05-24 | 2007-11-28 | 宝山钢铁股份有限公司 | 冶金行业综合计划排程***和方法 |
US20080215409A1 (en) | 2007-01-03 | 2008-09-04 | Victorware, Llc | Iterative resource scheduling |
US7765020B2 (en) | 2007-05-04 | 2010-07-27 | Applied Materials, Inc. | Graphical user interface for presenting multivariate fault contributions |
US8984520B2 (en) * | 2007-06-14 | 2015-03-17 | Microsoft Technology Licensing, Llc | Resource modeling and scheduling for extensible computing platforms |
US7937678B2 (en) * | 2008-06-11 | 2011-05-03 | Infineon Technologies Ag | System and method for integrated circuit planar netlist interpretation |
US9003419B2 (en) * | 2009-07-30 | 2015-04-07 | Hewlett-Packard Development Company, L.P. | Network balancing procedure that includes redistributing flows on arcs incident on a batch of vertices |
US9984327B2 (en) * | 2010-06-17 | 2018-05-29 | Palo Alto Research Center Incorporated | System and method for parallel graph searching utilizing parallel edge partitioning |
US8812653B2 (en) * | 2010-08-05 | 2014-08-19 | Novell, Inc. | Autonomous intelligent workload management |
-
2012
- 2012-10-19 US US13/655,934 patent/US9798947B2/en active Active
- 2012-10-30 CN CN201280053934.0A patent/CN104662566B/zh active Active
- 2012-10-30 TW TW101140106A patent/TWI564823B/zh active
- 2012-10-30 WO PCT/US2012/062632 patent/WO2013066902A2/en active Application Filing
- 2012-10-30 KR KR1020147014586A patent/KR102033131B1/ko active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050278049A1 (en) * | 2004-05-25 | 2005-12-15 | Asml Netherlands B.V. | Method of planning tasks in a machine, method of controlling a machine, supervisory machine control system, lithographic apparatus, lithographic processing cell and computer program |
US20080216077A1 (en) * | 2007-03-02 | 2008-09-04 | Applied Materials, Inc. | Software sequencer for integrated substrate processing system |
US20080218518A1 (en) * | 2007-03-06 | 2008-09-11 | Zhou Yunhong | Balancing collections of vertices in a network |
US20090106184A1 (en) * | 2007-10-19 | 2009-04-23 | Yahoo! Inc. | Locating dense and isolated sub-graphs |
CN102123075A (zh) * | 2010-01-12 | 2011-07-13 | 财团法人工业技术研究院 | 适用于多媒体串流的网络分组传送***与方法 |
Non-Patent Citations (1)
Title |
---|
YUFENG LU: ""Scheduling of Wafer Test Processes in Semiconductor Manufacturing"", 《INTERNATIONAL JOURNAL OF PRODUCTION RESEARCH》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107247628A (zh) * | 2017-06-22 | 2017-10-13 | 华中科技大学 | 一种面向多核***的数据流程序任务划分与调度方法 |
CN107247628B (zh) * | 2017-06-22 | 2019-12-20 | 华中科技大学 | 一种面向多核***的数据流程序任务划分与调度方法 |
Also Published As
Publication number | Publication date |
---|---|
KR20140097259A (ko) | 2014-08-06 |
TW201333843A (zh) | 2013-08-16 |
KR102033131B1 (ko) | 2019-10-16 |
US20140136252A1 (en) | 2014-05-15 |
US9798947B2 (en) | 2017-10-24 |
TWI564823B (zh) | 2017-01-01 |
WO2013066902A3 (en) | 2015-06-25 |
WO2013066902A2 (en) | 2013-05-10 |
CN104662566B (zh) | 2018-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | Application of genetic algorithm to computer-aided process planning in distributed manufacturing environments | |
Hou et al. | Towards a more extensive application of off-site construction: a technological review | |
Johnzén et al. | Flexibility measures for qualification management in wafer fabs | |
US8706450B2 (en) | Method and system for identification of grouping characteristics | |
Mahmoodi et al. | The impact of Industry 4.0 on bottleneck analysis in production and manufacturing: Current trends and future perspectives | |
Alavian et al. | Multi-job production systems: definition, problems, and product-mix performance portrait of serial lines | |
Borgia et al. | STEP-NC compliant approach for setup planning problem on multiple fixture pallets | |
US20160275219A1 (en) | Simulating an industrial system | |
CN104662566A (zh) | 用于将排程问题切分成子问题的方法和*** | |
Cai et al. | Adaptive setup planning of prismatic parts for machine tools with varying configurations | |
Júnior et al. | Industry 4.0 as a way to enhance Lean Manufacturing and Six Sigma | |
Zaleta et al. | Automation of optimization synthesis for modular technological equipment | |
US9665668B2 (en) | Configuring a dispatching rule for execution in a simulation | |
Naderi et al. | Modeling and scheduling a flexible manufacturing cell with parallel processing capability | |
Ng et al. | Interleaving innovization with evolutionary multi-objective optimization in production system simulation for faster convergence | |
Wdowik et al. | Collaborative Technological Process Planning with 5G Mobile Networks and Digital Tools: Manufacturing Environments' Perspective | |
Gupta et al. | A novel approach for part family formation for reconfiguration manufacturing system | |
Mas et al. | Concurrent conceptual design of aero-structure assembly lines | |
Tanuska et al. | Data mining model building as a support for decision making in production management | |
Chakravorti et al. | Validation of PERFoRM reference architecture demonstrating an automatic robot reconfiguration application | |
US11327471B2 (en) | Building and tracking of an automation engineering environment | |
Bettayeb et al. | Quality and exposure control in semiconductor manufacturing. Part II: Evaluation | |
Mehdi et al. | A simulator testbed for MT-Connect based machines in a scalable and federated multi-enterprise environment | |
CN110298626A (zh) | 开关设备制造业务处理方法及装置 | |
Hossain et al. | Integrated modeling and application of standardized data schema |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |