项目下载地址:https://download.csdn.net/download/qq_36388734/11390210
**

欢迎下载

**
第1章作业车间调度问题
1.1问题的描述
作业车间调度问题(Job Shop Scheduling, JSP)是最经典的几个NP-hard问题之一。其应用领域极其广泛,涉及航母调度,机场飞机调度,港口码头货船调度,汽车加工流水线等。
JSP问题描述:一个加工系统有M台机器,要求加工N个作业,其中,作业i包含工序数为Li。令,则L为任务集的总工序数。其中,各工序的加工时间已确定,并且每个作业必须按照工序的先后顺序加工。调度的任务是安排所有作业的加工调度排序,约束条件被满足的同时,使性能指标得到优化。
作业车间调度需要考虑如下约束:
Cons1:每道工序在指定的机器上加工,且必须在其前一道工序加工完成后才能开始加工;
Cons2:某一时刻1台机器只能加工1个作业;
Cons3:每个作业只能在1台机器上加工1次;
Cons4:各作业的工序顺序和加工时间已知,不随加工排序的改变而改变。
1.2问题的数学模型
生产调度对企业的生产作业过程具有重要的作用。有效的调度方法和优化技术是实现先进制造和提高生产效益的基础和关键。研究和解决好调度问题,能极大提高企业的生产效率,从而提高这些企业的竞争力。自从1954年Johnson发表第一篇关于流水车间调度问题的文章以来,流水车间调度问题引起了许多学者的关注,提出了许多解决的方法。其中,以遗传算法、模拟退火、禁忌搜索以及人工神经网络为代表的智能化优化技术迅速发展,用来解决流水车间调度问题,受到人们的普遍关注。本文使用的是贪心算法求解。
在本课程的综合设计与实现环节中,我们将作业车间调度问题的优化目标设为最大完工时间最小:令(i,j)表示作业i的第j个工序。Sij和Tij分别表示(i,j)的加工起始时刻和加工时间。Zijk表示(i,j)是否在第k台机器上加工:如果(i,j)在第k台机器上加工,Zijk=1;否则,Zijk=0。Ck为第k台机器的完工时间,则问题的数学模型如下:
(1)
(2)
(3)
(4)
公式(1)为目标函数,使最迟完工的机器尽早完成,即加工时间最短;公式(2)表示1个作业只能在加工完成前一道工序后才可以加工后一道工序;公式(3)表示1个作业的第1道工序的起始加工时刻大于或等于0;公式(4)表示在1台机床上不会同时加工1个以上的作业。
本文使用的是贪心算法求解。
贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的是在某种意义上的局部最优解。贪心算法不是对所有问题都能得到整体最优解,关键是贪心策略的选择,选择的贪心策略必须具备无后效性,即某个状态以前的过程不会影响以后的状态,只与当前状态有关。
在贪心算法中,仅在当前状态下做出最好选择,即局部最优选择。然后再去解出做出这个选择后产生的相应的子问题。贪心算法所做的贪心选择可以依赖于以往所做过的选择,但决不依赖于将来所做的选择,也不依赖于子问题的解。正是由于这种差别,动态规划算法通常以自底向上的方式解各个问题,而贪心算法则通常以自顶向下的方式进行,以迭代的方式做出相继的贪心选择,没做一次贪心选择就将所求问题简化为规模更小的子问题。最优解问题大部分都可以拆分成一个个的子问题,把解空间的遍历视作对子问题树的遍历,则以某种形式对树整个的遍历一遍就可以求出最优解,大部分情况下这是不可行的。贪心算法是动态规划方法的一个特例,可以证明每一个子树的根的值不取决于下面叶子的值,而只取决于当前问题的状况。换句话说,不需要知道一个节点所有子树的情况,就可以求出这个节点的值。由于贪心算法的这个特性,它对解空间树的遍历不需要自底向上,而只需要自根开始,选择最优的路,一直走到底就可以了。
将问题转换为这样的形式:对其做出一次选择后,只剩下一个子问题需要求解。证明做出贪心选择后,原问题总是存在最优解,即贪心选择总是安全的。这种证明通常首先考察某个子问题的最优解,然后用贪心选择替换某个其它选择来修改此解,从而得到一个相似但更小的子问题。证明做出贪心选择后,剩余的子问题满足性质:其最优解与贪心选择组合即可得到原问题的最优解,这样就得到了最优子结构。
贪心算法每一步必须满足以下条件
  1、可行的:即它必须满足问题的约束。
  2、局部最优:他是当前步骤中所有可行选择中最佳的局部选择。
  3、不可取消:即选择一旦做出,在算法的后面步骤就不可改变了。
其中每个工序上标注有一对数值(m,p),其中,m表示当前工序必须在第m台机器上进行加工,p表示第m台机器加工当前工序所需要的加工时间。(注:机器和作业的编号从0开始)
jop0=[(0,3),(1,2),(2,2)]
jop1=[(0,2),(2,1),(1,4)]
jop2=[(1,4),(2,3)]
举个实际例子,作业jop0有3道工序:它的第1道工序上标注有(0,3),其表示第1道工序必须在第0台机器上进行加工,且需要3个单位的加工时间;它的第2道工序上标注有(1,2),其表示第2道工序必须在第1台机器上进行加工,且需要2个单位的加工时间;余下的同理。总的来说,这个实例中共有8道工序。
该问题的一个可行解是L=8道工序开始时间的一个排列,且满足问题的约束。下图给出了一个可行解(注:该解不是最优解)的示例:

图1.2.1
在上图中,我们能看到每个作业的工序按照问题给定的顺序进行了加工,且相互之间没有时间区间重叠。这个可行解的结果是12,即三个作业均被加工完成的时间。
1.3贪心算法的伪代码
程序的主体部分:
int black=0;
for(int i = 1; i<= machinenumber; i++)
black=max(black, totalTime[i]);
获取当前全部机器工作时间最长的值
if(black> upworld)
return ;
如果该值超过上界 则砍掉该分支
如果执行完全部工序 则输出可行解
upworld =min(upworld,black);缩小上界
若作业i已经执行完全部工序 跳过该作业
获取当前产品(i)执行的工序
产品(i)继续向下执行工序
机器(totalTime)的生产 作业(i)工序(zuoluo[i])的时间
if(totalTime[machineMatrix[i][zuoluo[i]]]<= lufe[i])进行比较
将机器(totalTime)的生产 作业(i)当前工序花费的总时间 付给tmp[i]
将作业i放入结果集
Greedy(farmer+1); 完成工序数+1 进行深度搜索
将全局变量返回到当时状态
1.4贪心算法的实现代码
package com.company;

import java.util.Scanner;
import static java.lang.Integer.max;
import static java.lang.Math.min;

public class water {
// 作业i的第j道工序花费的时间
int timeMatrix[][] = new int[10][10];
// 作业i的第j道工序在哪个机器上运作
int machineMatrix[][] = new int [10][10];
//作业有多少道工序
int process[] = new int[10];
//totalTime[i] 第i 个机器花费的总时间
int totalTime[] = new int[10];
int lufe[] = new int[10];
//代表作业i进行到了第几道工序;
int zuoluo[] = new int[10];
//结果集合
int resultSet[] = new int[100];
//工序总数 机器数 产品数
int sum, machinenumber, productnumber;
//上界
int upworld;

void Greedy(int farmer)
{int black=0;for(int i = 1; i<= machinenumber; i++) black=max(black, totalTime[i]);     //获取当前全部机器工作时间最长的值if(black> upworld)return ;        //如果该值超过上界 则砍掉该分支if(farmer==sum) {     //如果执行完全部工序 则输出可行解for(int i=1; i<=farmer; i++)System.out.print(resultSet[i]+" ");System.out.println();//缩小上界upworld =min(upworld,black);        return ;}else {for(int i = 1; i<= productnumber; i++) {if(zuoluo[i]== process[i]) {//作业i已经执行完全部工序 跳过该作业continue;}else {//获取当前产品(i)执行的工序int w= zuoluo[i];     //产品(i)继续向下执行工序  zuoluo[i]++;           int p= totalTime[machineMatrix[i][zuoluo[i]]];                      //机器(totalTime)的生产 作业(i)工序(zuoluo[i])的时间int q= lufe[i];if(totalTime[machineMatrix[i][zuoluo[i]]]<= lufe[i]){    //进行比较totalTime[machineMatrix[i][zuoluo[i]]]= lufe[i]+ timeMatrix[i][zuoluo[i]];}else{totalTime[machineMatrix[i][zuoluo[i]]]+= timeMatrix[i][zuoluo[i]];}lufe[i]= totalTime[machineMatrix[i][zuoluo[i]]];                 //将机器(totalTime)的生产 作业(i)当前工序花费的总时间 付给tmp[i]//将作业i放入结果集resultSet[farmer+1]=i; //完成工序数+1 进行深度搜索          Greedy(farmer+1);             //将全局变量返回到当时状态lufe[i]=q;zuoluo[i]=w;totalTime[machineMatrix[i][zuoluo[i]+1]]=p;}}}
}public static void main(String[] args) {water timi = new water();System.out.println("请输入");Scanner scan = new Scanner(System.in);timi.productnumber = scan.nextInt();timi.machinenumber = scan.nextInt();for(int i = 1; i<=timi.productnumber; i++) {timi.process[i] = scan.nextInt();timi.sum += timi.process[i];for (int j = 1; j <= timi.process[i]; j++) {timi.machineMatrix[i][j] = scan.nextInt();timi.timeMatrix[i][j] = scan.nextInt();}}timi.upworld =1000000;timi.Greedy(0);System.out.println("较优解为:" +timi.upworld);}

}

第2章生产计划排程管理系统
2.1生产计划排程管理系统概述
生产管理是通过对生产系统的战略计划、组织、指挥、实施、协调、控制等活动,实现系统的物质变换、产品生产、价值提升的过程。要善于进行生产运营战略的设计计划、运作与控制、分析与改善的P、D、C、A循环,分析问题、查找原因、制定对策、改善生产。
生产管理是企业价值链的主要环节,是构成企业核心竞争力的关键内容。MES是企业级的资源计划系统和工厂底层的控制系统之间的各种工厂管理系统的集合,是提高企业工厂制造能力和生产管理能力的重要手段。主要包括生产计划与调度、物料平衡及物流、库存、工艺技术、过程监控、质量、HSE、设备、能源、成本、绩效管理等。
2.1.1生产计划排程管理系统的背景及意义
过去改革开放30多年中,中国经济以年平均9.7%速度高速成长,并且未来30年将保持7%的速度增长。2010《财富》世界500强,中国企业已达54家,中国制造业总产值世界排名第三,其中200多种产品产量排名世界第一,“中国制造”与“中国价格”对全球产业带来的震撼。在华南、华东和其他区域,有着数以千计的小跨国公司,在各自领域扮演着全球行业领导者角色。无论是从规模还是从效率的角度上看,中国制造业都存在巨大的发展潜力。
随着城市化进程的加快,人民生活水平和消费能力的持续提高,从而为中国制造业提供了不竭的发展动力。中国资源丰富,人力资源充足,政治环境稳定以及基础设施条件日趋完善,促进制造业蓬勃发展。通过先进制造业的结构调整,以信息化产业推动制造业的高速发展,不断壮大制造业发展规模,努力提升先进制造水平,把握经济浪潮中的发展机遇,实现由“世界工厂”到“世界市场”,“中国制造”到“中国智造”的转变。
然而信息化时代的今天,技术的进步、全球化的竞争与市场环境迅速变化,也使得制造企业的经营环境变得日益复杂,集中表现在全球化供应链和国际市场竞争的参与,劳动力成本、原材料加工不断上涨,各种环保的法规、政策相继出台。与此同时客户需求也变得多样化和个性化,产品生命周期与交货期不断缩短。生产方式也从大批量生产转变为多品种小批量、客户定制与柔性化生产。这些变化使得中国的制造业面临前所未有的挑战,具体表现在:
1、新产品推出速度快,产品生命周期的缩短,需求与供给快速变动,生产如何快速反应;
2、生产大量定制产品,多品种、小批量使得生产计划制定难度增大;
3、客户订单交货期限制更加严格,如何提升准时交货率,提高客户满意度;
4、库存不断增加,导致大量资金被占用,资金周转受到严重影响;
5、生产计划在很短的时间内频繁变更,面对紧急插单不知所措,不断造成经济损失;
6、无法准确评估设备产品和物流库存,无法监控生产过程,无法及时掌握生产进度;
7、由于各种不确定性因素太多,手工的生产计划过程完全是“拍脑袋”,凭经验;
8、各生产小组之间工作安排不均,考核不合理,经常发生矛盾,工人意见大,积极性不高。
生产计划与生产调度环节是企业生产管理的核心,生产调度控制既是先进制造技术的核心也是现代管理技术的主要内容,在现有的技术水平和生产条件下如何在保证交货期的前提下降低产品生产成本以及控制产品生产质量,成为模具制造企业能否适应多变的市场需求首当其冲的问题。生产调度研究成为企业提高经济效益、增强综合竞争力的重要途径,因而研究制造企业多订单单件小批量定制化生产过程的生产调度问题与方法对于企业管理水平的提高、综合竞争力的提升乃至行业的进步与发展都有十分重要的意义。
制造企业车间生产调度问题以其复杂性、随机性、多约束性成为企业生产运作管理难题,目前人们己经摸索出了许多有效的生产调度方法,但主要凭借调度人员根据以往经验手工定制实施调度计划依然是大部分模具制造企业目前生产调度的现状,对于简单的调度任务这种办法基本可行,但随着企业规模的不断发展壮大必将导致企业的订单业务量增加,这种调度方法无法做到对外部多变的市场环境快速反应,实施手工调度的企业需要花费大量的劳动力成本培养调度管理人员且随之面临着经验丰富的调度管理人员流失的问题,因此在目前理论研究成果之上,引入科学的管理方法实施企业信息化管理对于改善车间生产调度问题,提高企业排产效率有着重要的现实意义。
随着中小型企业目前市场多样化需求的持续增加,而各行业产能过剩 的情况还在继续,这就越来越迫使企业的生产模式朝着多品种生产发展以满足大规模个性化定制的市场需求。企业为了获得更多的竞争优势,扩大利润的重点已不再 是仅仅扩大市场销售份额,而是通过对生产过程中产能的合理控制以及生产计划的合理安排来降低生产成本,从而以大规模生产的成本和迅速的市场反应来满足客户需求
2.1.2生产计划排程管理系统的国内外现状
2.1.2.1 国外研究现状:
传统的计划和排程源于二十世纪六十年代,伴随着物料需求MRP的出现,当然,在其之后有MRP II及最后演变而来的企业资源计划与管理ERP系统的车间管理出现。MPS计划变成MRP计算的输入,计算也会根据主计划的采购订单和所有物料的协同展开。在当时,制造业的需求与当今的制造业需求是大相径庭的。在ERP系统里,MPS主生产计划被用来制定计划,用以工厂结合库存和供给水平来平衡计划,销售需求(订单,预测或这两者的结合)。在过去,那时的计划主要是从各方面协调将即将延迟的交货或已经滞后的订单,并根据所有订单的交期,结合采购部件的到达时间来设定一个既定的目标交期。计划过程的主要投入是物料清单,工艺流程以及库存和在制品。制造商可用ERP里面的APS功能满足其当时的商业的需求。自从那时,ERP系统就被重新定义,但他们仍建立在同一个概念上及之前的重复过程上。ERP系统里的计划引擎是与二十世纪七十年代的在本质上是一样。既然MRP计算假定无限的生产产能,其他的条件是被加至排程过程中,包括粗排程计划(RCCP)和产能需求计划(CRP)。在其给计划过程增加条件的时候,传统的CRP就变得有点格格不入。此结果能告知生产经理工厂是否产能负荷过重,甚至可追溯到加工至哪个工站及问题出现在哪个工战。但生产计划人员仍需尽力应付订单所出的故障,在传统的系统里,模拟排程的功能,即便是有,也是很少的。最终,在ERP系统里,MPS主生产计划被用来制定计划,用以工厂结合库存和供给水平来平衡计划、销售需求(订单,预测或这两者的结合)。最终,MPS计划变成MRP计算的输入,计算也会根据主计划的采购订单和所有物料的协同制造来展开生产。经证实,有效的过程能给全球的厂商带来许多益处。
此外,选择计划的比较成本尚未考虑,计算也忽略了其他产能限制的条件,比如劳动力技术,优先的生产顺序,上模和下模损失时间等,以及具体行业的排程的有效周期等问题。然而,传统ERP计划的主要不足是制程的迭代需求的重复性质及针对变化的调整时间。MPS, RCCP, MRP和CRP的计划过程都是分开的,串行的,重复的。但是去调查产能缺陷,做变化-通常都是手动调整的-然后去重复所有的过程去重新检查可用性。从根本上来讲,系统是用来发现问题,而不是解决问题。重叠新订单导入的频率,将简单的发现昨日尚好的计划为何今天不再不能满足动态的供应链的挑战的原因。
2.1.2.2 国内研究现状:
大多数旨在获取利润的制造企业有三个目标:最大的客户服务、最小的库存投资、高效率(低成本)的工厂作业。达成这些目标的过程中主要问题是这些目标基本上是互相冲突的,若把库存水平提得很高而且不惜通过改变生产水平与生产日程去满足客户需求的变化,就可以提供最大的客户服务。但这种做法要以牺牲第二,第三个目标为代价来达成第一个目标。若生产水平难得更改,不发生加班加点,机器一旦调整好之后就长期运转,只生产某一特定产品,则工厂作业可以保持在很高效率这一水平线上;然而,其结果却是在达成最高工厂效率这一目标的同时反而带来了巨大的库存量还有不良的客户服务。倘若使客户等待而且强迫工厂对客户需求的变化与生产的中断迅速做出响应,则库存在可以维持低水平。在现实生活当中,由于上述的三种目标对于持久的成功几乎同等地重要,很少有哪家公司能当得起只顾全其中一个目标而排斥另外两个目标。
生产与库存的控制基本上就是同为在工厂作业中协调这些目标所需要的入场决策所来提供的信息这件事情打交道。对于拥有自己的小小制造企业公司的一名经理,这些目标基本冲突这一事实是明摆着的。他对工厂中的机器设备投入了他的资金,他控制着自己的制造日程,他又是他自己的销售代表。当一家客户要求立即交货是,他的对策是清晰明了的,或者化钱去搞调整机器与加班加点,或者让客户等待着。他也可以采取为未来的生意持有库存—成品、零件或原材料的对策,以便有可能给他的客户提供更好更完善的服务。
在如今的国内制造企业的现状中,为客户服务的责任落在组织的一个部门,即销售部,它很少考虑提高工厂效率或者降低库存水平的责任。另一方面,制造部门的人员通常对库存感有不多的责任,对客户服务也许有稍微多一点的责任。事实上,许多车间经理与建工人员恐怕从来也不是从客户的观点来看待他们的活动的。往往这些人员的绩效并非是以他们在公司的总体目标来衡量的,而是以他们达成他们被委派的有限目的的能力来衡量的。
在排程方面有难度,有一些尚未解决的问题:
(1)复杂多约束的生产现场,因为复杂的工艺路径对各种设备的特殊需求各不相同,有限产能的生产设备, 物料、工装模具及人员的约束。
(2)多品种小批量的复杂生产模式,因为多品种并行、资源共享易出现瓶颈、定单变化和生产周期的不确定性、计划排程、应变能力、监控订单进度难、物料变化多变,导致缺料与采购延迟严重。
(3)动态变动的生产环境,临时订单改变、紧急插单的情况经常出现。实际进度和计划排产的不吻合。产品流程不断变化,新产品研制流程的不确定性,机器设备故障检修,员工生病请假等。
(4)精益生产的多品种混排模式,导致排序需要根据节拍优化顺序,既要考虑客户的交期,又要考虑上游供应的均衡和JIT/JIS准时、顺序、同步化。
制作生产计划需要平衡四个矛盾:满足客户交货期与生产成本之间的矛盾、产能最大化与浪费最小化之间的矛盾、库存成本最小化与客户需求的矛盾、批量采购与库存最小化之间的矛盾。
在计划方面的难度:
(1)客户交货期与生产成本之间的矛盾,为了满足具有竟争力的交期,可能需要投入很多的产能成本。既要在既定的成本下,最优的客户服务。
(2)产能最大化与浪费最小化之间的矛盾,为了满足资源利用最大化来提高效率,但是又要考虑过量生产带来的浪费。
(3)批量采购与库存最小化之间的矛盾,大量的采购带来的低价,但会导致库存溢出。
2.2开发技术及工具的选择合理性说明
环境:JDK
开发工具:IDEA
数据库:mysql + Navicat premium
服务:tomcat
2.3生产计划排程管理系统的需求分析
2.3.1系统的目标
通过BS体系架构,这样开发、操作过程简单,呈现清晰。
分模块的设计,能够根据客户的需要去添加和删除,可扩展性强。
保证系统的高可用性,能够应对工厂生产计划排程的大部分需求
使用SSM框架,系统拥有较好的稳定性
2.3.2系统的功能性需求分析

2.3.2.1 系统的主要性能需求


图2.3.2.2 EMS流程

图2.3.2.3 产品工序管理


2.3.3系统的非功能性需求分析

图2.3.3.1 登录流程

2.4生产计划排程管理系统的系统设计
2.4.1系统的技术架构设计
遵循原则:
交货期先后原则:交货期越短,交货时间越紧急的产品,越应该安排在最早的时间生产;客户分类原则:客户有重点客户,一般客户之分,越重点的客户应该让其排程更文蔚受到重视;产能平衡原则:各生产线生产应顺畅进行,半成品生产线与成品生产线的生产速度应当相同,机器负荷应考虑,不能生产的瓶颈,出现停线待料的事件; 工艺流程原则:工序越多的产品,制造时间越长,应重点给予关注。
制定生产计划原则:
(1)最少项目原则:用最少的项目数进行生产计划的安排。如果生产计划中的项目数过多,就会使预测和管理都变得困难。因此,要根据不同的制造环境,选取产品结构不同的级,进行生产计划的编制。使得在产品结构这一级的制造和装配过程中,产品(或)部件选型的数目最少,以改进管理评审与控制。
(2)独立具体原则:要列出实际的、具体的可构造项目,而不是一些项目组或计划清单项目。这些产品可分解成可识别的零件或组件。生产计划应该列出实际的要采购或制造的项目,而不是计划清单项目。
(3)关键项目原则:列出对生产能力、财务指标或关键材料有重大影响的项目。对生产能力有重大影响的项目,是指那些对生产和装配过程起重大影响的项目。如一些大批量项目,造成生产能力的瓶颈环节的项目或通过关键工作中心的项目。对财务指标而言,指的是与公司的利润效益最为关键的项目。如制造费用高,含有贵重部件,昂贵原材料,高费用的生产工艺或有特殊要求的部件项目。也包括那些作为公司主要利润来源的,相对不贵的项目。而对于关键材料而言,是指那些提前期很长或供应厂商有限的项目。
(4)全面代表原则:计划的项目应尽可能全面代表企业的生产产品。反映关于制造设施,特别是瓶颈资源或关键工作中心尽可能多的信息。
(5)适当裕量原则:留有适当余地,并考虑预防性维修设备的时间。可把预防性维修作为一个项目安排在生产计划中,也可以按预防性维修的时间,减少工作中心的能力。
(6)适当稳定原则:在有效的期限内应保持适当稳定。生产计划制订后在有效的期限内应保持适当稳定,那种只按照主观愿望随意改动的做法,将会引起系统原有合理的正常的优先级计划的破坏,削弱系统的计划能力。
根据生产系统约束因素的分析及其优化,为保证新的生产计划系统不受生产调度等因素的约束,对生产计划编制方法进行创新。提出了核心工序生产计划拉动策略,运用拉动方式实现一体化平衡物流的思想。生产计划从订单开始制定,并向前、向后拓展整个计划体系。以此逐工序递推,并制定合理的各工序在制品库存量,及各工序生产计划。
在此思路下,基于生产调度平衡的核心工序计划拉动方法,控制的重心是工序间、机组之间生产调度平衡。此方法控制有两个关键点:
第一,库存控制水平。该方法工序计划制定后,涉及关键工序在制品库存水平的确定,必要的库存水平是保证连续生产工序连续生产的基础,但如果在制品库存高出需求值,会造成局部物流堵塞,并给前后工序传递错误的生产信息,造成生产系统的紊乱,因此库存控制水平将直接决定生产计划的运转情况。为控制生产系统库存水平,引入库存定额概念,以动态调整生产流程中的库存总量。实施过程中实际库存量围绕库存定额上下波动,把库存总量控制在一个理想的范围内,既避免生产装备待料停车,又杜绝过高的库存量影响企业的正常运转。
第二,工序自律优化。此计划方法采用与生产流程逆向递推的方式,编制各工序的生产计划及相应的库存水平,各工序应按照计划内容自律的维护生产调度系统,摒弃现行的本工序产量优先的原则。同时,工序并行机组间要做到生产调度平衡,并进行自律物料调节转移及降低机组品种切换成本。
2.4.2系统的功能结构设计
(1)订单管理
如何有效管理,快速准确寻找和报价是订单管理的关键。根据企业的生产状况,合理接受和安排定单。换材料如何快速核算成本系统流程图,快速回复客户。
(2)成品BOM(物料清单)管理
如何科学的表达和输入数据,保证其完整和准确性。
(3)项目变更管理
跟随材料变更(用量、用料等)阶段的产生,影响逐步扩大,开发、算料、采购、生产等各阶段如何有效合理控制应对。
(4)采购管理及快速应变
面对突发的生产状况,如何快速处理,最大限度优化采购。最大限度降低呆滞库存及库存积压。
(5)原物料库存管理
库存原材的准确记录是库存管理的关键。及时应对多送货状况降低呆滞库存,共享原料。
(6)生产及用料管理
生产及用料管理包括很多要素。如是否所有订单都己经合理的安排生产:生产制单和包装指令是否正常下达;生产标准材料用量的控制;外发及委外加工责任是否明确,发料如何控制执行;重点工序是否有效的统计及管控;权限下放是否可有效控制;组内人员工作安排是否公平合理等。

                     图2.4.2.1 系统功能结构设计

2.4.3系统中核心功能业务逻辑设计
(1)作业车间调度功能的业务逻辑设计

(2)设备状态管理功能的业务逻辑设计(例如,设备状态管理、物料采购与库存管理等)

2.4.4 数据库设计

                     2.4.4.1 chanpin表2.4.4.2 file表2.4.4.3 gongxvbiao表2.4.4.4jiqi表2.4.4.5 user表

                 2.4.4.6 数据库ER图

2.5MES的实现与测试
2-5-1测试数据:

图2.5.4 机器管理

图2.5.5 工件管理


图2.5.6 产品时序管理

图2.5.7 上传加工图纸


图2.5.8下载加工图纸

图2.5.9 结果展示


第3章总结
改革开放以来,我国制造业迅速发展,一跃成为我国最大的产业部门,并使我国成为全球制造业基地。然而我国制造业也面临着全球化竞争与市场环境迅速变化、客户需求多样化和个性化及产品生命周期与交货期不断缩短等重重困境。通过运用优化技术和先进管理理念,生产计划排程管理系统有效的平衡有限生产能力和物料需求,帮助企业建立精准、详尽的生产与物料计划,持续改进企业生产管理水平,增强企业竞争力,协助企业从“中国制造”向“中国智造”的战略转变。
面对日新月异的市场环境,制造企业获得进一步稳定发展就必须引入先进的信息化技术和管理理念,需要充分地去利用科学化、系统化的计划管理,生产计划安排,还有不断优化工作流程,才能将企业现有资源最大程度的整合,提高企业应对市场的能力,提高企业的核心竞争力。
企业的生产计划是企业生产管理的依据,它对企业的生产任务作出统筹安排,规定着企业在计划期内产品生产的品种、质量、数量和进度等指标。生产计划是生产管理中的核心工作,或许很多人不同意这个观点,只是因为这个观点的前提是生产计划在生产管理中真正起到了作用,目前国内制造业的现状还不能体现出生产计划的真正作用,所以也没有人认为它是最核心的工作,但为何生产计划却引起了生产管理人员的重视?随着生产规模的扩大,设备增多,订单不停变化,成本压力,客户对交货期的要求越来越短,这些种种原因导致了生产管理复杂度不断上升,导致现场往往顾此失彼,最终消耗更多的资源,付出更多的成本,却仍然不能满足客户的需求。这些原因终使生产管理人员认识到生产计划的重要性,好的计划可让生产有条不紊的进行,有利于提高资源利用率,降低生产经营成本。
其中系统所采用的贪心,它的思考过程类似动态规划,依旧是两步:大事化小,小事化了。大事化小:一个较大的问题,通过找到与子问题的重叠,把复杂的问题划分为多个小问题;小事化了:从小问题找到决策的核心,确定一种得到最优解的策略。
贪心算法是指在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,只做出在某种意义上的局部最优解。关键是贪心策略的选择,选择的贪心策略必须具备无后效性,即某个状态以前的过程不会影响以后的状态,只与当前状态有关。
虽然贪心算法不能总求得问题的整体最优解。但对于某些问题,却总能求得整体最优解,这要看问题时什么了。只要能满足贪心算法的两个性质:贪心选择性质和最优子结构性质,贪心算法就可以出色地求出问题的整体最优解。即使某些问题,贪心算法不能求得整体的最优解,贪心算法也能求出大概的整体最优解。如果你的要求不是太高,贪心算法是一个很好的选择。最优子结构性质是比较容易看出来的,但是贪心选择性质就没那么容易了,这个时候需要证明。证明往往使用数学归纳法。
要证明贪心性质的正确性,才是贪心算法的真正挑战,因为并不是每次局部最优解都会与整体最优解之间有联系,往往靠贪心生成的解不是最优解。这样,贪心性质的证明就成了贪心算法正确的关键。一个你想出的贪心性质也许是错的,即使它在大部分数据中都是可行的,你必须考虑到所有可能出现的特殊情况,并证明你的贪心性质在这些特殊情况中仍然正确。这样经过千锤百炼的性质才能构成一个正确的贪心。

基于SSM的生产计划排程管理系统相关推荐

  1. 基于SSM生产计划排程管理系统

    项目下载地址:https://download.csdn.net/download/qq_36388734/11390210 ** 欢迎下载 ** 第1章作业车间调度问题 1.1问题的描述 作业车间调 ...

  2. 最终计算供应链管理生产计划排程逻辑管理

    这是和整个展开相似,除了重新排定的逻辑以外,用于计划的排程.非供应链又一次被忽略.在整个展开过程中,库存被重新分配.重新排定计划的排程,用当前完成日期,在计划上展开产生任务.在计划上的排程被视为供应和 ...

  3. 生产计划排程为什么会这么难?

    生产排程,是指将生产任务分配至生产资源的过程.在考虑能力和设备的前提下,在物料数量一定的情况下,安排各生产任务的生产顺序,优化生产顺序,优化选择生产设备,使得减少等待时间,平衡各机器和工人的生产负荷. ...

  4. 解决生产计划排程APS系统七大问题,提升企业生产效率!

    生产计划排程是个很复杂的问题,特别是对多品种.小批量的离散型生产.自动排程软件,即高级计划排程软件,英文简称是APS(Advanced Planning and Scheduling).APS软件在中 ...

  5. 动态排程才是生产计划排程的根本

    动态排程与排程试算,许多人将这两者混为一谈,甚至许多APS软件也用排程试算等于动态排程的思想进行宣传,其实这两者有着本质的区别. 排程试算是反复进行重新排程试计算,是在各种不同条件下的预排程,是提前进 ...

  6. 怎么做一个可执行的生产计划排程?

    一.想要做出详细的生产计划需要哪些条件? 在生产过程中,随着生产规模的扩大,人脑无法做到把大数据进行存储,此时就会借助到Excel.大多数的生产管理人员对Excel运用得很熟练,但若要问他关于计划的详 ...

  7. 解决生产计划排程APS系统七大问题,提升制造企业生产效率

    生产计划排程是个很复杂的问题,特别是对多品种.小批量的离散型生产.自动排程软件,即高级计划排程软件,英文简称是 APS(Advanced Planning and Scheduling).APS软件在 ...

  8. aps - (Advanced Planning And Scheduling) 高级生产计划排程软件的架构和设计

    aps - (Advanced Planning And Scheduling) 高级生产计划排程软件的架构和设计 3 主资源和副资源 主资源简单的说就是某道工序在什么机器或生产线上生产,一般来说,一 ...

  9. APS中生产计划排程模块的基本原理

    供应链管理(SCM)涉及企业间的集成以及在产销网络中协调物流和信息流的各个方面.作为企业信息中枢的ERP系统,现在已经在许多企业中用于作业处理和定单执行.高级计划系统(APS,Advan cedPla ...

最新文章

  1. Codeforces Educational round 58
  2. SCI-HUB客户端(文献神器V6.0)——下载文献如此简单
  3. 继LSTM之父用世界模型来模拟2D赛车后,谷歌又推出全新世界模型助力导航:360度无死角,就问你怕了没?...
  4. git学习(持续踩坑中
  5. 【Android 进程保活】oom_adj 值 ( 简介 | 查询进程 PID | 根据进程 PID 查询 oom_adj 值 )
  6. 将今天写进历史,即可得出现在的世界是数字的
  7. Spring Remoting: HTTP Invoker--转
  8. 携程Apollo(阿波罗)配置中心在.NET Core项目快速集成
  9. 目前服务器操作系统版本,目前服务器操作系统版本号
  10. QTableWidget插入项item方法 及误区
  11. Linux下MongoDB安装和配置详解
  12. 我从AI For Everyone学到的十个重要AI 概念
  13. python实习目的_python爬虫系列---为什么要学习爬虫
  14. win7一直显示正在关机_windows8.1和windows7哪个好_win8.1好还是win7好用
  15. 乔布斯:你须寻得所爱(转)
  16. 微信小程序云开发教程-WXML入门-常用组件和属性
  17. 【前端性能优化】雅虎35条军规
  18. 从上帝视角看支付——支付总架构解析
  19. J-Flash使用方法
  20. python搭建轻服务,实现上传下载文件

热门文章

  1. android vrs技术,步步高 vivo V1/Y1 智能手机音质测评报告 VRS[vivo signal
  2. 《Linux内核修炼之道》精华分享与讨论(1)——缅怀已逝的十八年(1991~1998)
  3. android 读写sd卡的权限设置
  4. Unity接口的使用
  5. 苹果手机Home键失灵怎么办?
  6. TSN之linuxptp交叉编译
  7. MediaPlayer.isPlaying() IllegalStateException的一种情况
  8. 02、alex 说过“普通运维人员就是秋后的蚂蚱”
  9. 直角三角形面积Java_用java编写输出直角三角型、倒直角三角形
  10. 计算机共享访问权限 xp,上面就是xp访问win7共享要密码的解决方法