1-无监督学习求解旅行商问题(NeurIPS 2023)(未完)

文章目录

  • Abstract
  • 1 Introduction
  • 2 Our Model

Abstract

我们提出了 UTSP,一种用于解决旅行商问题 (TSP) 的无监督学习 (UL) 框架。 我们使用替代损失来训练图神经网络(GNN)。 GNN 输出一个热图,表示每条边成为最佳路径一部分的概率。 然后,我们应用本地搜索来根据热图生成最终预测。 我们的损失函数由两部分组成:一部分推动模型寻找最短路径,另一部分充当路径应形成哈密顿环的约束的替代。 实验结果表明,UTSP 优于现有的数据驱动的 TSP 启发法。 我们的方法既具有参数效率又具有数据效率:与强化学习或监督学习方法相比,该模型仅需要约 10% 的参数数量和约 0.2% 的训练样本。

1 Introduction

欧几里得旅行商问题 (TSP) 是组合优化界中最著名、研究最深入的 NP 难问题之一。 精确方法,例如 Concorde Applegate 等。 [2006],使用割平面方法,迭代求解 TSP 的线性规划松弛。 这些方法通常在分支切割框架内实现,将切割平面算法集成到分支定界搜索中。 虽然这些精确的方法可以为多达数万个节点找到保证最优的解,但执行时间可能非常昂贵。 另一种策略是使用启发式方法,例如 LKH Helsgaun [2000]。 这些启发式方法旨在找到接近最优的解,同时显着降低时间复杂度。 通常,它们是利用专家见解和特定领域知识手工制

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/58551.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在vue3项目中,如何正确定义不同类型ref变量的类型

Vue 3 引入了 Composition API,它使用 ref 和 reactive 等函数来创建响应式的变量。在 TypeScript 中,我们需要确保类型正确地反映这些变量的实际类型。 定义ref变量 下面是几个示例,展示了如何在 Vue 3 项目中使用 TypeScript 来定义 ref …

【CSS3】css开篇基础(5)

1.❤️❤️前言~🥳🎉🎉🎉 Hello, Hello~ 亲爱的朋友们👋👋,这里是E绵绵呀✍️✍️。 如果你喜欢这篇文章,请别吝啬你的点赞❤️❤️和收藏📖📖。如果你对我的…

net framework 3.5组件更新失败错误代码0x80072f8f怎样解决

浏览器地址栏输入www.dnz9.com远程解决netframework问题 当遇到.NET Framework 3.5 组件更新失败,错误代码为 0x80072f8f 时,可以尝试以下几种解决方法: 一、检查网络连接和时间设置 网络连接 错误代码 0x80072f8f 通常与网络相关问题有关。首…

STM32F103C8T6学习笔记2--LED流水灯与蜂鸣器

1、简要说明与电路图 LED灯与蜂鸣器都是GPIO的输出操作,给高低电平实现。GPIO操作也是后续操作的基础,没有什么难度,记不住寄存器没关系,只要把流程理清楚就可以了。 端口配置成推挽输出模式,高低电平均有驱动能力。 …

计算机网络网络层笔记

互联网提供的两种服务 1.虚电路服务 2.数据报服务 需要记住的是现在只用第二种也就是数据报服务 网际协议IP 物理层的中断系统:转发器(hub) 链路层的中断系统:交换机 网络层的中断系统:路由器 网络层以上:网关 如上图所示,网关是用来访问其他的网段的一个接口,网关的地…

commitlint+lint-staged+husky

步骤 1. 安装依赖 pnpm i -D husky lint-staged commitlint commitlint/cli commitlint/config-conventional 2. 初始化命令 npx husky init 3. 配置 // commit-msg,现npx husky add 添加指令已被废弃,手动添加 npx --no-install commitlint --edi…

大屏可视化:舞动数据与美观的“设计秘籍”

大屏可视化鉴赏:踏入软件系统产品设计之旅,让我们一同鉴赏那些闪耀在智慧农业、智慧园区、智慧社区及智慧港口等领域的大屏可视化杰作。每一帧画面,都是科技与创新的完美融合,数据跃然屏上,智慧触手可及。 >> 数…

持续基础怎么搞?Jenkins+Docker+Git实战

在如今的互联网时代,随着软件开发复杂度的不断提高,软件开发和发布管理也越来越重要。目前已经形成一套标准的流程,最重要的组成部分就是持续集成(Continuous Integration,CI)及持续部署、交付(…

EDA --软件开发之路

之前一直在一家做数据处理的公司,从事c开发,公司业务稳定,项目有忙有闲,时而看下c,数据库,linux相关书籍,后面跳槽到了家eda公司,开始了一段eda开发之路。 eda 是 electric design …

「Mac畅玩鸿蒙与硬件10」鸿蒙开发环境配置篇10 - 项目实战:计数器应用

本篇将通过一个简单的计数器应用,带你体验鸿蒙开发环境的实际操作流程。本项目主要练习组件的使用、事件响应和状态管理,帮助开发者熟悉基本的应用构建流程。 关键词 计数器应用组件操作事件响应状态管理HarmonyOS 应用开发一、创建计数器项目 1.1 在 DevEco Studio 中新建项…

串口通信以及USART和UART以及IIC和SPI-学习笔记

串行通讯与并行通讯 串行通讯是指设备之间通过少量数据信号线(一般8根以下)、地线以及控制信号线,按数据位形式一位一位地传输数据的通讯方式,串行通讯同一时刻只能传输一个数据位的数据,但通讯距离比并行通讯远、抗干…

window快捷键:window + v 打开剪切板历史记录 / 非常实用

一、剪切板历史记录功能介绍 1.1、window v 打开剪切板历史记录 / 文字、图片都可记录 1.2、window v 最近使用 1.3、window v 表情符号 1.4、window v GIF 1.5、window v 颜文字 1.6、window v 符号 二、欢迎交流指正

寻找专业在线微信投票和点赞服务团队攻略

在当今的社交网络时代,微信投票和点赞活动日益频繁,无论是企业评选、才艺比赛还是个人荣誉的角逐,都可能需要一定的投票和点赞支持。然而,要找到领先、高效、专业的在线微信投票和点赞服务团队并非易事。以下是一些关键步骤和注意…

115页PPT华为管理变革:制度创新与文化塑造的核心实践

集成供应链(ISC)体系 集成供应链(ISC)体系是英文Integrated Supply Chain的缩写,是一种先进的管理思想,它指的是由相互间提供原材料、零部件、产品和服务的供应商、合作商、制造商、分销商、零售商、顾客等…

HTML5和CSS3常见面试题

😊HTML5和CSS3常见面试题 1.HTML5有哪些新特性?2.你是如何理解语义化标签的?3.CSS3有哪些新特性?4.rem和em的区别是什么?5.如何实现自适应布局?6.清除浮动的方法有哪些?7.伪元素清除的原理是什么…

17. 从尾到头打印链表

文章目录 QuestionIdeasCode Question 输入一个链表的头结点,按照 从尾到头 的顺序返回节点的值。 返回的结果用数组存储。 数据范围0≤链表长度 ≤1000。 样例 输入:[2, 3, 5] 返回:[5, 3, 2] Ideas 直接遍历链表,然后倒序…

Games101 05~06 - Raterization 光栅化

1.Viewport Transformation视口变换: 1.1Canonical Cube 之前我们通过MVP矩阵把物体坐标变换到正方体中(每个顶点的x,y,z坐标都应该在-1.0到1.0之间)也被称为裁剪空间clip space,接下来我们需要将该空间映…

为Meta Spark准备3D模型

有许多工具可以帮助你为 Meta Spark Studio 创建 3D 对象,包括 Cinema4D、Blender 和 3ds Max。你还可以使用 Meta Spark Toolkit 优化 Blender 对象。 在本指南中,我们将介绍正确的设置,以便你可以成功地为 Meta Spark Studio 准备对象&…

shodan7,shodan参数使用,常用端口,Google语法

参数使用 alert shodan alert -h(查看帮助文档 这个就是怎么去配置ip监控)我们能在web页面上面去做,而且更加方便,所以就不多讲了 info shodan info(查看你查询的扫描的一些次数每个账户都是每个月有限制次数的)domain shodan domain(查询域名信息…

MATLAB/Simulink学习|在Simulink中调用C语言-04使用C Function 实现PI运算(使用模块自定义代码-仿真自定义代码)

在上一篇博客中,介绍了如何使用C Function 实现PI运算,但是在模块内编辑C代码,而不能直接调用已经写好了的C代码。 在Simulink中使用C Function调用自定义代码有两种方法,本篇博客介绍其中一种方法。 添加头文件和源文件 在实际…