咨询电话:400-123-4567

— 新闻中心 —

联系我们/ CONTACT US
全国免费客服电话 400-123-4567
新城娱乐智能水表服务商

邮箱:admin@youweb.com

手机:13800000000

电话:400-123-4567

地址:广东省广州市天河区88号

您的位置: 首页 > 新闻中心 > 技术文献

技术文献

常用的大规模的优化问题解决方法都有哪些?

发布时间:2024-05-06 04:53:29 人气:

目前的很多凸优化问题都有现成的可靠算法来进行,也有很多库可以直接拿来用。但是对于大规模的运算好像没有找到比较好的解决方法。希望能问一下大家目前这方面的常用方法和思路都有哪些呢?

目前我具体遇到的问题是: 正在尝试一个算法,然而最后归出的线性规划问题,约束矩阵过于庞大以至于无法在电脑上生成,也就没有办法求解了。但是我想在实际运用中应该会有不少类似于这样的问题吧?尤其是需要训练大量数据集的情况下。
希望能得到有经验的前辈指点~~谢过!

问题补充:obj func:
min |u|1
st. Au <=D
其中A的维度为2000*16000000的矩阵(即2k个约束,1600w个变量),u为16000000*1,D为2000*1。 可以看到,A矩阵过于庞大。。没有办法创建然后丢进算法包里计算

普通算法有列生成算法、分支定价法,他们都有一定的限制条件。现在还有一些启发式算法用得比较多,例如遗传算法等。

硬翻的:quora.com/How-can-you-s

大型组合优化是一个困难的领域,而您的问题在这个困难的领域中是一个困难的问题。

通常,组合优化有几种方法:

1.贪婪的方法:大多数时候,您都不在乎全局最优解,在这种情况下,贪婪就可以了。在实践中,有许多方法可以设计性能合理的贪婪算法。

2.启发式方法。“更智能”的贪婪算法。如果您具有领域知识,它们将对您有所帮助。

3.放松。组合优化之所以很难,是因为它是非凸的。如果您将其放宽到凸问题,则可以使用大量优化算法在多项式时间内求解它(请参阅《非线性编程》)。

在您遇到的问题中,可行集不是凸集,因为它们是离散的(尽管它们很容易放松)。但是,您选择一个点并将其值设置为c> b,因此该函数本身不是凸的。即使您非常接近P *,也没有知识指导您转向最佳解决方案。据我所知,我没有解决这个问题的好方法。可能有一些大师可以做到这一点。

我的回答:对于您的特定问题,除了蛮力之外,别无其他方法。
为什么要解决这个人为制造的难题?

亚马逊排名优化除了listing标题和五点描述优化外,产品排名的提升还和以下因素有关,想要提升亚马逊产品排名单单依靠优化listing是远远不够的,,所以让我们来概述一些可以用来提高销售排名和总体销售的步骤。

1、选择FBA:使用FBA意味着你需要事先准备产品并运送到亚马逊物流中心。FBA的listing同时符合Prime资格,因此亚马逊的A10算法可以使你的排名更靠前。

2、产品质量:如果你始终如一地销售同类产品中质量最好的,那么消费者会注意到的。他们已经准备好并愿意为他们认为质量更好的产品支付额外的钱。

3、库存量:如果你的库存是空的,消费者不可能购买产品。如果他们不能购买该产品,那么该产品就不能与同类产品竞争,也就没有销售排名。除了保持库存充足之外,还有更多动机,但主要因素之一是库存如何影响销售排名。

4、搜索词:你需要研究一些搜索词数据,使用谷歌趋势或亚马逊零售分析会有很大帮助。寻找特点搜索词的点击率,让你知道消费者输入最多的是什么,然后应用起来。不要点击别人的产品,这样做只会增强他们的搜索数据,并让他们知道他们所做的是有效的。记住,静静地“潜伏”在幕后。

5、价格:如果你想排名靠前,你需要有竞争力的价格。在短期内降低你的利润率,你可能会提高你的亚马逊销售排名在长期。

6、Review:这种方法需要更长的时间才能看到结果,但是建立了一个强大的基础。尽可能多地获得好评,这样人们就能看到你的产品是否值得购买。市面上有大量索评软件如FeedbackExpress可以为你提供帮助。

获得大量好评应该是你的一个目标,而不仅仅是提高产品在亚马逊上的销售排名。它在社区中建立了信任,提高了你的声誉,这两点在亚马逊买家购买产品时对你很有帮助。

全文字数:2255字

阅读时长:约6分钟

文章作者:Nina(微信:ninaclasses)


【近期动态】

最近,阅读了海蓝博士的《不完美,才美》,书中有特别多触动到我的点,我将分不同的专题,和大家一起分享~


海蓝博士在书中分享到:“因为许多人不明白,其实控制人的行为最强大的东西,第一是本能,第二是情绪和欲望,第三才是道理。

很多人都习惯于给别人“讲道理”,主观地认为,只要不停“讲道理”对方就能够明白并且改变自己的行为,殊不知其实控制人的行为最关键的要素是“自身本能”以及“自我情绪和欲望”,最后才是客观道理。

海蓝博士的这段分享,对我而言简直就是“当头棒喝”。因为,我就是特别容易“讲道理”的人。

我对孩子们的教育非常上心,以往在和孩子们相处的过程中,我总是“苦口婆心”给孩子们“灌输”一大堆道理,好像潜意识总在告诉自己:只要我“说说说”,孩子们总会是“听进去”的。

以上这种行为的另一面就是:如果我不说,可能就会发生我不希望发生或者看到的事情。

也因此,我们家孩子从小就会非常礼貌地回应我:“嗯,好的”、“我知道了”、“我记住了”。

是否是真的知道了,明白了?只有当真的出现不可预知的情况之时,才能被验证出来。

事实往往就是,孩子们就是“答应你了”,然后,就没有然后了。

其实道理也很简单,因为我讲的所谓的“道理”是真的在理,但孩子们没有经历过,事情也并未发生,他们对没有触碰到的事物、没有经历过的事情完全没有觉知。

道理我相信经过长年累月思想上的“洗礼”,该明白的,都是能够明白的。但是否真正掌握并且能够采取对应的反应措施,还是得实践出真知。

所以,如何更好地引导孩子们,我与其给他们“讲道理”,倒不如带他们好好感受生活、感受世界。

除了与安全、品行道德有关的原则性问题不能触碰红线以外,其余的,该磕磕碰碰的,就让他们“碰一碰”“跌一跌”。

只有当他们本能上意识到,“这不行”“那可以”,这种生活的经验才是属于他们自己的。

岸见一郎先生在《被讨厌的勇气》一书中分享到:成长,本就是孩子自己面对的人生课题。

我们很多时候都习惯用我们自己的经验和阅历,去剥夺孩子们自我探索和发现的机会。孩子们该自己去面对的,应该还给他们,由他们自己去负责。

就好比“陪娃做作业”这件事情,由于父母的过度焦虑,而往往会让孩子们只意识到“我只是需要按要求完成作业”,而并非真正明白“学习是自己的责任”。

其实我发自内心觉得,让孩子们真实看到自己错题上的“红叉”,以及卷面不太理想时老师们的评语,是一种非常好的成长经验。

我读书的时候,每次大小考试都会“放榜”,公布全年级1500+学生的成绩与排名。

面对“皇榜”,我们所有学生都是带有期待的心情,而不是害怕自己的成绩被别人看见因而会想不开。

考得理想的学生,自我信心会更强;考得暂时不理想的学生,会瞄准下次想提升的名次,好好加油努力,在下一次考试“扳回一局”。

其实这才是人内心真正的内驱力本能反应。

而我们现在因为“过度保护”,总认为一些事情会伤害到孩子们的自尊心和自信心,同时也把这种信号释放传递给到孩子,让孩子们的抗挫能力逐步下降,导致非常容易形成心理扭曲以致产生心理问题。

正确的做法应该是,让孩子们自己明白自己的位置以及即将需要付出的努力与行动。

试想一下:我们现在可以避免孩子们在学校“不受打击”,但难道走进社会之后,还可以对有形无形的竞争“避而远之”吗?

既然怎么样都“逃避不了”,那我们就需要强化孩子自身的本能反应以及帮助他们建立良好的情绪和欲望管理。

“讲道理”达不到的效果,可以由激发内在的行为动机和动力来实现。

我们的人生、孩子们的人生,需要我们真真实实、靠自己的力量,勇敢地走下去。

要想引导和优化他人的行为,先学会帮助他人强化“自我本能”与“情绪欲望管理”:

1.【学会抛弃“讲大道理”】:当自己很想给他人“讲道理”的时候,先自我暗示一下,把“讲道理”的冲动缓下来。取而代之的是倾听对方的想法,了解他内心的需求、取向以及行为动机。学会不带“有色眼镜”先入为主评判他人很重要,只有“不预判”,我们才不会使用“道理”去“征服”他人。

2.【懂得珍惜“合适机会”】:在生活、学习以及工作的实际场景当中,我们会有很多的学习与实践机会,对于我们自身以及身边的人都需要懂得抓取合适的机会做好引导。这里的关键点在于,不是要自己或者身边的人马上改变行为或者状态,而是要从思想上、本能上意识到我这样做的原因,以及换一种方式可能会带来的不同结果。我们完全可以借助“好机会”选择不一样的路径,只要你放得下自己的“执着”与“顽固”,敢于接受新的方式和方法。

3.【一切遵从“客观规律”】:有些事情并不是我们不作为或者主观回避,这件事情就可以永远不涉及,就像上文我所提及的“成绩放榜”的例子。每个人都需要建立起自己强大的内心以及抗错能力,具备“逆商”非常重要,因为我们永远无法准确预判即将到来的会是什么样的事情、即将面临的会是什么样的结果。只有在人生道路当中,需要我们直面的、需要我们勇敢站出来应对的,我们都通通“经历一遍”,那我们就会成长起来,这是我们自己给到自己的勇气与坚定,这也是成长的客观规律。如若回避了,只会给自己和他人的成长设置了一道隐形屏障,以为自己能够透过屏障看到似乎清晰的前方,却发现始终不能冲出去,反复尝试之后走不出困境便会自我放弃。我们应该杜绝并抛弃这种想法和做法,好好遵从客观规律,该来的、该面对的,终归是要自己走下去的。

你也曾经讲过“大道理”吗?一起来聊聊如何更好地发挥本能发应优化调整自我和他人的行为~

编辑器内的简单命令

stat FPS // 只显示FPS和延迟

stat unit // 追加了GPU渲染时间等变量

stat unitgraph // 追加了图表显示


编辑器内调试GPU渲染用的高级命令

ProfileGPU // 详细显示当前GPU的渲染工作占比


编辑器外,最详细记录你的所有性能表现的工具——Unreal Insights Unreal Insights

打开 工具->Unreal Insights

打开 Unreal Insights 左下角auto-start

运行Standalone游戏,开始记录性能日志


1、层级关闭调优

整理归类各个地图对象,通过打开/关闭各个类别的对象, 这种方法可以大概识别最占性能的对象位置

2、光照调优

1. 少用动态光,尽量用静态光并调整光照影响范围

2. 调整光照的最大可见距离

下面这两个,如果设置为MaxDrawDistance为3000,FadeRange为500,则意味着光源会在你进入他的3500距离时开始被逐渐渲染,FadeRange代表着渐入效果,而你离开这个距离以后,这个光就完全不被渲染,也就不产生性能消耗

**调试方法:**

优化视图模式?光照复杂度

3、减少四边形过度绘制

核心:在不同的距离显示不同的复杂度

**为模型设置LOD:**

打开网格体勾选自定义LOD选项

添加几个LOD层级(3个到4个)

为每个LOD层级定义好相关属性

**为特效设置LOD:**

在不同的距离显示不同的粒子数*写一个计时器,

让环境特效只在玩家靠近一定距离再显示设置特效LOD

**调试方法:**

优化视图模式?四边形过度绘制,查看当前存在过度绘制的网格体或者特效,并进行优化着色细节层级模式?网格体LOD,查看当前所有存在LOD的网格体

### 3. 调整你的纹理

1. 纹理的大小要是2的幂次方,例如512,1024,2048

2. 别用太大的纹理

**调试方法:**

优化视图模式?所需纹理分辨率

点击你想要调试的网格体,再在纹理(场景选择)中,选择你要查看的纹理

4、合并网格体

对于包含很多网格体Actor的复杂静态场景,而且每个actor还不一样,可以考虑合并这些网格体为一个大网格体以提升性能。

5、使用Instanced Static Mesh组件

对于大量重复的的actor,可以使用instanced static mesh组件而不是static mesh组件,可以提升性能。

Instanced Static Mesh Component (ISMC) 和 Static Mesh Component (SMC) 都是 Unreal Engine 5 中用于渲染静态网格模型的组件,但它们之间有几个区别:

1. 资源使用:ISMC 允许在场景中使用少量的网格实例来渲染大量的相同几何体,而 SMC 则需要为每个独立的几何体创建一个单独的 Static Mesh Asset。因此,ISMC 可以显著减少资源的使用。

2. 性能:由于 ISMC 只需要绘制少量的网格实例,因此可以显著提高渲染性能,特别是在需要渲染大量相同几何体的情况下。SMC 则需要绘制大量的独立几何体,因此在这种情况下性能可能会受到限制。

综上所述,ISMC 和 SMC 都有各自的优势和适用场景。如果需要渲染大量相同几何体,并且需要在运行时动态修改实例属性,那么使用 ISMC 可能是更好的选择。如果需要渲染少量独立几何体,或需要使用不同的材质和纹理等独立设置,那么使用 SMC 可能更合适。

标签: 我们 需要

相关推荐

在线客服
服务热线

服务热线

tel:400-123-4567

微信咨询
新城娱乐智能水表服务商
返回顶部
X新城娱乐智能水表服务商

截屏,微信识别二维码

微信号:weixin888

(点击微信号复制,添加好友)

  打开微信

微信号已复制,请打开微信添加咨询详情!

平台注册入口