什么是随机编程?(stochastic programming?)

随机编程处理复杂的数学优化问题,其中未知的变量创造了许多可能的解决方案。这可能涉及到将一个模型通过一系列的阶段,其中每个阶段都可能受到不同变量的影响。数学家可以将其应用于与决策、资源分配和类似活动有关的问题。它也是一个学术研究的主题,研究人员致力于开发新的和更有效的随机编程模型,以应用于现实世界的情况。...
Stochastic programming handles complex mathematical optimization questions where unknown variables create a number of possible solutions.

随机编程处理复杂的数学优化问题,其中未知的变量创造了许多可能的解决方案。这可能涉及到将一个模型通过一系列的阶段,其中每个阶段都可能受到不同变量的影响。数学家可以将其应用于与决策、资源分配和类似活动有关的问题。它也是一个学术研究的主题,研究人员致力于开发新的和更有效的随机编程模型,以应用于现实世界的情况。

优化问题可以变得非常复杂。在更基本的形式中,变量都是已知的,这使得有可能通过一个方程来计算出最合适的解决方案。在参数不太确定的情况下,这通常是不可能的,未知的变量可能会对结果产生影响。随机程序员依靠概率分布来估计变量的范围并将其应用于方程。

常见的例子可以出现在对自然环境中的事件进行数学建模。例如,当蝴蝶产卵时,它们想优化孵化并发展成幼虫,然后成为成年蝴蝶的机会。随机编程模型可以提供有关蝴蝶可能做出的一系列最佳决定的信息。变量可能包括捕食、温度变化和其他抑制孵化的问题,或者在幼虫达到成年期之前将其杀死。数学家可以通过一系列的阶段来优化这个问题。

每个阶段的决定都可以切断或打开下一个阶段的决定。随机编程需要灵活,以达到最佳解决方案,同时仍然对决策施加一些秩序,使其有可能在数学问题中量化。复杂程度可能取决于问题的性质;有些问题只是简单地分为两个阶段,而其他问题可能涉及多个阶段。对于每个阶段,都有可能确定最佳解决方案,并考虑它对沿线决策的影响。

研究人员可以以各种方式使用这一工具,从分析动物行为到研究企业界决策背后的过程。它还可以用于数学建模,以支持商业等环境中的决策。例如,证券交易员可以考虑将随机编程作为探索问题的最佳解决方案的工具之一。分析师可以进行这种性质的计算,也可以使用软件程序,让他们自动设置问题,并通过一系列可能的情况来运行它们。

  • 发表于 2022-02-10 16:10
  • 阅读 ( 85 )
  • 分类:科学

你可能感兴趣的文章

声明的(declarative)和命令式程序设计(imperative programming)的区别

...式编程与命令式编程 5. 摘要 什么是声明式编程(declarative programming)? 声明式编程可以用一个真实的场景来解释。假设用户需要检查新邮件。一种方法是启用收件箱通知。用户只需启用一次通知,每次新邮件到达时,他都会自动...

  • 发布于 2020-10-16 09:49
  • 阅读 ( 556 )

函数式程序设计(functional programming)和命令式程序设计(imperative programming)的区别

...式的命令式编程 6.摘要 什么是函数式程序设计(functional programming)? 函数式程序设计是以数学为基础的。函数式编程背后的关键原则是,所有的计算都被看作是独立数学函数的组合。数学函数将输入映射到输出。假设有一个函数...

  • 发布于 2020-10-19 02:12
  • 阅读 ( 485 )

结构化的(structured)和非结构化编程(unstructured programming)的区别

结构化的(structured)和非结构化程序设计(unstructured programming)的区别 计算机程序是计算机执行用编程语言编写的任务的一组指令。编程范例可以根据语言特性对编程语言进行分类。结构化编程和非结构化编程是两种常见的编程...

  • 发布于 2020-10-24 05:09
  • 阅读 ( 493 )

编码(coding)和编程(programming)的区别

...逻辑。总的来说,编码是编程的一个步骤。 什么是编程(programming)? 与编码相比,编程是一个更广泛的概念。程序设计是为计算机执行一项任务而设计和开发程序的整个过程。第一步是找出问题所在。下一步是做分析。这涉及到...

  • 发布于 2021-06-30 22:23
  • 阅读 ( 480 )

脚本语言(scripting language)和程序设计语言(programming language)的区别

...l、PHP、Python和Ruby就是一些例子。 什么是程序设计语言(a programming language)? 程序设计语言是一种正式的语言,可以用来创建计算机程序来指示计算机执行任务。编程语言可以是高级语言,也可以是低级语言。 高级语言更易于程...

  • 发布于 2021-07-01 02:49
  • 阅读 ( 267 )

函数式程序设计(functional programming)和面向对象程序设计(object oriented programming)的区别

...程、多态性、递归函数 什么是函数式程序设计(functional programming)? 函数式编程允许使用数学函数构建程序。换句话说,它将程序绑定为纯数学函数样式。使用函数式编程,开发人员可以将一个程序构建为单独数学函数的组合。...

  • 发布于 2021-07-01 17:38
  • 阅读 ( 902 )

结构化的(structured)和面向对象程序设计(object oriented programming)的区别

...设计,结构化程序设计 什么是结构化程序设计(structured programming)? 结构化编程将程序划分为一组函数或模块。模块化编程是这方面的另一个名称。这些函数的语句包含在花括号中。每个函数都执行一个子任务。通常,由于每个...

  • 发布于 2021-07-01 22:01
  • 阅读 ( 591 )

源程序(source program)和目标程序(object program)的区别

...键术语 编译器,目标程序,源程序 什么是源程序(source program)? 源程序或源代码是由程序员编写的原始程序。它是基于文本的文档。在源程序中,程序员编写计算机应该执行的指令。他使用计算机编程语言如Java、C#.NET等编写这...

  • 发布于 2021-07-02 02:21
  • 阅读 ( 1006 )

快速随机(fast stochastic)和慢随机(slow stochastic)的区别

...范围内,但是这两个术语是分开的。 快速随机(fast stochastic) vs. 慢随机(slow stochastic) 快速随机振荡器(或Stoch%K)计算两个收盘价统计数据的比率:最近N天内最新收盘价和最低价之间的差值与最近N天内最高价和最低价之间...

  • 发布于 2021-07-07 09:57
  • 阅读 ( 429 )

程序性、结构性(procedural, structural)和面向对象程序设计语言(object oriented programming languages)的区别

关键区别:过程编程语言由一组过程调用和每个过程的一组代码组成。结构化编程语言强调将程序的数据与其功能分离开来。另一方面,面向对象语言是基于被称为对象的实体的。 编程语言是一种由为计算机设计的指令组成的...

  • 发布于 2021-07-13 14:20
  • 阅读 ( 217 )
ZHI0613001
ZHI0613001

0 篇文章