大数据建模与优化算法习题和大作业

大数据建模与优化算法

大作业

1.考虑释放时间的可分任务调度优化模型

解答在知网《考虑处理机释放时间的可分任务调度优化模型》

2.梯度下降法处理

在这里插入图片描述

迭代10次。老师给的:
λ ∈ [ − 1 , 1 ] λ∈[-1,1] λ[1,1]
因为这是一个周期函数,只需要在其间采点,找到最小的那个点。

1.	import numpy as np  
2.	import math  
3.	from sympy import *  
4.	#lamda(-1,1)  
5.	def fx(x):#函数fx定义  
6.	    fun_fx=x[0]**2+x[1]**2-math.cos(18*x[0])-math.cos(18*x[1])  
7.	    return fun_fx  
8.	def gx(x):#梯度定义  
9.	    fun_gx=[]  
10.	    a=2*x[0]+18*math.sin(18*x[0])  
11.	    b=2*x[1]+18*math.sin(18*x[1])  
12.	    fun_gx.append(a)  
13.	    fun_gx.append(b)  
14.	    return fun_gx  
15.	def lamda(x):#求步长  
16.	    dx=gx(x)  
17.	    x_new=[0,0]  
18.	    dx[0]=-1*dx[0]  
19.	    dx[1]=-1*dx[1]  
20.	    t=symbols('t')#符号化  
21.	    d=[]  
22.	    d.append(dx[0]*t)  
23.	    d.append(dx[1]*t)  
24.	    x_new[0]=x[0]+d[0]  
25.	    x_new[1]=x[1]+d[1]  
26.	    t_list=list(np.linspace(-1,1,1000))  
27.	    gt=[]  
28.	    z=x_new[0]**2+x_new[1]**2-cos(18*x_new[0])-cos(18*x_new[1])  
29.	    for i in range(1000):  
30.	        gt.append(z.subs({t:t_list[i]}))  
31.	    index=np.argmin(gt,axis=0)  
32.	    return t_list[index]  
33.	if __name__=='__main__':  
34.	    x=[-1,1]#初始点  
35.	    fx_list=[]  
36.	    x_list=[]  
37.	    for i in range(10):  
38.	        #print(fx(x))  
39.	        fx_list.append(fx(x))  
40.	        x_list.append(x)  
41.	        t=lamda(x)  
42.	        dx=gx(x)  
43.	        x[0]=x[0]-t*dx[0]  
44.	        x[1]=x[1]-t*dx[1]  
45.	    for i in range(len(x_list)):  
46.	        print(x_list[i],fx_list[i])

实验结果
迭代次数迭代点结果函数值
初始点(-1,1)0.679366
1(4.345732175528321e-10, -4.345732175528321e-10)-1.9969699751924093
2(4.345732175528321e-10, -4.345732175528321e-10)-1.9999985977950765
3(4.345732175528321e-10, -4.345732175528321e-10)-1.9999999993803756
4(4.345732175528321e-10, -4.345732175528321e-10)-1.999999999999726
5(4.345732175528321e-10, -4.345732175528321e-10)-1.9999999999999998
6(4.345732175528321e-10, -4.345732175528321e-10)-2.0
7(4.345732175528321e-10, -4.345732175528321e-10)-2.0
8(4.345732175528321e-10, -4.345732175528321e-10)-2.0
9(4.345732175528321e-10, -4.345732175528321e-10)-2.0
10(4.345732175528321e-10, -4.345732175528321e-10)-2.0

复习题

复习题.pdf https://www.aliyundrive.com/s/NST6HYWdrQk 提取码: ar27

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值