Excel 如何确定数据集的最佳数据结构/实现?

Excel 如何确定数据集的最佳数据结构/实现?,excel,vba,algorithm,data-structures,shortest-path,Excel,Vba,Algorithm,Data Structures,Shortest Path,前言:我是一个自学成才的程序员,所以我的很多知识都局限于我的研究。我希望有其他的意见,因为我想在第一次就把事情做好。我需要帮助确定适当的解决方案以及如何实施该解决方案 我希望基于不同的运输方式(车辆)和所走的不同道路(路径),构建一个用于在不同地点(节点)之间交付的成本最低的备选模型(基本上是最短路径)。另一个考虑因素是产品价格(值),以确定最低成本路径 以下是我的重要数据项: 节点:产品往返的城市 路径:道路的成本因道路而异 车辆:不同的车辆在运输(摩托车、汽车、卡车)时具有不同的租赁成本

前言:我是一个自学成才的程序员,所以我的很多知识都局限于我的研究。我希望有其他的意见,因为我想在第一次就把事情做好。我需要帮助确定适当的解决方案以及如何实施该解决方案


我希望基于不同的运输方式(
车辆
)和所走的不同道路(
路径
),构建一个用于在不同地点(
节点
)之间交付的成本最低的备选模型(基本上是最短路径)。另一个考虑因素是产品价格(
),以确定最低成本路径

以下是我的重要数据项:

  • 节点
    :产品往返的城市
  • 路径
    :道路的成本因道路而异
  • 车辆
    :不同的车辆在运输(摩托车、汽车、卡车)时具有不同的租赁成本。请注意,车辆的成本不是恒定的,它在很大程度上取决于往返节点。例如,使用汽车从a市到B市的成本与使用汽车从B市到a市或a市到C市的成本不同
  • :产品值。同样,产品的价值高度依赖于其目标节点。同一产品在城市a、B或C可能具有不同的价值

问题陈述 如何设置数据结构以最好地确定从一个位置到其他每个位置获取产品的最低成本路径

可能的解决方案 根据我的研究,我相信结合dijkstra的算法,加权图数据结构最适合我的情况。我认为,首先创建一个只包含
节点
路径
的简单加权图,将问题分解得更简单是至关重要的

然后,添加
车辆
成本和产品价值注意事项。也许只是将这两个值相加作为“访问”
节点的成本?(也称为将其纳入
路径
成本?)

对我目前的解决方案有何想法?我忽略的其他考虑?也许是更好的解决办法

实施
我希望能够在ExcelVBA中构建它(因为这是我学习如何编码的方式),Excel是我用于工具的工具。VBA在这项任务中会不会太有限?还有什么方法可以将我的分析与Excel结合到另一种语言中呢?

试试温斯顿和奥尔布赖特的《实用管理科学》一书,看看关于运营管理的一章——从简单的开始,这里介绍了很多模型。可以在线以pdf格式获得:

VBA与其说是一种成熟的语言,不如说是一种脚本语言,尽管有人可能会争辩说底层框架是.NET。你为什么不给C++或java做一个试探呢?如果您能直观地理解数据结构和算法,那么在这些方面进行编码将是轻而易举的事。Sedgewick和Wayne的算法第4章对最短路径有一个漂亮的解释。你也可以考虑学习Belman Ford算法,如果你预见到顶点上有任何负的重量循环。