def golden_section_search(a, b, epsilon): """ 0.618法(黄金分割法)的实现函数 参数: - a: 初始边界的左边界 - b: 初始边界的右边界 - epsilon: 误差值 """ # 定义黄金分割比例 phi = 1/0.618 # 计算初值 ak = a bk = b lam = bk - (bk - ak) / phi mu = ak + (bk - ak) / phi # 迭代 while abs(bk - ak) > epsilon: print(f"λ: {lam:.6f}, μ: {mu:.6f}, a_k: {ak:.6f}, b_k: {bk:.6f}") if f(lam) < f(mu): bk = mu else: ak = lam # 更新兰姆达和缪 lam = bk - (bk - ak) / phi mu = ak + (bk - ak) / phi # 输出结果 print(f"最终结果:a_k: {ak:.6f}, b_k: {bk:.6f}") print(f"最小值:{f((ak + bk) / 2):.6f}") # 定义目标函数 def f(x): return #添加你需要的函数到这里