TSP艺术及其制作方法

一、TSP 艺术欣赏

1.绳索?环?

如果您从远处观看,您会在浅灰色背景上看到一条打结的黑色绳索。如果您近距离观察,您会在黑色背景上看到一个白色环。

2. 两只手,一圈

远远看去,两只手刚刚断了联系。然而,从近距离看,它们之间的联系变得很明显。整个画面由一个黑色循环组成。

3.汤罐


4. 达芬奇曲线

5.乔治·丹齐格

George Dantzig (1914-2005) 是线性规划之父,也是求解线性规划最广泛使用的算法 Simplex Method 的发明者。1954 年,Dantzig 与 Ray Fulkerson 和 Selmer Johnson 一起发表了关于将大规模 TSP 实例求解到最优的方法的描述。

6. 连接进出

这是通过求解一个包含 1500 个城市的 TSP 实例构建了连续的线图。用白色墨水画了线(游览)。它将平面分为两个区域:In(红色)和 Out(黑色)。从远处看,这件作品就像一个交替的链接,一个由两根交错的绳子组成的结——一根红色,一根黑色。

7.红鱼黑鱼

这是另一件 TSP 艺术作品,其中曲线内部为红色,外部为黑色。

8. 外圈

请注意,“内”环实际上在外面。

9. 最近的、对称的、无标题的作品



二、如何制作 TSP 艺术

第1步:选择目标图像。

第2步:取下一些点。

第3步:连接点。

注意:

1. 步骤 2 和 3 产生欧几里得 TSP 实例。

示例中有 2006 个点。我们可以将这些点想象成城市。居住在其中一个城市的推销员需要在其他每个城市都访问一次,然后返回家中。推销员担心他对环境的影响,希望以能够最小化他的旅行总长度的顺序访问城市(因为这将最大限度地减少他消耗的燃料量和他的车辆排放的污染物量)。

请注意,虽然找到给定旅行的总长度很容易(我们只是将 2006 旅行段的长度相加),但要找到最佳旅行,即游览城市的最佳顺序,却是极其困难的。毕竟还有2005! 推销员可能参加的旅行!评估他们中的每一个是完全不可能的!

这个为推销员确定最佳行程的问题是“旅行推销员问题”(TSP)的一个例子,它是数学、计算机科学和运筹学中最著名和研究最充分的问题之一。实际上,我们在 TSP Art 中生成的 TSP 实例是欧几里得TSP 实例。(推销员可以“像乌鸦飞一样”旅行,所以他的旅行段的长度可以使用标准的欧几里得距离公式计算)。

2. 取点时要小心!

我们可以使用基于网格的方法。该方法很简单,但需要很多点才能产生像样的图片。(这些点往往会聚集在一起。) 2004 年, Craig S. Kaplan提出了使用 加权 Voronoi 点画的绝妙主意。使用加权 Voronoi 点画,需要的点要少得多。此外,由此产生的 TSP 之旅具有更加有机的外观。

3. 使用好的启发式算法!

强烈建议使用高质量的启发式算法,它倾向于产生非常高质量(即接近最优)的旅行。如果使用算法不当,可能发生如下情况:

4. 乔丹曲线定理。

欧几里得 TSP 实例有一个非常好的特性:保证它们的最优路径是闭合的简单曲线(循环)。乔丹曲线定理指出,平面中的任何简单闭合曲线都将平面分成两个区域:位于曲线内部的部分和位于曲线外部的部分。

但是要确定一个点是否在曲线内并不总是那么容易!比如下图中的红点是不是在曲线里面?

事实证明,答案是肯定的!

如何制作 TSP 艺术?相关推荐

  1. lua/cocos加载动画以及可以使用加载纹理的方式来替换图片并且加载个人制作的艺术字体(fnt字体)

    1.加载spine/json(ExportJson)骨骼动画 现在用的比较多 local spineAnim = sp.SkeletonAnimation:create("base/res/ ...

  2. 用 Python 制作一个艺术签名小工具,给自己设计一个优雅的签名

    生活中有很多场景都需要我们签字(签名),如果是一些不重要的场景,我们的签名好坏基本无所谓了,但如果是一些比较重要的场景,如果我们的签名比较差的话,就有可能给别人留下不太好的印象了,俗话说字如其人嘛,本 ...

  3. 艺术签名python_用 Python 制作一个艺术签名小工具,给自己设计一个优雅的签名...

    生活中有很多场景都需要我们签字(签名),如果是一些不重要的场景,我们的签名好坏基本无所谓了,但如果是一些比较重要的场景,如果我们的签名比较差的话,就有可能给别人留下不太好的印象了,俗话说字如其人嘛,本 ...

  4. python绘制自己的名字_用 Python 制作一个艺术签名小工具,给自己设计一个优雅的签名...

    生活中有很多场景都需要我们签字(签名),如果是一些不重要的场景,我们的签名好坏基本无所谓了,但如果是一些比较重要的场景,如果我们的签名比较差的话,就有可能给别人留下不太好的印象了,俗话说字如其人嘛,本 ...

  5. 如何使用mtPaint制作像素艺术和GIF动画

    如果有诸如Rescue先生和Do n't Be Patchman (世界上第一个,也是唯一的SteamOS独家)之类的独立游戏展示的一件事,那就是复古很热. 具体来说,像素艺术很热. 开发人员之所以喜 ...

  6. photoshop线条加粗_如何使用Photoshop和无滤镜制作线条艺术(像花钱一样)

    photoshop线条加粗 Printers have been using line tones to create rich looking images long before there wa ...

  7. 通过PS制作逼真艺术具有中国风格的工笔画效果照片

    感兴趣可加群:741090028,暗号:小螺号 领取工具和资料. 工笔画制作起来还是相当简单的,就是前期需要抠出人物,在这里给不会抠图的同学们敲黑板,抠图是一定要学会的哈,接下来用图层叠加及滤镜转为素 ...

  8. PS——用火焰滤镜 ,制作火焰艺术字体特效

    1.首先用photoshop cc2015新建一个黑色的文档,大小可以根据自己的需要来设置. 2.使用文字工具输入自己需要的文字,建议选择比较窄的字体. 3.在文字图层上右击,选择创建工作路径命令. ...

  9. python3 获取文件修改时间_ps无痕改字修改手写字文件改截图数字时间日期图去水印:制作鲜花装饰艺术文字图片效果的PS教程...

    P图改字微信支持: 秋天颜色是特别的美丽,黄色.红色和金色,以及之间的. 本教程将向您展示如何使用Photoshop的图层样式,滤镜来创建闪烁的秋季金色的文字效果,推荐过来给朋友学习,希望大家可以喜欢 ...

最新文章

  1. Delphi 2010 新增功能之: IOUtils 单元(4): TDirectory.GetDirectories
  2. Ubuntu 中python 升级到3 后apt-get 一直报错
  3. python 打包成exe 1053_Python程序打包成exe的一些坑
  4. 小米岭南通服务器维护,小米岭南通交通联合卡内测开启
  5. Oracle数据文件scn不一致,数据文件SCN的一致性问题
  6. 关联表多数据的批量insert (批量导入,测试19W条数据用时46秒)
  7. 客房预订+餐饮预订+酒店app+移动端通用版电商app模板+Axure高保真酒店预订管理系统+积分商城+餐饮预订系统+优惠券+订单管理+移动端酒店管理原型+酒店电商原型
  8. mysql库表的触发器表名_MySQL 触发器,实现不同数据库,不同表名,表结构不同,数据实时同步...
  9. 站立会议05--个人进度
  10. Redis(九)-Redis的常用数据类型之Hash表
  11. 从零开始iOS8编程【HelloWorld】
  12. 程序员如何学习Hadoop大数据培训
  13. RecyclerView点击某个条目保持选中
  14. win7空文件夹删不掉的原因及解决方法
  15. 美国电话号码正则表达式
  16. 数据库根据经纬度查询离我最近的数据
  17. visio绘图小技巧
  18. 面试题大全1-javaSE部分-JavaEE框架中间件
  19. 移动端适配 postcss-pxtorem插件使用
  20. TCP UDP之网络编程及数据库入门

热门文章

  1. qt服务器项目总结报告,ea项目总结报告-20210805131110.docx-原创力文档
  2. request+python : shuold be true判等的问题
  3. 电脑无法识别启动盘 不显示启动盘 wintogo WTG 移动硬盘盒+m.2等等
  4. C++ 常用生僻函数小记
  5. 星光不问赶路人,时光不负有心人。
  6. MSBUILD : error MSB4132: The tools version “2.0“ is unrecognized. Available tools versions are “4.0“
  7. php限定符实例,PHP正则表达式限定符说明
  8. jvm-sandbox实战之编写简单案例
  9. 3dsmax2014插件开发之环境搭建
  10. 图标设计五条黄金法则