科技刀|CMU开发实用工具Penrose,堪称图解界LaTeX,数学表达式一键变图( 二 )
文章图片
?
集合论:
文章图片
?
函数:
文章图片
看了该研究团队给出的demo之后 , 有人称赞道 , 「这款工具可能变革科学和数学交流 。 」
文章图片
还有人将其比作「科学图表界的LaTex」:
文章图片
那么 , 用户要怎么操作才能实现上述效果呢?
界面和基本功能
我们首先来看Penrose的界面 。
如下图所示 , 界面顶部是该工具的基本功能和选项 。
文章图片
左侧第一个下拉框:表示用户试图转化的数学公式所属的领域 , 上图示例显示的是「集合论」(settheory);
左侧第二个框:可供用户选择想要生成的图样式 , 上图选择的是维恩图(venn) , 用户可以点击该下拉框 , 选择自己喜欢的样式;
文章图片
右侧「run」按钮:点击该按钮 , 等待几秒 , 即可得到左侧数学内容所对应的图 。
只选择数学领域还不够 , 用户还需要在界面左侧填充数学内容 。 这里需要注意的是界面第二行的「sub」、「sty」、「dsl」按钮 。
Penrose的语言框架包含三部分:Domainschema(dsl)、Substanceprogram(sub)和Styleprogram(sty) 。
如下图所示 , 这三部分分别表示:
dsl:数学领域中可用的对象、关系和符号;
sub:填充数学内容;
sty:从数学表述到视觉表示 。
文章图片
用户可以逐个点击这些按钮 , 填充所需的数学内容 , 选择所需的视觉表示形式 。
高阶优化操作
说完了基本功能 , 我们再来看「优化」操作 。
右下方「resample」按钮:如果你对生成的图不满意 , 点击该按钮 , 即可重新生成图;
「autostep」按钮:实现图的自动生成 , 如果你想对图进行调整 , 只需禁用该功能即可 。
文章图片
UI界面中的优化过程 。
Penrose背后的技术
Penrose团队设计此工具的目标是:
以用户熟悉的方式表达数学对象;
系统不局限于固定的某些领域;
对相同的数学内容进行不同的可视化展示;
视觉复杂度方面不存在内在限制;
速度快 , 支持迭代工作流;
为制图所做的努力应该是可泛化和可重用的 。
基于以上目标 , 该团队制定了以下组织原则:
通过从数学对象到视觉图标的映射来规定图;
通过解决相关的约束优化问题来合成图 。
工作流程
下图展示了Penrose的工作流程:
文章图片
第一阶段:用编程语言指定数学对象和视觉表示
Penrose将数学内容与视觉表示分离开来 , 并使用language-basedspecification来提供该分离所需的抽象 。
如前所述 , Penrose为数学内容与视觉表示提供了两种不同的语言:Substance和Style 。
Substance借助精确的断言(assertion)来诠释标准的数学表述 , 参见下图示例:
- 科技一哥|荣耀30青春版图集赏析:触觉与视觉的完美享受
- 科技犬君|vs 索尼A9G 谁强?,上半年用户喜爱手机盘点;小米电视大师65英寸OLED
- 精选泛科技|结果如何?,一加8续航遭质疑:上半年最全机型横评出炉
- HAO懂科技|小米“神机”要来了?,小米正式“反击”!上下对折+骁龙865
- 阿拉图图科技说|而给华为仅仅是800万枚!,台积电为苹果准备8000万枚芯片
- 网罗说科技|三星note10一夜成“中端机”,还是256GB+3500mAh,三星扛不住了
- 科技数码迷|华为+荣耀别不报!入门级机型你们真没有Redmi良心
- 「小米科技」小米11Pro宣布新技术!首发骁龙875+屏下镜头,米粉:价格有点小贵
- 小熊科技|你会考虑吗?,三星顶级旗舰清仓!5G网络+45W快充+2k屏幕
- 简简科技|联想:国内同步上市,支持5G,界读丨摩托罗拉折叠手机Razr2曝光