c++和gurobi_数学优化求解器|python调用gurobi解决车辆路径问题

本文介绍了如何利用Python调用Gurobi优化求解器解决单车型燃油车的静态车辆路径问题。通过建立数学模型,包括运输成本、客户点唯一访问、车辆路径限制、流守恒、载重量约束、时间逻辑和服务时间窗要求,然后详细阐述了如何设置参数、导入数据、创建变量并设置模型约束。最后,提到为了获取最优解,需要对解结果进行处理以得到车辆路径方案。
摘要由CSDN通过智能技术生成

No.1

前言

本文介绍单车型燃油车静态车辆路径问题,建模并利用python调用gurobi求解。

No.2

问题描述

物流企业组建一只燃油车车队对客户进行配送。假设配送系统存在一个配送中心和K辆燃油车(车辆同质),需为n个已知位置、需求量和服务时间的客户配送货物,且每个客户都具有服务时间窗约束,即车辆需在时间段[ei,li]内对顾客i进行服务。现假设每辆车都从配送中心出发,并在完成配送后返回起点,每辆车只能为一条配送路径服务,每个客户也只能被一辆车服务。现需安排合适的车辆路方案,以达到燃油车总运输成本最低的目标。

No.3

建立模型

设置参数和变量

0c7094830f75586f7b0b7fd7e7c3c184.png

建立模型如下:

1afd0c955c37a2c3d47f08bd44fd1306.png

式(1)为目标函数,为方案中总的运输成本;

式(2)表示每个客户点只能被访问一次;

式(3)表示每辆车最多只能服务一条路径,且需从配送中心出发;

式(4)表示每辆车经过每个节点的流守恒(到达j节点也就会从j节点出去,这里j不能为配送中心,本问题配送中心节点编号为0);

式(5)表示燃油车的配送任务总量不超过其最大载重量;

式(6)满足车辆从i(起点或者客户点)到达j的时间逻辑关系,此式中l0等同于大M的作用,因为默认数据中配送中心的右时间窗最大;

式(7)满足客户点i的服务时间窗要求

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值