为此需要帮助编写脚本的解决方案

时间:2019-07-02 19:24:39

标签: python numpy scipy max

我真的是python的新手,除了在python中打印和解决基础知识外,我并不了解很多。我需要编写一个遵循以下规范的脚本:

  

用户输入

     

p1 =(x1,y1)

     

p2 =(x2,y2)

     

(d1,d2)也是一个固定点

     

Utilities为可能的结果创建一个线性区域,形式为
      y = mx + c

     

NB解决方案是(x * -d1)(y * -d2)的最大值
  将y替换为mx + c并求解方程(x * -d1)(mx * + c-d2)

     

函数值的最大值= mx * ^ 2 + cx * -d2x * -md1x * -cd1 + d1d2….equation(X)

     

⌈在y = mx +c⌉行中的x值内倾斜

     

从实用程序中获取点(x1,y1)(x2,y2)并确定分歧点(d1,d2)

     

找到直线的斜率=(y2-y2)/(x2-x1)
  通过替换y = y1,x = x1并计算m,在方程y = mx + c中找到c的值。
  替换m,x,d1,d2和c的值。
  通过替换两点创建的行中所有可能的x值来求解所有方程,从而找到x *
  返回该行中的最大值和相应的x值。

     

例如,
  如果(x1)= 10和(x2)= 20   程序应将上面列出的等式X范围内的所有可能值插入,然后返回函数的最大值及其相应的x坐标

我没有多少,因为我对整体编码还是很陌生的。我所拥有的一切就像x1,y1 x2,y2 d1和d2的用户输入一样。目前,我正在安装我在网上找到的scipy模块,以查看是否可以使用它,但是即使使用python中的任何语法,我也非常不满意。你能帮我吗?我会很感激。

这是我到目前为止所拥有的:

def slope():

    result = ''
    x = float(input("Player 1 Utility for green"))
    y = float(input("Player 2 ulitity for red"))
    a = float(input("Player 1 utility for red"))
    b = float(input("Player 2 utility for green"))
    m = (y-b)/(x-a)
    yint = y - (m*x)
    if yint < 0:
        sign='-'
    else:
        sign='+'
    result = str("y="),str(slope),str("x"),sign,str(yint)
    return result
print(slope())
import pylab as plt
import numpy as py
import sumpy as sy
import scipy as sc
def slope():

    result = ''
    x = float(input("Player 1 Utility for green"))
    y = float(input("Player 2 ulitity for red"))
    a = float(input("Player 1 utility for red"))
    b = float(input("Player 2 utility for green"))
    m = (y-b)/(x-a)
    yint = y - (m*x)
    if yint < 0:
        sign='-'
    else:
        sign='+'
    result = str("y="),str(slope),str("x"),sign,str(yint)
    return result
print(slope())

def bargaining_solution(x,m,c,d1,d2)

return max mx^2 + cx - d2x - md1x -cd1+ d1d2

0 个答案:

没有答案