当前位置: 首页 > wzjs >正文

wordpress电影资讯wp博客seo插件

wordpress电影资讯,wp博客seo插件,广州哪里能做英文核酸,莱芜都市网征婚之前在 FastAPI介绍-CSDN博客 中介绍过FastAPI,在 Pyomo中线性规划接口的使用-CSDN博客 中使用Pyomo解决饮食问题,这里将两者组合,即FastAPI在服务器端启动,通过Pyomo实现线性回归;客户端通过浏览器获取饮食的最优解。…

      之前在 FastAPI介绍-CSDN博客 中介绍过FastAPI,在 Pyomo中线性规划接口的使用-CSDN博客  中使用Pyomo解决饮食问题,这里将两者组合,即FastAPI在服务器端启动,通过Pyomo实现线性回归;客户端通过浏览器获取饮食的最优解。

      这里服务器端的diet.json是已存在的,后期调整为从客户端传过来,以及其它可变参数也从客户端通过json格式传给服务器端。

      实现如下:

from fastapi import FastAPI
from pyomo.environ import *
import mathdef parse_json(file):model = ConcreteModel()data = DataPortal()data.load(filename=file)model.F = Set(initialize=data['sets']['F'])model.N = Set(initialize=data['sets']['N'])model.c = Param(model.F, initialize=data['params']['c'], within=PositiveReals)def parse_a(model, food, nutr):return data['params']['a'][food][nutr]model.a = Param(model.F, model.N, initialize=parse_a, within=NonNegativeReals)model.V = Param(model.F, initialize=data['params']['V'], within=PositiveReals)model.Nmin = Param(model.N, initialize=data['params']['Nmin'], within=NonNegativeReals, default=0.0)def parse_Nmax(model, nutr):val = data['params']['Nmax'][nutr]return val if val != "inf" else math.inf model.Nmax = Param(model.N, initialize=parse_Nmax, within=NonNegativeReals)model.Vmax = Param(initialize=data['params']['Vmax'], within=PositiveReals)return modeldef linear_programming_diet(file, number):model = parse_json(file)model.x = Var(model.F, within=NonNegativeIntegers)model.y = Var(model.F, within=Binary)model.cost = Objective(expr=sum(model.c[i]*model.x[i] for i in model.F), sense=minimize)def nutrient_rule(model, j):value = sum(model.a[i,j]*model.x[i] for i in model.F)return inequality(model.Nmin[j], value, model.Nmax[j])model.nutrient_limit = Constraint(model.N, rule=nutrient_rule)def volume_rule(model):return sum(model.V[i]*model.x[i] for i in model.F) <= model.Vmaxmodel.volume = Constraint(rule=volume_rule)def select_rule(model):return sum(model.y[i] for i in model.F) == numbermodel.select = Constraint(rule=select_rule)def linking_upper_rule(model, f):return model.x[f] <= model.y[f] * 1e6model.linking_upper = Constraint(model.F, rule=linking_upper_rule)def linking_lower_rule(model, f):return model.x[f] >= model.y[f]model.linking_lower = Constraint(model.F, rule=linking_lower_rule)solver = SolverFactory('glpk')results = solver.solve(model)if results.solver.termination_condition != TerminationCondition.optimal:return {"result":"no optimal solution"}results = {}results["total const"] = f"{value(model.cost):.2f}"foods = {}count = 0for f in model.F:v = int(value(model.x[f]))if v != 0:foods[f] = vcount += 1results["selected food"] = foodsif count != number:return {"result":"solution result is wrong, number of food types does not match"}nutrients = {}	for n in model.N:actual = sum(value(model.a[f,n] * model.x[f]) for f in model.F)nutrients[n] = f"{actual:.2f}"results["nutrients"] = nutrientsreturn resultsapp = FastAPI()@app.get("/diet")
def diet_optimization():return linear_programming_diet("../test_data/diet.json", 5)

      通过以下命令启动:

fastapi dev test_fastapi_pyomo.py

      在浏览器中输入:http://127.0.0.1:8000/diet ,结果如下图所示:

      GitHub:https://github.com/fengbingchun/Python_Test

http://www.dtcms.com/wzjs/402517.html

相关文章:

  • 网络宣传网站建设建站迅雷磁力链bt磁力天堂下载
  • 网站建设 更新 维护知名做网站的公司
  • 做网站属于什么专业国际新闻最新消息10条
  • 公司注册地址可以是家庭地址吗系统优化大师免费版
  • 无锡短视频seoseo教程seo教程
  • 安徽餐饮网站建设漳州网络推广
  • 做美食的视频网站怎么提高百度关键词排名
  • 网站制作3种csswindows7优化大师
  • 台州公司网站建设公司想建个网站怎么弄
  • 邯郸网站制作个人网站做成app
  • 东莞东城区疫情最新消息seo指导
  • 做水晶接单在哪个网站接软文标题
  • 广州网站建设讯度下载app到手机上并安装
  • 做简易动画的网站域名注册查询入口
  • 专门做杂志的网站百度官网认证申请
  • 有哪些网站可以做海报设计知乎安徽网站建设优化推广
  • 建设企业网站新闻开发的意义百度如何优化排名靠前
  • 做搜狗pc网站优化排搜资源
  • 专门做饮食加盟的网站中国免费网站服务器下载
  • 百度怎么发布网站杭州网站优化平台
  • 诸暨建设局网站线上教育培训机构十大排名
  • 做微信的微网站费用多少合适个人网页生成器
  • 做营销型网站费用手机网站快速建站
  • 域名绑了小程序还可以做网站吗seo外链友情链接
  • 网站主办者冲突互联网全网营销
  • 新媒体与网站建设seo首页排名优化
  • 珠海建设企业网站的公司网络促销方案
  • 直销网站建设域名注册服务网站
  • 怎么做磁力网站高端婚恋网站排名
  • 叶县建设局网站湖南专业关键词优化服务水平