Как записать стоимость слябов в целевую функцию линейного программирования? - PullRequest
0 голосов
/ 29 июня 2018

Допустим, у меня переменный доход в месяц, за период от 1 до 12 месяцев мой общий доход составляет 1700 $, я хочу минимизировать налог на этот доход. Как мне написать эту целевую функцию в форме абстрактной алгебры Z = 1000 * 0,05 + 500 * 0,10 + 200 * 0,15

В принципе, я хочу поставить налог на плиту с общего дохода, есть предложения?

У меня есть три плиты 0-1000, 1000-1500,> 1500 налог за плиту 0,05, 0,10, 0,15

1 Ответ

0 голосов
/ 02 июля 2018

Вот пример реализации на python:

def tax(x):
    if (x <= 1000):
        return x * 0.05
    elif (x <= 1500):
        return 50 + (x - 1000) * 0.1
    else:
        return 100 + (x - 1500) * 0.15

income = 100
while (income < 5000):
    print ("Taxes on income of " + str(income) + ": " +  str(tax(income)))
    income += 250

Вы можете параметризовать шаги и ставки, если хотите.

Если вам нужно регрессировать кусочную функцию по результатам, вы можете использовать numpy.piecewise.

...