《现代库存管理:模型、算法与Python实现》 课件 第7-9章-周期库存优化、物流企业B仓内拣货区联合补货优化实战、安全库存优化_第1页
《现代库存管理:模型、算法与Python实现》 课件 第7-9章-周期库存优化、物流企业B仓内拣货区联合补货优化实战、安全库存优化_第2页
《现代库存管理:模型、算法与Python实现》 课件 第7-9章-周期库存优化、物流企业B仓内拣货区联合补货优化实战、安全库存优化_第3页
《现代库存管理:模型、算法与Python实现》 课件 第7-9章-周期库存优化、物流企业B仓内拣货区联合补货优化实战、安全库存优化_第4页
《现代库存管理:模型、算法与Python实现》 课件 第7-9章-周期库存优化、物流企业B仓内拣货区联合补货优化实战、安全库存优化_第5页
已阅读5页,还剩119页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

现代库存管理:模型、算法与Python实现第7章周期库存优化7目录经济订货批量模型(EOQ)时变需求下的经济订货批量模型多产品联合补货的经济批量模型7.1经济订货批量模型(EOQ)例:一家便利店每周售出2箱啤酒。经营者每两周补货一次,每次的补货批量𝑄=4箱,每次补货的固定成本是𝐾=60元。已知一箱啤酒的采购价𝐶=100元,该啤酒的持货成本率为80%/年当前补货策略下,每年的库存成本是多少?最优的补货批量为多少?7.1经济订货批量模型(EOQ)

7.1经济订货批量模型(EOQ)

7.1经济订货批量模型(EOQ)

#H表示年单位持货成本,设为80

H=

80

#K表示固定订货成本,设为60

K=

60

#D表示每期需求,设为104

D=

104

#使用Python列表生成式,生成Q可能的取值列表

Q_list=[QforQinrange(5,25,1)]

#定义空列表fix_cost_list、holding_cost_list、total_cost_list

#分别用于存储对应的订货量的取值下的年固定订货成本、持货成本,总成本

fix_cost_list=[]

holding_cost_list=[]

total_cost_list=[]

#对于每个可能的订货量的取值,按照公式计算相关成本,并存储

forQinQ_list:

fix_cost_list.append(K*D/Q)

holding_cost_list.append(H*Q/

2)

total_cost_list.append(K*D/Q+H*Q/

2)7.1经济订货批量模型(EOQ)

7.1经济订货批量模型(EOQ)

7.1经济订货批量模型(EOQ)

7.2时变需求下的经济订货批量模型

7.2时变需求下的经济订货批量模型

7.2时变需求下的经济订货批量模型

7.2时变需求下的经济订货批量模型通过前例的分析,我们可以总结出最优策略的以下性质:一个周期如果补货,那么它的期初库存一定是0,因为总是可以将期初库存推迟到当期来补货,这样可以降低库存持货成本最后一期的期末库存一定是0,因为如果最后一期有剩余库存,那么只需要在最后一次订货时将剩余库存的量扣除,这样既不会出现缺货,还可以降低成本在最优策略下,如果第t期的需求由第s期的订货满足(s<t),那么s到t之间每一期的需求也由第s期的订货满足7.2时变需求下的经济订货批量模型

7.2时变需求下的经济订货批量模型

7.2时变需求下的经济订货批量模型

7.2时变需求下的经济订货批量模型

7.3多产品联合补货的经济批量模型

7.3多产品联合补货的经济批量模型策略一:每个订单都只包含一种商品

7.3多产品联合补货的经济批量模型策略二:每个订单中包含所有商品

7.3多产品联合补货的经济批量模型策略三:补货订单包含单一或部分或全部商品

7.3多产品联合补货的经济批量模型策略三:补货订单包含单一或部分或全部商品

7.3多产品联合补货的经济批量模型策略三:补货订单包含单一或部分或全部商品

现代库存管理:模型、算法与Python实现第8章物流企业B仓内拣货区联合补货优化实战8.1背景企业B是国内的大型物流服务提供商:除了提供传统的快递、物流及仓储综合服务之外为第三方客户提供一体化的智慧供应链解决方案针对第三方客户的智慧仓储体系的构建是其中的重要模块8.1背景该实战选定某地仓库中一家以美发、洗护、护肤为主营商品的第三方租租赁客户的数据为例,打造智慧仓储的解决方案商品入库后,首先存放于整存区,补货员每天根据拣货区各SKU的库存与需求情况定时定量地从整存区往拣货区补货8.1背景算法团队目前正在对拣货区的货位分配与补货策略展开研究:拣货区的货位分配热度准则。在订单中越常出现的商品应放置在离分拣区距离越近的货架相关准则。客户喜欢一并下单购买的商品,应尽量放在相临近货位选出热度最高的一批商品作为关键SKU,将与关键SKU关联度较高的SKU搭配放置在临近货架。补货策略拣货员一次补货需要耗费30到50分钟的时间,同时需要管理的SKU数量大,补货员在每次补货时往往需要针对多个SKU一起补货SKU数量庞大,而补货员单人单次补货的容量是有限的基于货位分配中关键SKU与关联SKU形成的分组,按组设计多SKU联合补货策略,优化SKU的补货批量与补货频次8.2数据导入及预处理案例所用到的数据:订单数据表(order_df):每笔订单编号、发生时间,涉及产品编号及订购数量产品数据表(sku_df):各个产品的持货成本信息补货成本:每次补货需耗费补货员约30分钟时间,以补货员20分钟工资近似不变固定补货成本𝐾=10元每多补一个SKU需要额外1至2分钟时间,近似可变的固定补货成本𝑘=2元order_iddatesku_idqty0ORDER02933912021-10-23SKU697181.01ORDER06788502021-10-24SKU697181.02ORDER06788502021-10-07SKU697181.0sku_idH0SKU687650.0402471SKU900510.0385362SKU943030.0496558.3拣货区商品布局选出热度最高的一批商品作为关键SKU,将与关键SKU关联度较高的SKU搭配放置在临近货架

8.4联合补货策略优化基于货架分配中关键SKU与关联SKU形成的分组,按组采用经济订货批量模型设计多SKU联合补货策略,优化SKU的补货批量与补货频次三个补货策略在所有SKU分组中应用后,产生的总库存成本为:使用独立补货策略的总成本为:33378.62使用同时补货策略的总成本为:16657.62使用启发式联合补货策略的总成本为:16066.72找到每个组合成本最低的策略,并计算相应的比例得:使用独立补货策略的总成本最低的比例为:0.00%使用同时补货策略的总成本最低的比例为:8.00%使用启发式联合补货策略的总成本最低的比例为:92.00%8.5拓展与思考存在库位数量与体积约束情况下,如何设计库位分配与补货策略?需求非平稳时,如何设计动态的库存分配与补货协同策略,以最小化移库工作量?本案例不考虑需求的不确定性,仅探讨了周期库存的优化问题。如何结合下一部分将介绍的安全库存优化,设计需求不确定情况下的库位分配与补货策略?现代库存管理:模型、算法与Python实现第9章安全库存优化9.1安全库存概述例子:一家电子产品零售门店某款手机的日需求均值为5台。门店每周补货一次,提前期为3天如果忽略需求的波动性,门店可以当其库存水平还剩15台的时候向供应商订货35台实际的运营中,需求往往具有不确定性。为避免缺货发生,可以当其库存为30台时补货

此时只有当该手机3天的实际需求超过30台时,才会发生缺货。每次到货时,该手机平均还有15台的在手库存安全库存量越高,缺货的风险越小,需求满足率越高,但库存成本也越高9.1安全库存概述9.1安全库存概述安全库存指在需求均值之上额外持有的以应对需求不确定性的库存,它能够有效降低由于需求不确定性造成的供应链风险,降低由缺货导致的损失本章讨论在两种库存策略下,周期服务水平和需求满足率与安全库存量之间的关系,并回答以下两个问题:给定库存策略,如何计算系统的安全库存量以及周期服务水平和需求满足率给定期望的周期服务水平或需求满足率,如何计算不同库存策略下所需的安全库存量9.2

(ROP,Q)策略分析

安全库存与周期服务水平9.2

(ROP,Q)策略分析

安全库存与周期服务水平9.2

(ROP,Q)策略分析

需求独立同分布9.2

(ROP,Q)策略分析

需求不服从正态分布更加科学的方式:对提前期需求的分布函数(分位数函数)进行估计,从而对再补货点(安全库存量)与周期服务水平之间的关系进行更准确的刻画9.2

(ROP,Q)策略分析

零售卖场A的一款洗涤剂的周需求服从均值为250瓶,标准差为70瓶的正态分布。采购人员每当其库存水平低于600瓶时补货1000瓶,补货提前期为两周。该产品的周期服务水平是多少?例1

9.2

(ROP,Q)策略分析

#导入stats模块

importnumpyasnp

importscipy.statsasstats#(ROP,Q)策略

ROP=

600

Q=

1000

#提前期

L=

2

#周需求均值,标准差

mu=

250

sigma=

70

#补货提前期均值,标准差

mu_L=mu*L

sigma_L=sigma*np.sqrt(L)

#计算安全库存

ss=ROP-mu_L

#计算平均库存

inv=ss+Q/2

#生成标准正态分布

norm_dist=stats.norm(0,1)

#调用累计分布函数,计算周期服务水平

csl=norm_dist.cdf(ss/sigma_L)

print('例9-2计算结果:')

print('安全库存为:%.2f'

%ss)

print('平均库存为:%.2f'

%inv)

print('周期服务水平为:%.2f'

%csl)9.2

(ROP,Q)策略分析

例29.2

(ROP,Q)策略分析

公式(X)是一个近似公式,本身可能低估周期服务水平由于需求存在不确定性,理论上需要系统的运作时间足够长,实际的周期服务水平才能逼近理论的周期服务水平基于历史数据的计算会受到来自于需求随机性的干扰,并不能完全地代表库存策略的表现周期服务水平的理论计算依赖于需求分布信息的假设。当需求分布的估计存在一定误差时,理论计算的周期服务水平同样可能与实际数据表现出的结果存在差异例29.2

(ROP,Q)策略分析

例39.2

(ROP,Q)策略分析

#给定安全库存量,计算周期服务水平

ss=

150

csl=norm_dist.cdf(ss/sigma_L)

print('例9-4计算结果:')

print('当安全库存量为:%.2f时,周期服务水平值为:%.4f'

%(ss,csl))

ss_list=[ssforssinnp.arange(50,450,50)]

csl_list=[norm_dist.cdf(ss/sigma_L)forssinss_list]

plt.plot(ss_list,csl_list,color='#1c79d9')

plt.xlabel('安全库存量')

plt.ylabel('周期服务水平')

plt.show()9.2

(ROP,Q)策略分析

例39.2

(ROP,Q)策略分析

基于安全库存量与周期服务水平的关系,卖场的销售主管从库存成本,行业竞争等角度进行了分析研判,决定将该款洗涤剂的目标周期服务水平定为0.95由于新冠疫情等因素的影响,卖场客流量的不确定可能会有所增加,卖场主管想要分析需求的不确定性对安全库存量的影响应用计算公式,他计算了需求标准差对所需安全库存量的影响例4csl=

0.95

#不同的需求标准差

sigma_list=[sigmaforsigmainnp.arange(0,350,50)]

sigma_L_dict={sigma:sigma*np.sqrt(L)forsigmainsigma_list}

#计算安全库存量

sigma_ss_dict={sigma:norm_dist.ppf(csl)*sigma_L_dict[sigma]

forsigmainsigma_list}9.2

(ROP,Q)策略分析

若周需求标准差从现在的100瓶增加到200瓶,安全库存持有量将从现在的233瓶增加到465瓶例49.2

(ROP,Q)策略分析

例59.2

(ROP,Q)策略分析

安全库存与需求满足率9.2

(ROP,Q)策略分析

安全库存与需求满足率9.2

(ROP,Q)策略分析

安全库存与需求满足率9.2

(ROP,Q)策略分析

例69.2

(ROP,Q)策略分析

销售主管计算了在不同的再补货点(安全库存)下,该款盲盒会具有怎样的周期服务水平和需求满足率例69.2

(ROP,Q)策略分析

例6#(ROP,Q)策略

ROP=

600

Q=

800

#提前期

L=

10

#日需求均值,标准差

mu=

50

sigma=

30

#补货提前期均值,标准差

mu_L=mu*L

sigma_L=sigma*np.sqrt(L)

#计算安全库存

ss=ROP-mu_L

#计算周期服务水平

csl=norm_dist.cdf(ss/sigma_L)

#计算需求满足率

es=(-1.0)*ss*(1

-norm_dist.cdf(ss/sigma_L))+sigma_L*

\

norm_dist.pdf(ss/sigma_L)

fr=

1

-es/Q

print('例9-7计算结果:')

print('安全库存量为:%.2f'

%ss)

print('周期服务水平为:%.2f'

%csl)

print('需求满足率为:%.2f'

%fr)9.3

(OUL,T)策略分析

9.3(OUL,T)策略分析

安全库存与周期服务水平9.3(OUL,T)策略分析

安全库存与需求满足率9.3(OUL,T)策略分析零售卖场A采用周期盘货策略对一款榨汁机进行补货,卖场每隔3周订一次货,供货提前期为1周,该榨汁机的周需求服从正态分布,均值为30台,标准差为5台例7

9.3(OUL,T)策略分析例7

#(OUL,T)策略

OUL=

135

T=

3

#补货提前期

L=

1

将变量代入公式,则有,9.3(OUL,T)策略分析例7W=L+T

mu=

30

sigma=

10

#补货周期均值

mu_T=mu*T

#覆盖期均值,标准差

mu_W=mu*W

sigma_W=sigma*np.sqrt(W)

#计算安全库存

ss=OUL-mu_W

#计算周期服务水平

csl=norm_dist.cdf(ss/sigma_W)

#计算需求满足率

es=sigma_W*norm_dist.pdf(ss/sigma_W)-

\

ss*(1

-norm_dist.cdf(ss/sigma_W))

fr=

1

-es/mu_T

print('例9-8计算结果:')

print('安全库存量为:%.2f'

%ss)

print('周期服务水平为:%.2f'

%csl)

print('需求满足率为:%.2f'

%fr)9.3需求分布的刻画

9.3需求分布的刻画使用参数方法估计需求分布,需要根据产品的特性选择合适的分布形式,利用数据对其中未知的参数进行估计使用参数方法估计需求分布常见分布:正态分布但并不是所有产品都适合使用正态分布来估计其他分布:伽马分布、泊松分布及对数正态分布等9.3需求分布的刻画利用Python对某食品企业三个产品(SKU1,SKU2,SKU3)的历史销量数据进行参数估计三个产品的销量数据的时间颗粒度均和其覆盖期保持一致使用参数方法估计需求分布

SKU1SKU2SKU3

0404292299

1638271280

211320374

325169178

449733819.3需求分布的刻画使用参数方法估计需求分布plot_data(sales_data[‘SKU1'])9.3需求分布的刻画使用参数方法估计需求分布plot_data(sales_data[‘SKU2'])9.3需求分布的刻画使用参数方法估计需求分布plot_data(sales_data[‘SKU3'])9.3需求分布的刻画平稳性:’SKU1’的销量变化比较平稳,’SKU2’和’SKU3’变化较大偏度性:3个SKU的销量数据的分布并非完全对称,’SKU2’和’SKU3’是正偏度连续性:’SKU1’和’SKU3’的销量数据在取值上呈现连续变化,’SKU2’的数据在特定的区间值上有分布厚尾性:比起’SKU1’和’SKU2’的数据的分布比较集中,’SKU3’的需求分布尾部较厚使用参数方法估计需求分布9.3需求分布的刻画正态分布是最为常用的概率分布,在整个统计学中占据中心地位:正态分布正态分布的图像为钟型,有良好的解析性质,容易分析处理对于较大的样本,在适当的条件下绝大部分分布都能用正态分布进行近似

9.3需求分布的刻画

正态分布

9.3需求分布的刻画

正态分布

9.3需求分布的刻画在Python中,Scipy的stats模块提供了多种分布的统计相关函数。接下来我们将以正态分布为例,介绍使用stats模块定义分布、生成随机样本、相关概率函数的调用以及使用极大似然估计(MaximumLikelihoodEstimation,MLE)估计分布参数的方法Python中Scipy的stats模块相关函数调用调用stats模块的正态分布9.3需求分布的刻画对于stats模块中的各种分布,常用的函数:Python中Scipy的stats模块相关函数调用

9.3需求分布的刻画对于stats模块中的各种分布,常用的函数:Python中Scipy的stats模块相关函数调用#概率密度函数

pdf_value=norm_dist.pdf(0)

#累计分布函数

cdf_value=norm_dist.cdf(0)

#分位数函数(累计分布函数的逆函数)

quantile_value=norm_dist.ppf(0.9)

print("对于标准正态分布,在x=0处的概率密度函数为:%.2f,累积分布函数为:%.2f;"

%(pdf_value,cdf_value))

print('0.9-分位点为:%.2f'

%quantile_value)

对于标准正态分布,在x=0处的概率密度函数为:0.40,累积分布函数为:0.50;

0.9-分位点为:1.289.3需求分布的刻画

Python中Scipy的stats模块相关函数调用#指定参数的正态分布

norm_dist=stats.norm(100,20)

#生成随机样本

norm_sample=norm_dist.rvs(200)

plot_data(norm_sample)9.3需求分布的刻画对于连续型分布,可以用fit函数对样本数据进行拟合,采用相应的估计方法找到最符合样本的分布参数例如,下面采用极大似然估计方法对’SKU1’的销量数据进行拟合Python中Scipy的stats模块相关函数调用#使用极大似然估计进行拟合

normal_fitted_mu,normal_fitted_sigma=stats.norm.fit(sales_data['SKU1'],

method='MLE')

print("使用正态分布对SKU1的需求拟合,得到均值估计值为:%.2f,标准差估计值为:%.2f"

%(normal_fitted_mu,normal_fitted_sigma))使用正态分布对SKU1的需求拟合,得到均值估计值为:522.67,标准差估计值为:150.229.3需求分布的刻画下图展示了随机样本正态分布拟合后的概率密度函数,可以看到正态分布能够刻画出销量数据的一些特征Python中Scipy的stats模块相关函数调用#生成拟合的分布

normal_fitted_dist=stats.norm(normal_fitted_mu,normal_fitted_sigma)

#绘制拟合出的概率密度函数

plot_fitted_pdf(sales_data['SKU1'],normal_fitted_dist)9.3需求分布的刻画给定零售商对于’SKU1’期望的周期服务水平,根据安全库存计算公式,调用分位点函数ppf就能计算出相应的安全库存量Python中Scipy的stats模块相关函数调用#给定服务服务满足水平

given_csl=

0.95

#调用ppf()计算指定以95%的概率覆盖需求的库存水平

inv_level=normal_fitted_dist.ppf(given_csl)

safety_inventory=inv_level-normal_fitted_mu

print('假设需求服从正态分布,在给定服务水平%.2f时,补货周期内现货库存应为:%.2f,'

'安全库存量为:%.2f'

%(given_csl,inv_level,safety_inventory))假设需求服从正态分布,在给定服务水平0.95时,补货周期内现货库存应为:769.76,安全库存量为:247.099.3需求分布的刻画给定零售商对于’SKU1’期望的周期服务水平,根据安全库存计算公式,调用分位点函数ppf就能计算出相应的安全库存量伽马分布

9.3需求分布的刻画用伽马分布对’SKU1’的销量数据进行拟合伽马分布#用伽马分布拟合

gamma_fitted_paras=stats.gamma.fit(sales_data['SKU1'],method='MLE')

gamma_fitted_dist=stats.gamma(*gamma_fitted_paras)

plot_fitted_pdf(sales_data['SKU1'],gamma_fitted_dist)9.3需求分布的刻画

泊松分布与复合泊松分布

9.3需求分布的刻画

泊松分布与复合泊松分布poisson_dist=stats.poisson(10)

#概率质量函数

pmf_value=poisson_dist.pmf(5)

print('对于参数为10的泊松分布,在x=5处的概率质量函数为:%.2f'

%(pmf_value))Print:对于参数为10的泊松分布,在x=5处的概率质量函数为:0.049.3需求分布的刻画

泊松分布与复合泊松分布9.3需求分布的刻画

泊松分布与复合泊松分布9.3需求分布的刻画

泊松分布与复合泊松分布

9.3需求分布的刻画

泊松分布与复合泊松分布Stuttering泊松分布是最早提出的用于建模慢流品需求的分布之一

9.3需求分布的刻画厚尾分布“厚尾”是零售企业销量数据的一种常见现象。在厚尾分布下,尾部极端大的需求出现的概率要大于正态分布这类“薄尾”分布样本均值收敛的速度远远慢于正态分布下图绘制了在正态分布和厚尾分布下对应样本均值随样本量变化的曲线9.3需求分布的刻画厚尾分布

9.3需求分布的刻画对数正态分布

9.3需求分布的刻画对数正态分布

9.3需求分布的刻画稳定分布除了对数正态分布,两种常见的厚尾分布:帕累托分布和柯西分布也是常见的两种厚尾分布帕累托分布柯西分布这两种分布可以使用稳定分布来统一描述稳定分布是一类适用于对分布的厚尾和偏度进行描述的连续性概率分布在稳定分布下,独立同分布的随机变量之和与单个变量的分布形式相同正态分布就是一种特殊的稳态分布9.3需求分布的刻画稳定分布

9.3需求分布的刻画稳定分布

9.3需求分布的刻画使用非参数方法估计需求分布参数方法假设需求服从某一分布,从历史数据中估计相应的参数非参数方法不假设需求服从某一特定分布相对假设正确的参数方法,非参数方法在小样本情况下,表现不如参数方法但是无论数据的生成过程怎么样的,非参数方法都有一致的表现9.3需求分布的刻画经验分布与经验分位数

9.3需求分布的刻画经验分布与经验分位数Python中的应用:调用statsmodels包中的ECDF方法来得到经验分布使用numpy的quantile方法获得经验分位数值fromstatsmodels.distributions.empirical_distributionimportECDF

ecdf=ECDF(sales_data['SKU1'])quantile_value=np.quantile(sales_data['SKU1'],0.95)9.3需求分布的刻画核密度估计常用直方图观察数据的分布情况,直方图中每一区间的“高度”反映了数据在该区间内的频数:9.3需求分布的刻画核密度估计

9.3需求分布的刻画核密度估计

9.3需求分布的刻画核函数

9.3需求分布的刻画带宽

9.3需求分布的刻画带宽

9.3需求分布的刻画带宽

9.3需求分布的刻画核密度估计函数计算SKU1的核密度估计函数:核函数选择:高斯核带宽选择:留一交叉验证从中采样,计算出0.95的分位数9.3需求分布的刻画核密度估计函数kde=grid.best_estimator_

kde_samples=kde.sample(1000)

kde_quantile_value=np.quantile(kde_samples,0.95)

print('对于SKU1,使用kde计算的0.95-分位点为:%.2f'

%(kde_quantile_value))

对于SKU1,使用kde计算的0.95-分位点为:795.799.3需求分布的刻画分位数回归在使用周期服务水平指标管理安全库存时,需要计算覆盖期内总需求对应周期服务水平的分位数值。利用多维度信息预测分位数值:分位数线性回归集成树分位数回归9.3需求分布的刻画线性分位数回归

9.3需求分布的刻画线性分位数回归

9.3需求分布的刻画线性分位数回归9.3需求分布的刻画集成分位数回归将线性回归中原有的均方误差损失函数替换为分位数损失函数,可以得到线性分位数回归模型。相似的思路也可以应用在其它方法中以梯度提升树(GBDT)为例,介绍集成树分位数回归的使用fromsklearn.ensembleimportGradientBoostingRegressorgbdt_qr_dict={}

fortauinquantile_list:

#设置GBDT模型,损失函数设置为分位数损失函数

gbdt_qr=GradientBoostingRegressor(loss='quantile',alpha=tau,

n_estimators=200,max_depth=8,

learning_rate=.01,

min_samples_leaf=20,

min_samples_split=20)

gbdt_qr.fit(X,Y)

gbdt_qr_dict[tau]=gbdt_qr.predict(x_to_predict)

gbdt_qr_df=pd.DataFrame(gbdt_qr_dict)

gbdt_qr_df.columns=['q_'

+str(tau)fortauinquantile_list]

gbdt_qr_df['X']=x_to_predict9.3需求分布的刻画集成分位数回归9.4给定需求满足率下安全库存的计算

9.4给定需求满足率下安全库存的计算

蒙特卡洛模拟

9.4给定需求满足率下安全库存的计算

二分查找搜索

9.4给定需求满足率下安全库存的计算

二分查找搜索level=

0

cur_es=

1000

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论