Mindopt上新数据脱敏功能,方便外发数据

简介: V0.24.0版本的MindOpt优化求解器新增了数据脱敏功能,可以对输入模型文件进行数据脱敏。将优化问题中问题名、决策变量、约束条件名称这些和业务场景相关的数据进行脱敏变更,使得优化问题的数据仅保留看不出用途的数值信息,隐藏业务信息。方便外发数据去做技术可行性验证、方案咨询、测试等。

功能介绍

V0.24.0版本的MindOpt优化求解器新增了数据脱敏功能,可以对输入模型文件进行数据脱敏。将优化问题中问题名、决策变量、约束条件名称这些和业务场景相关的数据进行脱敏变更,使得优化问题的数据仅保留看不出用途的数值信息,隐藏业务信息。方便外发数据去做技术可行性验证、方案咨询、测试等。

数据脱敏可以称为数据的去隐私化,是对敏感数据进行修改或者转换的一种技术机制,在很大程度上能解决敏感数据直接在非可靠环境下使用的问题。比如在电商行业快递单上,会使用**号部分遮挡买家的个人信息,也能有效将数据脱敏,提供给外部使用。


优化建模文件中的主要敏感数据是业务的逻辑,比如优化问题名字、决策变量和约束条件名。业界的脱敏方案大致有这几种:无效化、随机值、数据替换、对称加密、平均值、偏移和取整。MindOpt求解器使用的是“数据替换”这一方案,顾名思义,数据替换就是设置一个虚拟值去替换真值。


如下表示意,脱敏前后的文件内容片段对比,脱敏前名称字符里面包含了业务逻辑,脱敏后信息都用固定的顺序数字来表示,删除业务逻辑,实现脱敏。

脱敏前

脱敏后

NAME AFIRO

ROWS

E ToTalR

E StaffR10

L WorkX05

L WorkX21

E WorkR12

E SkillR13

L SkillX17

L SkillX18

L SkillX19

L GenderX20

E GenderR19

E GenderR20

COLUMNS

CostX01 WorkX05 .301 R09 -1.

CostX02 SkillR13 -1.06 X05 1.

CostX03 SkillX18 -1. R09 1.

CostX04 GenderR20 -.4

NAME Prob0001 FREE

OBJSENSE

MIN

ROWS

N OBJROW

E R00000001

E R00000002

L R00000003

L R00000004

E R00000005

E R00000006

L R00000007

L R00000008

L R00000009

L R0000000A

E R0000000B

E R0000000C

COLUMNS

C000001 R00000003 0.301

C000002 R00000006 -1.06

C000003 R00000008 -1

C000004 R0000000C -0.4

使用方法

执行脱敏

MinOpt新增的脱敏功能是在命令行里面。  主要通过以下两个命令行参数调用:

  • sanitize :对模型文件中的敏感数据进行重命名脱敏。
  • undo_sanitize :对已脱敏后的模型文件进行反脱敏(恢复数据)。

在命令行 Terminal 或者 Notebook的Cell magic运行(增加感叹号!),可以看到接口说明。

用户可以根据文档指引下载本地运行版的安装包,安装到自己本机来运行数据脱敏。下载地址:https://help.aliyun.com/document_detail/298275.html

image.png


脱敏功能支持 .mps/.lp 以及对应的压缩文件(.bz2/.gz)的文件格式,我们可以用安装包examples中的模型文件afiro.mps作为例子,如下方式运行来实现脱敏。

mindopt <path/to/data>/afiro.mps --sanitize
#<path/to/data>为文件路径

比如云平台的Notebook中可以这样运行

!mindopt /home/jupyter/mindopt/0.24.0/examples/data/afiro.mps MaxTime=10800 SPX/MaxIterations=1000000000 --sanitize 


运行完成后,会输出结果的说明:

Reader started. File    : /home/jupyter/mindopt/0.24.0/examples/data/afiro.mps
Reader terminated. Time : 0.001s
ProbName sanitized.
Sanitized variables count   : 32
Sanitized constraints count : 27
File desensitized              : /home/jupyter/mindopt/0.24.0/examples/data/afiro_sanitized.mps
File Mapping                   : /home/jupyter/mindopt/0.24.0/examples/data/afiro_mapping.json

第1行:展示了读的是哪个文件

第6-7行:总结了模型有多少个变量,多少个约束。

第8-9行:脱敏完成,输出文件映射的地址,并在脱敏前文件的同级目录下生成脱敏后模型文件 afiro_sanitized.mps 和映射文件 afiro_mapping.json。

检查是否脱敏后数据

我们打开脱敏的优化问题文件 afiro_sanitized.mps,可以里面名称中的敏感信息是否已经被替换掉。命名规以R/C开头,十六进制整数递增就代表脱敏成功了,再检查没有其他问题就可以外发去测试了。

脱敏后的数据保留的数值还是原来的对应关系,不影响求解结果,比如我们用MindOpt运行脱敏后的文件:

mindopt afiro_sanitized.mps

运行后得到结果如下,与脱敏前运行结果一致。

image.png

反脱敏

脱敏时,生成的映射文件 afiro_mapping.json是用来后面恢复数据用的。此功能没有实际用途,主要是方便验证,请外发的时候不要发此映射文件。

这里我们打开映射文件 afiro_mapping.json查看一下映射关系,文件格式如下所示。如果脱敏前文件不包含模型名或模型名为空时,映射文件不展示 ProbName

image.png

这里我们可以把数据存在同一个目录,然后执行反脱敏命令:

!mindopt ./data/afiro_mapping.json --undo_sanitize

会得到如下输出示意:

./data/afiro_sanitized.mps
Reader started. File    : ./data/afiro_sanitized.mps
Reader terminated. Time : 0.000s
ProbName undo sensitized.
Undo sanitized variables count     : 32
Undo sanitized constraints count   : 27
File undo sanitized                : ./data/afiro_sanitized_sanitized.mps

运行后还原脱敏模型文件,生成afiro_sanitized_sanitized.mps文件。

运行afiro_sanitized_sanitized.mps文件结果与上文一致。

image.png


相关文章
|
6月前
|
人工智能 算法 调度
优化问题之如何选择合适的优化求解器
优化问题之如何选择合适的优化求解器
|
8月前
|
达摩院 Linux Docker
MindOpt APL 最新版本功能介绍,并且开放下载使用了!
MindOpt APL (MAPL) 是由阿里巴巴达摩院研发的国产建模语言,专长于电力SCUC等问题,提供向量化建模支持,可与Mindopt Studio平台集成。最新版2.4增加了向量化建模、Linux环境下通过pip安装支持以及改进了打印显示和错误提示。MAPL的向量化建模提高了效率,适合大规模问题。用户可通过云平台Docker打包或pip安装使用,支持多种求解器,包括MindOpt和开源求解器。
|
8月前
|
人工智能 算法 决策智能
MindOpt云上建模求解平台功能的简单介绍
MindOpt云上建模求解平台是阿里巴巴达摩院研发的一款“优化领域”的云平台。它结合了最新的算法研究和云技术,为用户提供了一个易于使用的界面和强大的后台计算能力。该平台支持广泛的优化问题,包括线性规划、整数规划、非线性规划和混合整数规划等。
|
8月前
|
达摩院 Linux 决策智能
阿里达摩院MindOpt优化求解器-月刊(2024年3月)
### MindOpt 优化求解器月刊(2024年3月) - 发布亮点:MAPL建模语言升级至V2.4,支持云上无安装使用和向量化建模语法。 - 新增功能:Linux用户可本地安装`maplpy`,并支持Python与MAPL混编。 - 实例分享:介绍背包问题的组合优化,展示如何在限定容量下最大化收益。 - 用户投稿:探讨机票超售时的最优调派策略,以最小化赔付成本。 - 加入互动:官方钉钉群32451444,更多资源及。 [查看详细内容](https://opt.aliyun.com/)
133 0
阿里达摩院MindOpt优化求解器-月刊(2024年3月)
|
8月前
|
达摩院 Linux API
阿里达摩院MindOpt求解器V1.1新增C#接口
阿里达摩院MindOpt求解器发布最新版本V1.1,增加了C#相关API和文档。优化求解器产品是求解优化问题的专业计算软件,可广泛各个行业。阿里达摩院从2019年投入自研MindOpt优化求解器,截止目前经历27个版本的迭代,取得了多项国内和国际第一的成绩。就在上个月,2023年12月,在工信部产业发展促进中心等单位主办的首届能源电子产业创新大赛上,MindOpt获得电力用国产求解器第一名。本文将为C#开发者讲述如何下载安装MindOpt和C#案例源代码。
251 3
阿里达摩院MindOpt求解器V1.1新增C#接口
|
8月前
|
达摩院 开发者 容器
「达摩院MindOpt」优化形状切割问题(MILP)
在制造业,高效地利用材料不仅是节约成本的重要环节,也是可持续发展的关键因素。无论是在金属加工、家具制造还是纺织品生产中,原材料的有效利用都直接影响了整体效率和环境影响。
「达摩院MindOpt」优化形状切割问题(MILP)
|
8月前
|
机器学习/深度学习 达摩院
阿里达摩院MindOpt优化求解器-月刊(2024年4月)
【摘要】2024.04.30,阿里云发布了MindOpt优化求解器的新商品和功能。MindOpt现在已上架,提供超低价零售求解器,支持按需购买,可在阿里云平台上直接购买联网或不联网License。新版本V1.2发布,提升MILP性能,并增加PostScaling参数。此外,MindOpt Studio推出租户定制版,正处于邀测阶段。同时分享了使用MindOpt解决二分类SVM问题的案例。更多内容,可访问相关链接。
168 0
|
5月前
|
达摩院 供应链 安全
光储荷经济性调度问题【数学规划的应用(含代码)】阿里达摩院MindOpt
本文介绍使用MindOpt工具优化光储荷经济性调度的数学规划问题。光储荷经济性调度技术旨在最大化能源利用率和经济效益,应用场景包括分布式光伏微网、家庭能源管理系统、商业及工业用电、电力市场参与者等。文章详细阐述了如何通过数学规划方法解决虚拟电厂中的不确定性与多目标优化难题,并借助MindOpt云建模平台、MindOpt APL建模语言及MindOpt优化求解器实现问题建模与求解。最终案例展示了如何通过合理充放电策略减少37%的电费支出,实现经济与环保双重效益。读者可通过提供的链接获取完整源代码。
|
5月前
|
达摩院 BI 索引
切割问题【数学规划的应用(含代码)】阿里达摩院MindOpt
本文主要讲述了使用MindOpt工具对切割问题进行优化的过程与实践。切割问题是指从一维原材料(如木材、钢材等)中切割出特定长度的零件以满足不同需求,同时尽可能减少浪费的成本。文章通过实例详细介绍了如何使用MindOpt云上建模求解平台及其配套的MindOpt APL建模语言来解决此类问题,包括数学建模、代码实现、求解过程及结果分析等内容。此外,还讨论了一维切割问题的应用场景,并对其进行了扩展,探讨了更复杂的二维和三维切割问题。通过本文的学习,读者能够掌握利用MindOpt工具解决实际切割问题的方法和技术。
|
5月前
|
达摩院 算法 安全
智慧楼宇多目标调度问题【数学规划的应用(含代码)】阿里达摩院MindOpt
本文探讨了使用MindOpt工具优化智慧楼宇的多目标调度问题,特别是在虚拟电厂场景下的应用。智慧楼宇通过智能化技术综合考虑能耗、舒适度等多目标,实现楼宇设备的有效管理和调度。虚拟电厂作为多能源聚合体,能够参与电力市场,提供调峰、调频等辅助服务。文章介绍了如何使用MindOpt云上建模求解平台及MindOpt APL建模语言对楼宇多目标调度问题进行数学建模和求解,旨在通过优化储能设备的充放电操作来最小化用电成本、碳排放成本和功率变化成本,从而实现经济、环保和电网稳定的综合目标。最终结果显示,在使用储能设备的情况下,相比不使用储能设备的情形,成本节约达到了约48%。