中国邮政员问题

中国邮政员问题CPP(Chinese Postman Problem)

问题描述

\(给定一个连通图G,每边e有非负权,要求一条回路经过每条边至少一次(环游),且满足总权最小。\)

问题分析

\(根据G是否为欧拉图可分为两种情况:\)
\(1. G是欧拉图,则G的任意欧拉回路都是最优解;\)
\(2. G不是欧拉图,则G的任意环游必定通过某些边多次,将多次通过的边e(u,v)的两端点再连一条重边,边权为w(e)。\)
\(则CPP问题等价于:\)
\((1)用添加重边的方法求G的一个欧拉赋权母图G^*,满足\min \sum_{e\in E(G^*)-E(G)} w(e)\)
\((2)求出G^*的欧拉回路\)
\(简单来说,如果G是欧拉图,那么找任意一条欧拉回路即可;若G不是欧拉图,就通过加边让G变成欧拉图。解决CPP问题就是要找出一种最优的加边方案。\)
\(根据我国管梅谷先生的奇偶点图上作业法可知,非欧拉图向欧拉图转化实质上是奇点之间的两两匹配,由基本图论知识可知一个简单图的奇点有偶数个,可用二分图最小权匹配解决。\)

posted @ 2022-11-07 20:35  nofind  阅读(32)  评论(0编辑  收藏  举报