import pandas as pd
import numpy as np
import re
from typing import Tupledef curve_score(value: float, spec_range: Tuple[float, float], weight: float,min_score: float = 0.0,base_curvature: float = 2.0,narrow_range_coeff: float = 5.0
) -> float:lower, upper = spec_rangeif lower <= value <= upper:return 1.0# 计算规格宽度和边界if lower == -np.inf and upper == np.inf:return 1.0elif lower == -np.inf:spec_width = abs(upper) * 2 if upper != 0 else 1bound = upperelif upper == np.inf:spec_width = abs(lower) * 2 if lower != 0 else 1bound = lowerelse:spec_width = upper - lowerbound = lower if value < lower else upper# 标准化距离distance = abs(value - bound)if spec_width == 0:distance_ratio = distance / (abs(bound) + 1e-6)else:distance_ratio = distance / spec_width# 动态曲率(基础曲率×权重×窄化系数)if spec_width > 0:narrow_coeff = 1 + narrow_range_coeff / (spec_width + 1)else:narrow_coeff = 1 + narrow_range_coeffdynamic_curvature = base_curvature * weight * narrow_coeff# 严重偏离额外惩罚if distance_ratio > 0.5:distance_ratio = distance_ratio ** 1.5return max(min_score, np.exp(-dynamic_curvature * distance_ratio))def dynamic_filter_sort(predictedDF, target_spec, weights):mask = pd.Series(True, index=predictedDF.index)filtered_df = predictedDF[mask].copy()score = pd.Series(0.0, index=filtered_df.index)for col, cond in target_spec.items():col_values = filtered_df[col].astype(float)weight = weights.get(col, 1.0)# 给窄范围spec加隐性权重(可选,根据需求开启)if '-' in cond:low, high = map(float, re.fullmatch(r'^(-?\d+\.?\d*)-(-?\d+\.?\d*)$', cond).groups())spec_width = high - lowif spec_width < 10: # 范围宽度<10判定为窄范围weight *= 1.2 # 隐性权重系数# 条件处理if '-' in cond:spec = (low, high)normalized = col_values.apply(lambda x: curve_score(x, spec, weight=weight))score += normalized * weightelif cond.startswith('lt('):ceiling = float(cond[3:-1])spec = (-np.inf, ceiling)normalized = col_values.apply(lambda x: curve_score(x, spec, weight=weight))score += normalized * weightelif cond.startswith('gt('):floor = float(cond[3:-1])spec = (floor, np.inf)normalized = col_values.apply(lambda x: curve_score(x, spec, weight=weight))score += normalized * weightelse:try:target_val = float(cond)except ValueError:target_val = condspec = (target_val, target_val)normalized = col_values.apply(lambda x: curve_score(x, spec, weight=weight))score += normalized * weightfiltered_df['score#'] = round(score, 3)return filtered_df.sort_values('score#', ascending=False)# 业务代码(无需修改,直接使用)
data_df = pd.DataFrame(np.array(result['specMatrix'])[recipe_index,:].reshape(1,-1),columns=result['maxMatrix'].keys()
)
target_spec = {'Depth': '1100-1300', 'SOCremain': '0-500', 'SiNSWA': '86-89', 'TCD': '21-22','doubleslope': '0-1', 'maskremain': '2201.8-2833.7'
}
weights = {'Depth': 3, 'SOCremain': 1, 'SiNSWA': 1, 'TCD': 3, # 可根据需要调整为3.5'doubleslope': 2, 'maskremain': 1
}data_df = (-dynamic_filter_sort(data_df, target_spec, weights)['score#'].values[:]).tolist()
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/954755.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!相关文章
2025年北京合同纠纷律师事务所权威推荐榜:专业律师团队与高效解决方案口碑之选
2025年北京合同纠纷律师事务所权威推荐榜:专业律师团队与高效解决方案口碑之选
在当今复杂多变的商业环境中,合同纠纷已成为企业运营中最常见的法律风险之一。根据行业数据显示,合同类案件在商事纠纷中的占比持续攀…
SQL - JOIN 中关联条件和过滤条件的执行顺序
SQL - JOIN 中关联条件和过滤条件的执行顺序 SELECT a.id, a.class, b.type
FROM table1 AS a
LEFT JOIN table2 AS bON a.id = b.idAND a.class = AAND b.type = B;以上SQL语句在执行时是先用id关联生成数据集再用条件…
解析国标GB28181算法算力平台EasyGBS视频分发与按需直播关键技术,实现海量视频的高效触达
解析国标GB28181算法算力平台EasyGBS视频分发与按需直播关键技术,实现海量视频的高效触达在视频监控领域,将前端设备的海量视频流高效、稳定、低延迟地分发给各式各样的终端用户,是平台核心价值的最终体现。基于国标…
KubernetesClient-C
KubernetesC-SDK
告诉编译器:“这些函数是 C 写的,别给它们加花哨的 C++ 名字修饰,用纯 C 风格导出。”extern "C" {
#include <kubernetes/config/kube_config.h>
#include <kubernetes/api/Co…
2025年微型减速机工厂权威推荐榜单:蜗轮蜗杆减速机/小齿减速机/谐波减速机源头厂家精选
在工业自动化与精密传动领域,微型减速机作为动力传输的核心部件,其传动精度与运行可靠性直接关系到整个设备系统的性能表现。高品质微型减速机能够实现精准传动,将传动效率提升至85%-95%,同时将噪音控制在45分贝以…
2025 年同步时钟厂家最新推荐榜,聚焦技术实力与市场口碑深度解析,涵盖卫星北斗 GPS 授时安全领域授时安全/授时防护/信号安全/时空安全同步时钟公司推荐
引言
近日,行业权威协会发布 2025 年同步时钟产品测评报告,本次测评历时 3 个月,覆盖全行业主流品牌,从技术实力、产品性能、市场口碑、服务体系四大维度设置 28 项细分指标。其中技术实力权重占比 35%,重点考核核…
关于combinational and sequential parts of an fsm described in same always block ,spyglass警告
关于combinational and sequential parts of an fsm described in same always block ,spyglass警告combinational and sequential parts of an fsm described in same always block ,这个莫名其妙的警告。
主要原因…
2025年云南好的旅行社公司权威推荐榜单:云南青年旅行社/云南正规的旅行社/云南省十大旅行社源头公司精选
据2025年云南省旅游服务质量测评数据显示,云南旅行社市场年服务游客量超百万人次,其中高品质定制游需求同比增长25.8%,游客满意度成为衡量服务商的核心指标。
在云南旅游市场持续升温的背景下,专业、规范、注重体验…
记录一次数据恢复,mysql8 - 义美
SHOW VARIABLES LIKE log_bin_basename;
Variable_name Valuelog_bin_basename E:\environment\mysql-8.0.41-winx64\data\binlog
SHOW MASTER STATUS;
File Position Binlog_Do_DB Binlog_Ignore_DB Executed_Gtid_Se…
2025年新能源水冷电机壳铝合金浇铸机批发厂家权威推荐榜单:户外围墙配件铝合金浇铸机/厨具锅铝合金浇铸机/手套模具铝合金浇铸机源头厂家精选
在新能源汽车产业快速发展的推动下,新能源水冷电机壳铝合金浇铸机以其高达95%的成品合格率和每分钟300mm的浇铸速度,正成为电机壳制造领域的核心设备。
新能源水冷电机壳作为电动汽车驱动系统的关键部件,其制造工艺…
2025年耐高温的轴承制造商权威推荐榜单:轴承耐高温源头/高速耐高温轴承/耐高温高速轴承源头厂家精选
在冶金、航空航天、化工等高端制造领域,耐高温轴承作为关键基础零部件,其热稳定性和可靠性直接关系到整套设备在极端环境下的运行效能。高性能耐高温轴承能够在1500℃的极端环境下保持稳定工作,将设备维护周期延长2…
Chef:开源 AI 全栈应用构建工具实践
Chef 是 Convex 推出的开源 AI 应用构建工具,能根据自然语言生成包含数据库、认证和实时功能的完整全栈应用。通过类型安全开发循环实现自动错误修复,解决传统 AI 工具只能生成前端代码的问题,适合快速原型开发。一…
2025年哈尔滨发动机维修保养权威推荐榜单:汽车维修/汽车保养/变速箱维修保养服务商精选
在哈尔滨汽车后服务市场,发动机作为车辆的“心脏”,其维修保养质量直接关系到车辆的使用寿命、性能表现及燃油经济性。行业数据显示,定期进行专业发动机保养可提升5%-10% 的燃油经济性,并显著降低故障发生率。本文…
2025 年 11 月阻燃石墨,膨胀石墨,导热石墨母粒厂家最新推荐,产能、专利、环保三维数据透视!
引言
随着新能源、电子信息等领域对阻燃石墨,膨胀石墨,导热石墨母粒需求的持续增长,市场对优质石墨产品的筛选标准愈发严格。本次推荐榜单依托行业协会最新测评数据,从产能规模、专利技术、环保合规三大核心维度展…
2025 年 11 月石墨烯,可膨胀石墨,导热石墨母粒厂家最新推荐,产能、专利、环保三维数据透视!
引言
近期,行业协会针对石墨烯、可膨胀石墨、导热石墨母粒领域开展专项测评,通过产能规模、专利技术、环保合规三大核心维度,对近百家企业进行数据核验与实地考察,最终筛选出综合实力突出的优质厂家。本次测评采用…
[CSP-S 2025] 社团招新 / club题解
题目(仅针对luogu上传的题)
P14361 [CSP-S 2025] 社团招新 / club(民间数据)
题目背景
民间数据测试强度可能偏弱。
题目描述
小 L 是学校算法协会的成员。在今年的学校社团招新中,小 L 一共招收了 \(n\) 个新成员…
La Suite Docs:开源协作文档平台,可私有部署的 Notion 替代方案
法国政府开源的企业级协作文档平台,GitHub 14.3k star。基于 Django+React 开发,支持实时协作、离线编辑、AI 辅助写作,可私有部署,是 Notion 的开源替代方案。💡 从一个真实需求说起
团队想搭建知识库,Notion …
Cisco Jabber 15.1 (Andriod, iOS, macOS, Windows) - 面向企业的多合一通信工具
Cisco Jabber 15.1 (Andriod, iOS, macOS, Windows) - 面向企业的多合一通信工具Cisco Jabber 15.1 (Andriod, iOS, macOS, Windows) - 面向企业的多合一通信工具
即时消息、语音和视频通话、语音邮件、桌面共享、会议…
Shotcut 25.10 (Linux, macOS, Windows) - 免费开源视频编辑器
Shotcut 25.10 (Linux, macOS, Windows) - 免费开源视频编辑器Shotcut 25.10 (Linux, macOS, Windows) - 免费开源视频编辑器
free, open source, cross-platform video editor
请访问原文链接:https://sysin.org/blo…