确定性算法

数学术语

确定性算法是利用问题的解析性质,产生一确定的有限或无限点序列使其收敛于全局最优解。这类方法依据某一确定性策略搜索局部极小,并试图跳跃已获得的局部极小而达到某个全局最优点,能充分利用问题的解析性质,从而计算效率高。如填充函数法、打洞函数法、D.C.规划算法、区间法、单调规划、分支定界方法和积分水平集方法等,这些算法的构造都涉及到已知目标函数的某些局部性质或者全局性质。其中,函数的连续性、可微性认为是局部性质,而凸性、单调性、稠密性、等度连续性、李普希兹连续、水平集等通常称为全局性的解析性质。

全局优化问题
全局优化问题的一般形式是:
其中, 是可行域, 是目标函数。上述问题一般称为原问题,这里记为问题(1)。根据可行域X的不同情况,问题(1)又可分为多种类型。如果X= ,则得无约束全局优化问题,记为问题(2);如果X={ | }为一个闭箱,则得闭箱约束全局优化问题,记为问题(3);如果X是一个多面体,则得线性约束全局优化问题。
填充函数法
填充函数是由西安交通大学的R.Ge(葛仁溥)教授首先提出的,填充函数法充分地利用了函数在可行域上的局部性质。
填充函数的定义如下:
函数p(x, )称为f(x)在局部极小点 处的填充函数,如果满足:
(1) 是p(x, )的一个严格局部极大点,f(x)在点 处的盆谷 成为p(x, )的峰的一部分;
(2) p(x, )在比 高的盆谷里没有平稳点;
(3) 如果存在比 低的盆谷 ,则存在x'∈ 主使得p(x, )在x'和 的连线上存在极小点.
由填充函数的定义可以看出,如果当前极小点不是全局极小点的话,通过极小化填充函数则可以跳出原问题当前局部极小点,并到达一个原问题函数值比当前局部极小值还要小的点。因此,从该点出发极小化原问题目标函数,必将导致一个原问题目标函数值更小的局部极小点。
填充函数算法由两个阶段组成:极小化阶段和填充阶段。这两个阶段交替使用直到找不到更好的局部极小点。在第一阶段里,可以用经典的极小化算法寻找目标函数的一个局部极小值点 。然后进入第二阶段,在当前极小点 处定义一个填充函数,通过极小化填充函数,找到点 ,使得 ,而后以x'为初始点,重复第一步,一直到找不到更好的局部极小点。为此葛仁溥给出了一个两个参数的填充函数函数:
填充函数的优点是较多地利用了函数的性质,所以收敛速度比较快,算法的设计和执行也相对容易;缺点是填充函数过多依赖一些未知参数,这就增加了算法设计之前的工作量,要经大量的实验,来确定参数的取值范围,以确保能找到满意的全局最优解,而且填充函数利用的是线搜索,所以对寻找低盆谷的点也有很大的难度。
打洞函数法
打洞函数法是由Levy和Montalvo在1985年首先提出的,它由一系列循环组成,每个循环包括两个阶段:局部极小化阶段和打洞阶段。
首先是极小化阶段,由一个初始点出发,应用局部极小化算法,求得f(x)的一局部极小点 。其次是打洞阶段,先定义 处的打洞函数:
这里 是 的强度,然后寻找T(x, )≤0的点,即找到 ,使 ,由x'作为初始点开始下一轮循环,必将得到一个更好的极小点。
采用适当极小化打洞函数的方法找到一个局部极小点x',并对其进行讨论:
(1) 如果x'= ,则增大 ,使得x'不再是T(x, )的局部极小点。
(2) 如果x'≠ :并且 ,那么构造新的打洞函数:
这里, 是 的强度,目的是使x'不再是T(x, )的局部极小点,防止极小化T(x, )时又得到x',然后重新极小化T(x, )。
(3) 如果f(x')≤f( ),则由x'为初始点开始下一轮循环。
打洞函数存在下述缺陷:
(1) 极的强度 与问题有关,当 增大到足够大时算法才会有效,而增加 ,算法必须重新开始,从而增加工作量。
(2) 打洞函数可能找到另一局部极小点x',成立f(x')≥f( )。这样对于第二个局部极小点x',必须加上另一个极,打洞过程又要重新开始,又增加了工作量。
(3) 极的增加会引起打洞函数成为平坦,这时候极小点很难求。
D.C.规划算法
通过引入变量t,下面的D.C.规划问题:
可以转化为等价的凹极小化问题(记为问题(4)):
显然,目标函数 是凹的,可行域 是一个凸集,因此,如果(x‘,t‘)是问题(4)的一个全局最优解,则x’是D.C.规划问题的一个全局最优解,且t‘=f(x‘)。
因此,对于任一D.C.规划问题都可以通过凹极小化算法求解。对于凹极小化问题,人们已经提出了一些算法,这些算法多以分枝定界技巧、割平面方法、最优性条件和整数规划等方法为基础,且它们的有效性依赖于所要解决问题的结构特点。
区间方法
区间方法考虑的是问题(2),其基本思想是以区间分析为基础,按照区间算术运算规则用区间变量代替点变量进行区间计算,并将分支定界法和Moore-Skelboe算法等方法相结合。对这类算法,Moore首次提出区间全局优化这一概念。在这一研究领域里,所有的算法都包含精确区间计算,以及算法的执行效率依赖于目标函数、梯度和约束区间扩张的构造方法。这类方法一般分为五个基本步骤:定界、分支、终止、删除和分裂。其中包括区间分裂规则、删除规则及区间选择规则,不同的区间算法在于这几种规则的不同处理手段上。
区间方法和其他方法(即以点搜索方式产生近似点序列)相比,它的突出优点是对于低维空间中全局优化问题,能在给定精度内求出问题的全部全局极小点。特别地,对于二维空间中的单变量目标函数,建立了计算效率很高的求一元函数全局极小的区间斜率算法。缺点是当用于高维全局优化问题时,算法的计算量很大,对于区间分裂规则、删除规则及区间选择规则以及它们的检验条件的确定,难度都很大。
分支定界方法
分支定界算法中,可行域得到松弛,并且把原区域逐次分割成越来越多的小区域,这个过程称为分支;在这些小区域内,确定目标函数的下界和上界,这个过程称为定界。在算法的某个阶段,对于在其内下界大于当前最小的上界的小区域,将其删除,这个过程称为剪支,因为这些小区域中显然不包含最优解。随着分支越来越细,最小上界的不断下降,最大下界的不断上升,当最大下界和最小上界之差趋于零,同时细分的小区域收缩为一个点时,我们可以得到目标函数的全局极小值和全局极小点。
各种分支定界算法在求解连续变量的全局最优化问题时,有如下共同的特点:
(1) 对目标函数和可行域有较高的要求,以便于分支和定界。算法的效率与分支和定界方法的效率紧密相关。
(2) 在算法实施时,需要储存越来越多的细分的小区域和目标函数在其上的下界,这使得在编程时,对数据结构的选择、计算机内存的使用提出了更高的要求。
全国各地天气预报查询

上海市

  • 市辖区
  • 云南省

  • 临沧市
  • 云南省

  • 丽江市
  • 云南省

  • 保山市
  • 云南省

  • 大理白族自治州
  • 云南省

  • 德宏傣族景颇族自治州
  • 云南省

  • 怒江傈僳族自治州
  • 云南省

  • 文山壮族苗族自治州
  • 云南省

  • 昆明市
  • 云南省

  • 昭通市
  • 云南省

  • 普洱市
  • 云南省

  • 曲靖市
  • 云南省

  • 楚雄彝族自治州
  • 云南省

  • 玉溪市
  • 云南省

  • 红河哈尼族彝族自治州
  • 云南省

  • 西双版纳傣族自治州
  • 云南省

  • 迪庆藏族自治州
  • 内蒙古自治区

  • 乌兰察布市
  • 内蒙古自治区

  • 乌海市
  • 内蒙古自治区

  • 兴安盟
  • 内蒙古自治区

  • 包头市
  • 内蒙古自治区

  • 呼伦贝尔市
  • 内蒙古自治区

  • 呼和浩特市
  • 内蒙古自治区

  • 巴彦淖尔市
  • 内蒙古自治区

  • 赤峰市
  • 内蒙古自治区

  • 通辽市
  • 内蒙古自治区

  • 鄂尔多斯市
  • 内蒙古自治区

  • 锡林郭勒盟
  • 内蒙古自治区

  • 阿拉善盟
  • 北京市

  • 市辖区
  • 吉林省

  • 吉林市
  • 吉林省

  • 四平市
  • 吉林省

  • 延边朝鲜族自治州
  • 吉林省

  • 松原市
  • 吉林省

  • 白城市
  • 吉林省

  • 白山市
  • 吉林省

  • 辽源市
  • 吉林省

  • 通化市
  • 吉林省

  • 长春市
  • 四川省

  • 乐山市
  • 四川省

  • 内江市
  • 四川省

  • 凉山彝族自治州
  • 四川省

  • 南充市
  • 四川省

  • 宜宾市
  • 四川省

  • 巴中市
  • 四川省

  • 广元市
  • 四川省

  • 广安市
  • 四川省

  • 德阳市
  • 四川省

  • 成都市
  • 四川省

  • 攀枝花市
  • 四川省

  • 泸州市
  • 四川省

  • 甘孜藏族自治州
  • 四川省

  • 眉山市
  • 四川省

  • 绵阳市
  • 四川省

  • 自贡市
  • 四川省

  • 资阳市
  • 四川省

  • 达州市
  • 四川省

  • 遂宁市
  • 四川省

  • 阿坝藏族羌族自治州
  • 四川省

  • 雅安市
  • 天津市

  • 市辖区
  • 宁夏回族自治区

  • 中卫市
  • 宁夏回族自治区

  • 吴忠市
  • 宁夏回族自治区

  • 固原市
  • 宁夏回族自治区

  • 石嘴山市
  • 宁夏回族自治区

  • 银川市
  • 安徽省

  • 亳州市
  • 安徽省

  • 六安市
  • 安徽省

  • 合肥市
  • 安徽省

  • 安庆市
  • 安徽省

  • 宣城市
  • 安徽省

  • 宿州市
  • 安徽省

  • 池州市
  • 安徽省

  • 淮北市
  • 安徽省

  • 淮南市
  • 安徽省

  • 滁州市
  • 安徽省

  • 芜湖市
  • 安徽省

  • 蚌埠市
  • 安徽省

  • 铜陵市
  • 安徽省

  • 阜阳市
  • 安徽省

  • 马鞍山市
  • 安徽省

  • 黄山市
  • 山东省

  • 东营市
  • 山东省

  • 临沂市
  • 山东省

  • 威海市
  • 山东省

  • 德州市
  • 山东省

  • 日照市
  • 山东省

  • 枣庄市
  • 山东省

  • 泰安市
  • 山东省

  • 济南市
  • 山东省

  • 济宁市
  • 山东省

  • 淄博市
  • 山东省

  • 滨州市
  • 山东省

  • 潍坊市
  • 山东省

  • 烟台市
  • 山东省

  • 聊城市
  • 山东省

  • 菏泽市
  • 山东省

  • 青岛市
  • 山西省

  • 临汾市
  • 山西省

  • 吕梁市
  • 山西省

  • 大同市
  • 山西省

  • 太原市
  • 山西省

  • 忻州市
  • 山西省

  • 晋中市
  • 山西省

  • 晋城市
  • 山西省

  • 朔州市
  • 山西省

  • 运城市
  • 山西省

  • 长治市
  • 山西省

  • 阳泉市
  • 广东省

  • 东莞市
  • 广东省

  • 中山市
  • 广东省

  • 云浮市
  • 广东省

  • 佛山市
  • 广东省

  • 广州市
  • 广东省

  • 惠州市
  • 广东省

  • 揭阳市
  • 广东省

  • 梅州市
  • 广东省

  • 汕头市
  • 广东省

  • 汕尾市
  • 广东省

  • 江门市
  • 广东省

  • 河源市
  • 广东省

  • 深圳市
  • 广东省

  • 清远市
  • 广东省

  • 湛江市
  • 广东省

  • 潮州市
  • 广东省

  • 珠海市
  • 广东省

  • 肇庆市
  • 广东省

  • 茂名市
  • 广东省

  • 阳江市
  • 广东省

  • 韶关市
  • 广西壮族自治区

  • 北海市
  • 广西壮族自治区

  • 南宁市
  • 广西壮族自治区

  • 崇左市
  • 广西壮族自治区

  • 来宾市
  • 广西壮族自治区

  • 柳州市
  • 广西壮族自治区

  • 桂林市
  • 广西壮族自治区

  • 梧州市
  • 广西壮族自治区

  • 河池市
  • 广西壮族自治区

  • 玉林市
  • 广西壮族自治区

  • 百色市
  • 广西壮族自治区

  • 贵港市
  • 广西壮族自治区

  • 贺州市
  • 广西壮族自治区

  • 钦州市
  • 广西壮族自治区

  • 防城港市
  • 新疆维吾尔自治区

  • 乌鲁木齐市
  • 新疆维吾尔自治区

  • 伊犁哈萨克自治州
  • 新疆维吾尔自治区

  • 克孜勒苏柯尔克孜自治州
  • 新疆维吾尔自治区

  • 克拉玛依市
  • 新疆维吾尔自治区

  • 博尔塔拉蒙古自治州
  • 新疆维吾尔自治区

  • 吐鲁番市
  • 新疆维吾尔自治区

  • 和田地区
  • 新疆维吾尔自治区

  • 哈密市
  • 新疆维吾尔自治区

  • 喀什地区
  • 新疆维吾尔自治区

  • 塔城地区
  • 新疆维吾尔自治区

  • 巴音郭楞蒙古自治州
  • 新疆维吾尔自治区

  • 昌吉回族自治州
  • 新疆维吾尔自治区

  • 自治区直辖县级行政区划
  • 新疆维吾尔自治区

  • 阿克苏地区
  • 新疆维吾尔自治区

  • 阿勒泰地区
  • 江苏省

  • 南京市
  • 江苏省

  • 南通市
  • 江苏省

  • 宿迁市
  • 江苏省

  • 常州市
  • 江苏省

  • 徐州市
  • 江苏省

  • 扬州市
  • 江苏省

  • 无锡市
  • 江苏省

  • 泰州市
  • 江苏省

  • 淮安市
  • 江苏省

  • 盐城市
  • 江苏省

  • 苏州市
  • 江苏省

  • 连云港市
  • 江苏省

  • 镇江市
  • 江西省

  • 上饶市
  • 江西省

  • 九江市
  • 江西省

  • 南昌市
  • 江西省

  • 吉安市
  • 江西省

  • 宜春市
  • 江西省

  • 抚州市
  • 江西省

  • 新余市
  • 江西省

  • 景德镇市
  • 江西省

  • 萍乡市
  • 江西省

  • 赣州市
  • 江西省

  • 鹰潭市
  • 河北省

  • 保定市
  • 河北省

  • 唐山市
  • 河北省

  • 廊坊市
  • 河北省

  • 张家口市
  • 河北省

  • 承德市
  • 河北省

  • 沧州市
  • 河北省

  • 石家庄市
  • 河北省

  • 秦皇岛市
  • 河北省

  • 衡水市
  • 河北省

  • 邢台市
  • 河北省

  • 邯郸市
  • 河南省

  • 三门峡市
  • 河南省

  • 信阳市
  • 河南省

  • 南阳市
  • 河南省

  • 周口市
  • 河南省

  • 商丘市
  • 河南省

  • 安阳市
  • 河南省

  • 平顶山市
  • 河南省

  • 开封市
  • 河南省

  • 新乡市
  • 河南省

  • 洛阳市
  • 河南省

  • 漯河市
  • 河南省

  • 濮阳市
  • 河南省

  • 焦作市
  • 河南省

  • 省直辖县级行政区划
  • 河南省

  • 许昌市
  • 河南省

  • 郑州市
  • 河南省

  • 驻马店市
  • 河南省

  • 鹤壁市
  • 浙江省

  • 丽水市
  • 浙江省

  • 台州市
  • 浙江省

  • 嘉兴市
  • 浙江省

  • 宁波市
  • 浙江省

  • 杭州市
  • 浙江省

  • 温州市
  • 浙江省

  • 湖州市
  • 浙江省

  • 绍兴市
  • 浙江省

  • 舟山市
  • 浙江省

  • 衢州市
  • 浙江省

  • 金华市
  • 海南省

  • 三亚市
  • 海南省

  • 三沙市
  • 海南省

  • 儋州市
  • 海南省

  • 海口市
  • 海南省

  • 省直辖县级行政区划
  • 湖北省

  • 十堰市
  • 湖北省

  • 咸宁市
  • 湖北省

  • 孝感市
  • 湖北省

  • 宜昌市
  • 湖北省

  • 恩施土家族苗族自治州
  • 湖北省

  • 武汉市
  • 湖北省

  • 省直辖县级行政区划
  • 湖北省

  • 荆州市
  • 湖北省

  • 荆门市
  • 湖北省

  • 襄阳市
  • 湖北省

  • 鄂州市
  • 湖北省

  • 随州市
  • 湖北省

  • 黄冈市
  • 湖北省

  • 黄石市
  • 湖南省

  • 娄底市
  • 湖南省

  • 岳阳市
  • 湖南省

  • 常德市
  • 湖南省

  • 张家界市
  • 湖南省

  • 怀化市
  • 湖南省

  • 株洲市
  • 湖南省

  • 永州市
  • 湖南省

  • 湘潭市
  • 湖南省

  • 湘西土家族苗族自治州
  • 湖南省

  • 益阳市
  • 湖南省

  • 衡阳市
  • 湖南省

  • 邵阳市
  • 湖南省

  • 郴州市
  • 湖南省

  • 长沙市
  • 甘肃省

  • 临夏回族自治州
  • 甘肃省

  • 兰州市
  • 甘肃省

  • 嘉峪关市
  • 甘肃省

  • 天水市
  • 甘肃省

  • 定西市
  • 甘肃省

  • 平凉市
  • 甘肃省

  • 庆阳市
  • 甘肃省

  • 张掖市
  • 甘肃省

  • 武威市
  • 甘肃省

  • 甘南藏族自治州
  • 甘肃省

  • 白银市
  • 甘肃省

  • 酒泉市
  • 甘肃省

  • 金昌市
  • 甘肃省

  • 陇南市
  • 福建省

  • 三明市
  • 福建省

  • 南平市
  • 福建省

  • 厦门市
  • 福建省

  • 宁德市
  • 福建省

  • 泉州市
  • 福建省

  • 漳州市
  • 福建省

  • 福州市
  • 福建省

  • 莆田市
  • 福建省

  • 龙岩市
  • 西藏自治区

  • 山南市
  • 西藏自治区

  • 拉萨市
  • 西藏自治区

  • 日喀则市
  • 西藏自治区

  • 昌都市
  • 西藏自治区

  • 林芝市
  • 西藏自治区

  • 那曲市
  • 西藏自治区

  • 阿里地区
  • 贵州省

  • 六盘水市
  • 贵州省

  • 安顺市
  • 贵州省

  • 毕节市
  • 贵州省

  • 贵阳市
  • 贵州省

  • 遵义市
  • 贵州省

  • 铜仁市
  • 贵州省

  • 黔东南苗族侗族自治州
  • 贵州省

  • 黔南布依族苗族自治州
  • 贵州省

  • 黔西南布依族苗族自治州
  • 辽宁省

  • 丹东市
  • 辽宁省

  • 大连市
  • 辽宁省

  • 抚顺市
  • 辽宁省

  • 朝阳市
  • 辽宁省

  • 本溪市
  • 辽宁省

  • 沈阳市
  • 辽宁省

  • 盘锦市
  • 辽宁省

  • 营口市
  • 辽宁省

  • 葫芦岛市
  • 辽宁省

  • 辽阳市
  • 辽宁省

  • 铁岭市
  • 辽宁省

  • 锦州市
  • 辽宁省

  • 阜新市
  • 辽宁省

  • 鞍山市
  • 重庆市

  • 重庆市

  • 市辖区
  • 陕西省

  • 咸阳市
  • 陕西省

  • 商洛市
  • 陕西省

  • 安康市
  • 陕西省

  • 宝鸡市
  • 陕西省

  • 延安市
  • 陕西省

  • 榆林市
  • 陕西省

  • 汉中市
  • 陕西省

  • 渭南市
  • 陕西省

  • 西安市
  • 陕西省

  • 铜川市
  • 青海省

  • 果洛藏族自治州
  • 青海省

  • 海东市
  • 青海省

  • 海北藏族自治州
  • 青海省

  • 海南藏族自治州
  • 青海省

  • 海西蒙古族藏族自治州
  • 青海省

  • 玉树藏族自治州
  • 青海省

  • 西宁市
  • 青海省

  • 黄南藏族自治州
  • 黑龙江省

  • 七台河市
  • 黑龙江省

  • 伊春市
  • 黑龙江省

  • 佳木斯市
  • 黑龙江省

  • 双鸭山市
  • 黑龙江省

  • 哈尔滨市
  • 黑龙江省

  • 大兴安岭地区
  • 黑龙江省

  • 大庆市
  • 黑龙江省

  • 牡丹江市
  • 黑龙江省

  • 绥化市
  • 黑龙江省

  • 鸡西市
  • 黑龙江省

  • 鹤岗市
  • 黑龙江省

  • 黑河市
  • 黑龙江省

  • 齐齐哈尔市