方形件排样优化与订单组批问题探析
方形件排样优化与订单组批问题是计算复杂度很高的组合优化问题,在工业工程中有很广泛的应用背景。为实现个性化定制生产模式,企业会选择订单组批的方式,继而通过排样优化实现批量切割,加工完成后再按照不同客户需求进行分拣,从而提高原材料的利用率,进而降低生产成本,提高企业竞争力。
本文以二维方形件的排样优化及订单组批为对象,充分考虑各种约束条件,对两个问题分别建立混合整数规划模型,合理规划方形件在板材原片上的布局,整体协调订单分配与批量计划的集成优化,最终取得全局近似最优解。
针对问题一:优化目标是基于三阶段齐头切精确排样方式,在各产品项数量均不超过其需求量的约束下实现使用的板材原片数量最少。我们转“割”为“拼”,采用“均匀栈的生成→条带生成→原片条带放置”的步骤,设计了均匀三阶段排样方式的生成算法(TUSP 法)得到满足条件的排样图。之后采用顺序价值修正启发式算法(SVC 法),逐个将满足条件的排样图加入到整个数据的排样方案中进行优化,最终得到基于整个数据的最优排样方案,得到A1~A4数据集的板材利用率依次为96.02%、94.08%、95.15%和94.08%。根据获得的各产品项的x、y方向坐标及度量,绘制各原片的排样方案效果图。
针对问题二:优化目标是通过订单组批的形式将订单聚类,并按照材质选择相应的排样方式,进而实现使用的板材原片数量最少。本问题的关键在于订单组批,后续排样过程可参考问题一。首先使用杰拉德距离定义了订单之间材质的相似性,以此作为层次聚类的依据,从而划分项目的组批。其次,对同一批次中的不同材质,依次对产品项使用均匀三阶段排样方式的生成算法(TUSP法) 和顺序价值修正启发式算法(SVC法) 获得最终的排样方案,得到B1~B5数据集的板材利用率依次为84.42%、82.84%、82.11%、83.44%和83.51%,并根据排样方案中产品项的坐标等信息绘制各原片的排样方案效果图。
最后,本文对所用算法的复杂度进行了评估,同时对模型的优缺点进行了分析。
关键词:混合整数规划模型; 均匀三阶段排样方式的生成算法; 顺序价值修正启发式算法:订单组批:层次聚类
一、 问题重述
1.1问题背景
新时期我国经济发展面临的重大课题,即是实现由制造大国向制造强国的转变,其中智能制造又是“中国制造 2025”的主攻方向。企业若想在智能制造转型中获取竞争优势,则需要在个性化定制方面提高竞争力。面对层出不穷的客户需求,如何在把控产品质量的同时预测订单规模,以便可以及时做出响应,就成为企业需要思考的问题。
方形件产品(或称板式类产品) 即为依赖于个性化定制生产模式的一类产品,它以板材为主要原片,经过平面加工后,由几种板式配件装配而成。为了实现“多品种小批量”的个性化定制生产,面对数量庞大的订单,企业通常会通过订单组批的方式来实现批量切割,加工完成后再按照不同客户需求进行分拣,从而提高原料的利用率[11-[3]。
在上述“订单组批+批量生产+订单分拣”模式中,订单组批与排样优化为两个重要环节。订单组批就是将相同材质、相近交货期、相似工艺的订单安排在同一个生产批次,通过订单组批优化兼顾个性化需求与生产高效性(如组批批次太小,会造成材料利用率低与生产效率低:如组批批次太大,会影响生产效率从而影响订单交付);排样优化本质为一个面向客户订单的材料切割问题,需要合理规划方形件在板材上的布局,以达到降低板材浪费、简化切割过程的目的。
对于排样优化问题,根据切割工艺方式的不同可分为齐头切与非齐头切(齐头切即直线切割且切割方向垂直于一边,并保证每次切割都可将原片分为两块),齐头切又可分为精确方式与非精确方式(区别在于是否可切割出准确尺寸的方形件) 。三阶段齐头切主要有三种类型:三阶段非精确排样方式、三阶段匀质排样方式以及三阶段同质排样方式,后两种均为精确排样方式。基本经过三到四个阶段的切割即可满足客户需求。
1.2 问题提出
基于对订单组批与排样优化的理解,题目提出以下2个子问题,其中第2个子问题的约束都基于第1个子问题并增加了单个批次生产原片数和面积的限制:
问题一:排样优化问题。只考虑齐头切的切割方式且切割阶段数不超过3的精确排样,建立混合整数规划模型[4],在满足订单需求及相关约束条件下,达到原片的最大化利用。
需要考虑的约束条件如下:
1) 在相同栈( stack) 里的产品项( item) 的宽度(或长度) 应该相同;
2) 最终切割生成的产品项是完整的,非拼接而成。
问题二:订单组批问题。要求建立混合整数规划模型,对数据集B中全部的订单进行组批,然后对每个批次进行独立排样,在满足订单需求和相关约束条件下,使得板材原片的用量尽可能少。在满足子问题1约束的基础上进一步要求:
1) 每份订单当且仅当出现在一个批次中;
2) 每个批次中的相同材质的产品项( item) 才能使用同一块板材原片进行排样;
3) 为保证加工环节快速流转,每个批次产品项( item) 总数不能超过限定值:
4) 因工厂产能限制,每个批次产品项( item) 的面积总和不能超过限定值。
二、 问题分析
2.1问题一分析
问题一需要建立混合整数规划模型得出三阶段齐头切精确排样方案,该方案由排样方式组成,排样方式为该排样优化问题的解。对于三阶段切割方式,要求同一阶段切割方向相同,相邻阶段切割方向互相垂直,我们并不限制第一阶段的切割方向,横向或纵向皆可,并称第一阶段切割生成的模块为 stripe(条带),第二阶段切割生成的模块成为 stack(栈),第三阶段切割生成的模块为 item(产品项)。实际应用中,产品项方向可以是固定的,也可以是旋转的,为了更贴近实际情况,我们考虑产品项方向可旋转。产品项的价值一般为其面积,且会赋予面积大的产品项一个较大的权重,以便优先考虑其放置。
排样方式必须满足:(1) 产品项的个数不超过需求量; (2) 排入的产品项之间互不重叠且不超过原片边界:(3) 满足题目要求的三阶段齐头切精确排样方式。
本问题建立在三阶段匀质排样的基础上,即认为每个栈都由一组宽度相同的产品项组成,对比于三阶段同质排样,匀质排样的材料利用率可能会更高,但切割复杂度也会随之增加。
根据待切割的产品项的种类和数量,确定产品项在原片上的排列组合方式,在满足产品项数量与工艺约束的条件下,减少原材料的损耗。此排样优化问题可描述为:在尺寸为L×W的原片上寻找最佳排样方案,排入 n种产品项,其中第 i 项产品项的长、宽及需求量为 l×wi×di,∑'j=1αν=1,∇i=1,⋯,2ni∈I=1⋯n, 需要使消耗的原片成本最低,且排样方式需符合切割工艺要求。
本问题的优化目标是在各产品项数量均不超过其需求量的约束下实现原片中包含的产品项总价值最大,可以将目标设定成以板材用量最少,另一种角度是使残料最少。尽管追求板材用量最少与追求残料最少的实现方式是一致的,但后者方法的灵敏度较差,最终可能会导致无解:且对于残料,如果其尺寸足够大,就可以成为余料二次利用,所以实际问题中考虑残料最少并不合理。
2.2问题二分析
问题二需要建立混合整数规划模型,对数据集B1~B5中全部的订单进行组批,并对每个批次进行独立排样,在满足订单需求和相关约束条件下,使得板材原片的用量尽可能少。该方案由组批方式组成,组批方式为该子问题的解。
组批方式必须满足:(1) 每份订单当且仅当出现在一个批次中; (2) 每个批次可生产的产品项总数不超过上限; (3) 每个批次可生产的产品项面积总和不超过上限。
订单组批问题是一个NP完全问题,求其精确解是比较困难的。模型的优化目标是最小化板材原片使用数量,可以考虑在组批过程中尽量将使用同种材质的订单放在同一批次,这样同一批次中相同材料的产品项种类和数量也越多,在之后的排样过程中,也更容易得
到更高的板材使用率,从而达到目标。所以该子问题的关键就转为寻求一个合适的差异度函数来度量订单间的相似程度,在此基础上对订单进行聚类,最终生成分批后的订单。后续排样过程与第一问类似,可按照第一问的思路进行排样优化。
三、模型假设
假设1:本题假定排样优化方式为三阶段齐头切匀质排样,且产品项作为切割的最小单位需保持完整;
假设2:本题假定第一阶段切割方向为横向的排样方式为X向排样,第一阶段切割方式为纵向的排样方式为Y 向排样:
假设3:本题假定板材原片仅有一种规格,即原片长度为2440( mm),原片宽度为1220( mm), 且原片数量充足;
假设4:本题假定排样方案不受锯缝宽度影响:
假设5:本题假定在切割过程中不存在设备故障、生产事故:
假设6:本题假定所有订单的交货期均相同,即订单组批问题不考虑交货期因素:
假设7:订单包含的产品项的种类和数量满足某种随机分布:
假设8:一个订单仅可组批一次,且不能跨批次组批;
假设9:批次与批次之间不会互相交叉混合。
四、符号说明
本文所用符号的说明如下表所示。
指标:
符号 说明
i 产品项编号的指标,对n个产品项按宽度进行排序 w1≥w2≥≥wn,
即产品项1,产品项2,……,产品项n将宽度不增,其中 i∈I=1⋯n
j 栈编号的指标,将栈中所含产品项中宽度最大的产品项编号作为栈的编
号,其中 j∈J=1⋯n
k 条带编号的指标,将条带中所含栈的最宽栈的编号作为条带编号,其中
k∈K
l 原片编号的指标,将原片中所含条带的最小索引作为原片编号,其中
l∈L
输入参数: | |
符号 | 说明 |
L | 原片长度(单位: mm) |
w | 原片宽度(单位: mm) |
五、问题一:模型建立与求解
5.1整数规划模型建立
根据题目要求建立整数规划模型[8]-[10]如下:
对于问题一,可以理解成有约束条件的三阶段二维装箱问题。装箱问题就是我们有 n 个小矩形,以及无限个大矩形箱子,目标是将全部小矩形无重叠的放入箱子中,小矩形放入箱子的方向可以旋转,水平垂直均可。三阶段切割可以理解:1、沿第一个方向齐头切割后,将矩形切割成几个条带,2、沿第二个方向齐头切割后,将条带切割成几个栈,3、沿第三个方向齐头切割后,将栈切割为产品项。显然,由同一个栈切割得到的几个产品项具有相同的宽度。为统一规则,便于切割,我们将矩形尽量放置于大矩形箱子的左下位置,使得如果必须存在剩余空间的话,剩余空间位于右上位置。由于几个产品项组成一个栈后被放置于大矩形箱子内,故产品项排列的前后顺序对栈在大矩形箱子内的摆放位置并无影响,我们可以将同一个栈内的几个产品项按照产品项的索引从小到大排列,便于后续处理。产品项组成栈后,我们可以获得一定数量的栈,栈组成条带与产品项组成栈类似,同一条带内栈的排序也可以前后调整。对栈进行编号索引,类似的,我们也可以在条带内将不同的栈按照索引顺序从小到大排列。这种排序方法有利于后续我们得到每个产品项在大矩形箱子的位置。最后再将条带放置于大矩形箱子内,找到最好的放置方式使得只需要尽可能少的箱子数即可放置下全部条带。
针对产品项可旋转,我们考虑将n个产品项复制一份,并将其长宽互调,得到了2n个产品项,并进一步按照产品项的宽度进行排序,这时使用两个映射f和g,f表示目前排序下产品项对应为复制前的该产品项索引编号,g表示产品项和其复制品的索引编号差。
其中l₀和w₀表示产品项k的长度和宽度,lmin(i)和 wmin(i)表示产品项i到m的产品项长度最小值和宽度最小值。这时在判断能否继续向栈排入产品项时,仅需将 lmin(i)和 wmin(i)分别与剩余长度和剩余宽度比较即可, 这大大减少了算法了计算复杂度。
产品项已经耗尽:
注:对于此终止条件,我们仍考虑建立一个一维数组 demand 对每个产品项的剩余量进行记录,这是再判断某产品项是否有剩余可排入栈时,仅需与 demand(i)进行对比即可。
初始化 demand数组:demand(i)表示产品项i在栈中排入的限制数量,令其初值等于产品项的初始需求,其赋值计算表达式如下:
demand(i)=d(i), i=1,…,m. (20)
其中d(i)表示产品项的初始需求。
Step2. 算法建立过程
在将产品项排入栈的过程中,需要对生成的栈的信息进行存储,我们考虑建立一个一维数组向量对栈j的信息存储,向量构建如下:
|
其中w表示此栈的放置方式,w='h'表示水平放置, w='v'表示竖直放置,二元数组(i,num,)中,i表示产品项的编号,numn表示此产品项在栈中排入的次数。
在得到栈的主要信息之后,我们需要进一步计算栈的价值。并且由于生成的是均匀栈,故此要求栈的所有出现的产品项的宽度或者长度均是相等的。下以水平均匀栈为例:设以产品项j作为主产品项的水平均匀栈j,其长度不大于L,且宽度等于w,,记此栈的价值为HV(j,L,w,,m,), 其求解的伪代码如下:
算法1:均匀栈生成算法
输入:栈价值V:条带剩余长度RL; 栈中包含产品项i的数量 num
输出: 栈价值HV(j,L,w,m,); 栈的数组信息m,
1 RL=L-l,;
2 for i=1 to 2m
3 if RL< lmin(i) or l₁≠ɪ;
4 HV(j,L, wj, mj)=V; break
5 else
6 if demand(i)=0 return
7 else
8 if RL<l₁ return
9 else
10 num= min( demand(i), [RL/l₁]); RL=L-num×l,
11 Add (i, num) to m,; P=14num×c₁
12 end
13 end
14 end
15 end
16 return HV(j,L,w,m,); m,
2.条带生成算法
我们类比上一节提出的产品项排成栈的算法,进一步将栈排条带中,从而可得到由栈生成条带的算法,由于和栈生成算法类似,下面仅简略展示条带生成算法的步骤,如下:
StepI. 算法初始化设置
确定栈的各类属性:首先通过使用栈生成算法生成了 n个栈,进而通过算法输出结果计算水平栈的长度和竖直栈的宽度,并将其储存。
确定栈的使用需求:在这部分我们认为算法生成的n个栈均是不同的,即当两个栈的长宽以及内部包含的产品项种类和数目均相同时,而这时栈内产品项的排列顺序也可以是不同的,故此我们认为生成的n个栈均是不同的。进而设置每个栈的需求量均为1。
Step2. 算法建立过程:
在这部分我们类比产品项生成栈的算法,进行算法设计,将n个栈放置进条带中,具体流程均与上节所述类似,在此不进行重复展示。
5.3.2求解过程
下面基于 TUSP 排样图生成算法和SVC 顺序价值修正启发式算法来求解在产品项可旋转的条件下的三阶段匀质齐头切情况下二维矩形排样问题,模型的求解流程如下:
TUSP和SVC求解3CS框图 | |||
输入: 初始化产品项单位价值,令ρ₁=l₁w₂, 输出: 最优的排样方案 | 其中ieI, 令( | Uni=+∞ | |
1 | For E=1 to Em. x | ||
2 | 初始化产品项可用量, 令 c₁=d₁, | 其中i∈I | |
3 | 令 U=0, J=0 | ||
4 | While ∑mac,>0 | ||
5 | 使用TUSP算法生成当前排样图 P | ||
6 | 确定P的使用次数, 计算表达式为f= min |c;/r;||r;∧i∈I | ||
7 | 将P加入当前排样方案 | ||
8 | 更新当前排样方案的排样方式数J: J=J+1 | ||
9 | 更新原片使用数量V: U=U+1 | ||
10 | 更新产品项可用量c₁: c₁=c₁=f×r₁ | ||
11 | 使用价值修正公式来修正产品项的价值 | ||
12 | end | ||
13 | If UKUap | ||
14 | 记当前排样方案为最优方案: | Uun=U, Jop=J | |
15 | end | ||
16 | If Unip=U and Jap>J | ||
17 | 记当前排样方案最优: Jap=J | ||
18 19 | end end |
5.4求解结果与分析
5.4.1对于数据集A1、A2、A3、A4的排样方案效果图
基于所建立的模型,使用 Python绘出排样方案效果图,部分结果如下(由于排样方案效果图数量较多,故仅展示部分效果图,全部效果图见附录9.1):
七、模型分析与评价
7.1算法复杂度分析
对于3阶段二维矩形排样问题的算法设计,我们是使用基于HUSP算法和价值修正的顺序启发式算法来寻找满足约束条件和优化目标的解,其中HUSP算法主要包括三个层级,对应着3阶段切样方式。第一个层级是产品项生成栈,需要遍历所有的个栈; 第二个层级是栈生成条带,需要遍历所有的条带,第三个层级是条带生成原片,需要遍历所有的原片,因此算法的复杂度为O(n³)
25
7.2模型优缺点分析
7.2.1模型优点分析
1、本文考虑的三阶段排样问题,考虑了较多约束条件,如齐头切和产品项可旋转等,这保证了本文所建立的模型和算法具有较高的灵活性,使用范围较广。
2、本文针对3阶段二维矩形排样问题建立了混合整数规划模型,并结合优化目标和约束条件,设计了基于HUSP算法,使用顺序价值修正的启发式算法,算法的求解得到的原片利用率是较好的。
7.2.2模型缺点分析
1、本文所涉及的算法为启发式算法,无法保证算法求解的最忧性。
2、对于问题二的处理,我们并没有对订单组批和排样问题进行协同优化,这导致了我们问题二求解的结果中原片利用率比问题一平均低了10%。
function stack= item to stack( item,L. W, rho)
%输入: item的所有信息: item,原片长度: L, 原片宽度: W.价值修正系数: rho;
%输出: 生成 stack的所有信息: stack--一个三维数组
%初始参数设置
item id= item(:,1);
item length= item(:,3);
item lighth= item(:,4);
item square= item(:,2).* item(:,3);
item value= rho.* item square;
demand= item(:,5);
m= length( item(:,1));% item总数
Imin=[];
wmin=[];
for i=1:m
lmin(i)= min( item length(i:m));
wmin(i)= min( item width(i:m));
end
%以 item i作为主 item的 stack, 预先设定2m个
a= zeros(2*m+2,2);
a(3:2*m+2,1)=[1:2*m]';
for i=1:2*m
stack(:,:,i)=a;
end
%通过循环进行 item的放置
RL=L;%剩余高度
RW=W;%剩余宽度
demand0= demand;
for i=1:2*m
if demand(i)==0
%对每个 stack进行 item的放置i
RL=L- item length(i);
RW=L- item width(i);
VL=0;%水平 stack价值
VW=0;%竖直 stack价值
ML= zeros(m,1);%存放每个 item在水平 stack放置的个数
MW= zeros(m,1);%存放每个 item在竖直 stack放置的个数
%水平放置 stack
demand1= demand;
for j=1:2*m
num j=0;
% stack均匀性要求
if item width(j)~= item width(i)
return
end
if demand1(j)==0| item length(j)>RL
return
end
if item length(j)>RL && RL< Imin(j)
break
end
if RL< Imin(j) && RL>= Imin(j)
return
end
%限制旋转前和旋转后的 item只能使用一次
if demand0-demand1(j)>=ML(j)
return
end
if RL> Imin(j) && item width(j)== item width(i)
if j<=m
num j= min(demand1(j), floor(RL/ item length(j)));
ML(j)=ML(j)+1;
RL=RL- num j* item length(j);
VL=VL+ num j* item value(j);
demand1(j)=demand1(j)-1;
else
num j= min(demand1(j-m), floor(RL/ item length(j-m)));
ML(j-m)=ML(j-m)+1;
RL=RL- num j* item length(j-m);
VL=VL+ num j* item value(j);
demand1(j-m)=demand1(j-m)-1;
end
end
相关文章:
方形件排样优化与订单组批问题探析
方形件排样优化与订单组批问题是计算复杂度很高的组合优化问题,在工业工程中有很广泛的应用背景。为实现个性化定制生产模式,企业会选择订单组批的方式,继而通过排样优化实现批量切割,加工完成后再按照不同客户需求进行分拣&#…...
vue3组件通信--自定义事件
自定义事件是典型的子传父的方法。 为什么叫自定义事件呢?是因为我们用sendToy"getToy"这种格式写,很显然,在DOM中,没有叫sendToy的事件。 父组件FatherComponent.vue: <script setup> import ChildComponent fr…...
ubuntu 安装k3s
配置hostname的方法为 hostnamectl set-hostname k3sserver hostnamectlsudo apt-get update && sudo apt-get upgrade -y sudo apt-get install -y curl#手动下载v1.31.1k3s1 https://github.com/k3s-io/k3s/releases/tag/v1.31.1%2Bk3s1 #将k3s-airgap-images-amd64…...
SQL CHECK 约束:确保数据完整性的关键
SQL CHECK 约束:确保数据完整性的关键 在数据库管理中,确保数据的完整性和准确性是至关重要的。SQL(Structured Query Language)提供了多种约束条件来帮助实现这一目标,其中之一就是 CHECK 约束。本文将深入探讨 SQL CHECK 约束的概念、用法和优势,并展示如何在不同的数…...
C++ | Leetcode C++题解之第502题IPO
题目: 题解: typedef pair<int,int> pii;class Solution { public:int findMaximizedCapital(int k, int w, vector<int>& profits, vector<int>& capital) {int n profits.size();int curr 0;priority_queue<int, vect…...
《虚拟现实的边界:探索虚拟世界的未来可能》
内容概要 在虚拟现实(VR)技术的浪潮中,我们见证了其从实验室的奇想逐渐走向日常生活的非凡旅程。技术发展的背后是不断突破的创新,早期的设备虽然笨重,但如今却趋向精致、轻巧,用户体验显著提升。想象一下…...
Rust教程
2024 Rust现代实用教程:1.1Rust简介与安装更新––2024 Rust现代实用教程:1.2编译器与包管理工具以及开发环境–––––––––––...
测试代理IP的有效性和可用性
使用代理IP的有效性和可用性直接关系到用户的工作效率,尤其是在进行数据抓取、网络爬虫和保护个人隐私等场景中。 一、测试代理IP的必要性 代理IP的可用性测试是确保代理服务正常运行的重要步骤。测试代理IP的必要性主要体现在以下几个方面: 提升工作…...
散列表:为什么经常把散列表和链表放在一起使用?
散列表:为什么经常把散列表和链表放在一起使用? 在计算机科学中,散列表(哈希表)和链表是两种常见的数据结构。你可能会好奇,为什么它们经常被放在一起使用呢?让我们一起来深入探讨这个问题。 一、散列表的特点 散列表是一种根据关键码值(Key value)而直接进行访问的…...
计算机网络:网络层 —— IPv4 地址与 MAC 地址 | ARP 协议
文章目录 IPv4地址与MAC地址的封装位置IPv4地址与MAC地址的关系地址解析协议ARP工作原理ARP高速缓存表 IPv4地址与MAC地址的封装位置 在数据传输过程中,每一层都会添加自己的头部信息,最终形成完整的数据包。具体来说: 应用层生成的应用程序…...
PMP--一、二、三模、冲刺、必刷--分类--10.沟通管理--技巧--文化意识
文章目录 技巧一模10.沟通管理--1.规划沟通管理--文化意识--军事背景和非军事背景人员有文化差异文化意识:题干关键词 “两拨人的背景不同、文化差异、风格差异”。5、 [单选] 项目团队由前军事和非军事小组成员组成。没有军事背景的团队成员认为前军事团队成员在他…...
FileReader和FileWriter
FileReader 使用read()方法读取单个字符,下面是如何修改使程序性能更好的过程。 第一种:处理异常方式为throws Testpublic void test() throws IOException {//读取hello.txt,并显示内容// 创建文件对象File file new File("hello.txt…...
【UE5】将2D切片图渲染为体积纹理,最终实现使用RT实时绘制体积纹理【第六篇-阶段总结篇】
因为马上就要进入下一个阶段,制作动态编辑体积纹理的模块。 但在这之前,要在这一章做最后一些整理。 首先,我们完成没完成的部分。其次,最后整理一下图表。最后,本文附上正在用的贴图 完善Shader 还记得我们之前注…...
地球村上一些可能有助于赚钱的20个思维方式
地球村上一些可能有助于赚钱的20个思维方式: 1. 目标导向思维:明确自己的财务目标,并制定详细、可执行的计划来逐步实现。 2. 创新思维:不断寻求新的商业机会和独特的解决方案,以在竞争激烈的市场中脱颖而出。 3. 价值…...
0基础入门matlab
目录 一、命令 二、变量命名 三、数据类型 数字 字符和字符串 矩阵 rand、randi和randn的区别? 元胞数组和结构体 MAGIC 结构体 四、矩阵构造、四则运算、矩阵下标 五、MATLAB逻辑与流程控制 六、MATLAB绘图 二维平面绘图 三维平面绘图 导出图片 内…...
【前端】实操tips集合
1. 关闭vue中组件名字的多词校验 (1) package.json文件中修改eslint配置 "eslintConfig": {"rules": {"vue/multi-word-component-names":"off" }}, (2).eslintrc.js或者.eslintrc配置文件中进行配置 modu…...
基于Springboot+Vue 传统文化管理系统(源码+LW+部署讲解+数据库+ppt)
!!!!!!!!! 会持续一直更新下去 有问必答 一键收藏关注不迷路 源码获取:https://pan.baidu.com/s/1aRpOv3f2sdtVYOogQjb8jg?pwdjf1d 提取码: jf1d &#…...
质量漫谈一
我知道很多同学看到这类问题,第一反应想要去寻找的就是作为测试角色,应该要如何如何去做?但是今天这里作为质量第一篇,不打算按照这样单角度去写,这类同学可以就此打住,如果在意的话,可关注后续…...
个体化神经调控 Neurolnavigation介绍
神经调控技术包括DBS, TMS, rTMS, tDCS等等。今天主要说一下TMS。 TMS全程经颅磁刺激,通过对头皮放置磁场线圈,可以定向的往局部头皮发送脉冲信号,抑制局部神经元活动。 TMS的优点是精准刺激,tDCS的优点是刺激范围比较宽泛。近期有…...
02-RT1060 双ADC采样+eDMA传输
RT1060-双ADC+eDMA外设的配合使用 该项目是基于MIMXRT1060-EVKB官方开发板编写的驱动。 一、头文件包含介绍 #include "pin_mux.h" #include "clock_config.h" #include "board.h" #include "fsl_adc.h" #include "fsl_adc_et…...
单值集合总复习
1:Object类的核心方法复习 Object 是所有类【引用数据类型】的 直接 / 间接 父类 toString(): 将一个 引用数据类型的对象 转换成 String 类型 class Object{//Sun //toString()不需要参数:将一个对象转换成字符串 将调用者转换成字符串 public String …...
Pyside6 布局管理器(4)--- QGridLayout的使用
一、QGridLayout的介绍(官翻) QGridLayout 获得可用的空间(由其父布局或 parentWidget() 提供),将其划分为行和列,并将其管理的每个小部件放入正确的单元格中。 列和行的行为是相同的;我们将…...
从GPT定制到Turbo升级再到Assistants API,未来AI世界,你准备好了吗?
引言 在OpenAI DevDay发布会上,OpenAI再次震撼整个人工智能行业,为AI领域带来了重大的更新。CEO Sam Altman宣布推出了定制版本的ChatGPT,这意味着用户现在可以根据自己的需求打造个性化的GPT,并分享至GPT Store。这一消息对于受…...
「漏洞复现」BladeX企业级开发平台 tenant/list SQL 注入漏洞复现(CVE-2024-33332)
0x01 免责声明 请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。工具来自网络,安全性自测,如有侵权请联系删…...
基于SSM的消防物资存储系统【附源码】
基于SSM的消防物资存储系统 效果如下: 用户功能界面 仓库管理界面 物资入库管理界面 物资出库管理界面 物资详情管理界面 报警通知管理界面 安全检查提醒管理界面 管理员功能界面 研究背景 21世纪,我国早在上世纪就已普及互联网信息,互联网…...
Pseudo Multi-Camera Editing 数据集:通过常规视频生成的伪标记多摄像机推荐数据集,显著提升模型在未知领域的准确性。
2024-10-19,由伊利诺伊大学厄巴纳-香槟分校和香港城市大学的研究团队提出了一种创新方法,通过将常规视频转换成伪标记的多摄像机视角推荐数据集,有效解决了在未知领域中模型泛化能力差的问题。数据集的创建,为电影、电视和其他媒体…...
认识一下 Mochi-1--最新的免费开源人工智能视频模型
Genmo 是一家专注于视频生成的人工智能公司,该公司宣布发布 Mochi 1 的研究预览版。Mochi 1 是一种新的开源模型,可根据文本提示生成高质量视频,其性能可与 Runway 的 Gen-3 Alpha、Luma AI 的 Dream Machine、Kuaishou 的 Kling、Minimax 的…...
Spring 的事务传播机制
Spring 的事务传播机制定义了一个事务方法在遇到已经存在的事务时如何处理。事务传播属性(Propagation)提供了七种机制,以适应不同的业务需求和事务边界管理。 1. Spring 的事务传播机制的类型 (1)REQUIREDÿ…...
线性代数(1)——线性方程组的几何意义
线性代数的基本问题是求解个未知数的个线性方程; 例如:(方程1)。 在线性代数的第一讲中,我们从Row Picture、Column Picture、Matrix Picture三个角度来看这个问题。 上面的系统是二维的。通过添加第三个变量&#…...
写给自己的一些心得体会
为什么是CSDN??? 最近跑实验跑得绝望,感觉自己兜兜转转走了太多太多的弯路,我不知道这样的弯路什么时候是个尽头,就像在USJ排队,看似好像要到入口了,实则一转头还是无尽绵延的队伍。走了这么多弯路,总要…...
网站常用文件夹/吉林网络seo
「2019 Python开发者日」全日程揭晓,请扫码咨询 ↑↑↑作者 | 神秘的铁头娃 来源 | AI算法与图像处理(id:AI_study)DAT-2017过几天就是清明节了,作为传统节日,特别是一个有放假的传统节日,肯定…...
好的企业网站建设/东莞企业推广网站制作
C语言谭浩强版6章课后练习题答案第6章课后练习题单项选择题以下程序执行后,a是:int a 0,i,j;for (i5;i>0;i--)for(j0;j<4;j) a;20252430执行以下程序段,正确的是:int x-1;do {xx*x; } while(! x);循环体将执行一…...
澳门赌网站有做代理/做网站推广一般多少钱
有2台域控 主域控 AD1: IP:192.168.0.1/24首选 DNS 服务器:127.0.0.1备用 DNS 服务器: 192.168.0.2额外 AD2: IP:1921.68.0.2/24首选 DNS 服务器:127.0.0.1备用 DNS 服务器: 192.168.0.1第三台域控: 额外AD3: IP:192.168.0.3/24首选 DNS 服务器:127.0.0.1备用 DNS …...
照片制作网站/百度提交入口的网址
iFrame 虽然在我们现在的网页中用的不多,不过依然无法捍卫其使用便捷的地位,特别是编写后台的时候,实现局部的网页内容刷新,提高网页内容的复用性。iFrame 里的 JavaScript 要操作父级窗口的 DOM 元素,必须搞懂几个对象…...
机关公文写作网站/高佣金app软件推广平台
本文转自:https://blog.csdn.net/jeff06143132/article/details/25696371 连接Oracle,以Oracle用户登陆: $su - oracle$sqlplus 数据库用户/数据库密码 as sysdba输入查询: select * from dba_profiles where profileDEFAULT and resource_na…...
扶风做网站/无锡整站百度快照优化
故障原因 本来做一个服务器分页的功能,结果按照文档配置好了一直都请求不到数据,而且用ajax完全没问题,那就查呗,network一查,初看没啥问题 method:post, 发送的数据 后来和ajax反复比较发现了 Request Payload这…...