logo

目的関数

目的関数は、その名前が示すように、線形計画問題の目的です。線形計画法または線形最適化では、さまざまな技術や方法を使用して、いくつかの制約のある線形問題に対する最適な解を見つけます。この手法には、不等式制約も含めることができます。線形計画法の目的関数は、与えられた問題に対する最適な解決策を見つけるために最適化することです。

この記事では、目的関数の定義、種類、特定の問題に対する目的関数の定式化方法などを含む目的関数についてすべて学びます。また、線形目的関数や非線形目的関数などの目的関数のさまざまな表現も学びます。機能。それでは、線形計画法のこの基本的な概念、つまり目的関数について学び始めましょう。



目的関数とは何ですか?

名前が示すように、目的関数は基本的に問題の目的を設定します。制約に基づいた意思決定に焦点を当てます。これは、制約に応じて最大化または最小化される実数値関数です。これは、利益関数または損失関数のようなものです。通常は Z で表されます。

目的関数に関連する用語は次のとおりです。

  • 制約: これらは基本的に、線形関数を制御する条件式です。
  • 決定変数: 値を調べる変数。これらの変数の最適値を取得するために方程式が解かれます。
  • 実現可能な地域: これは、制約が満たされ、決定変数が領域の隅にあるグラフ内の領域です。
  • 最適な解決策: すべての制約を満たし、最高または最低の目的を達成する可能な限り最良のソリューション。
  • 実行不可能な解決策: 1 つ以上の制約に違反しており、実装または実行できないソリューション。

線形計画法の目的関数

線形計画法では、目的関数は 2 つの決定変数で構成される線形関数です。これは、制約に応じて最大化または最小化される線形関数です。 a と b が定数、x と y が決定変数 (x> 0 および y> 0) の場合、目的関数は次のようになります。



Z = 斧 + によって

したがって、最適化関数の最適値を取得するには、まずいずれかの手法を使用して制約を解決し、決定変数を見つける必要があります。次に、意思決定変数の値を目的関数に入力して、最適な値を生成します。

線形計画法の目的関数



目的関数の定式化

線形計画法は、決定変数の最適な値を見つけて、それらの値を目的関数に入れて最大値または最小値を生成することです。線形計画法を解くには、シンプレックス法やグラフィカル法など多くの手法があります。ただし、その単純さのため、通常はグラフィカルな方法が好まれます。目的関数の最適な値を取得する手順は次のとおりです。

  • 問題から制約方程式と目的関数を生成します。
  • 制約式をグラフ上にプロットします。
  • 次に、制約が満たされる実行可能な領域を特定します。
  • 実行可能領域の隅にある決定変数の値を生成します。
  • 生成されたすべての値を目的関数に入れて、最適な値を生成します。

一般的な種類の目的関数

目的関数には 2 種類あります。

  • 最大化目的関数
  • 最小化目的関数

これら 2 つのタイプについて、次のように詳しく説明します。

最大化目的関数

このタイプでは、通常、目的関数を最大化することを目指します。制約をグラフ化した後に見つかる頂点は、目的関数の最大値を生成する傾向があります。例を使って説明しましょう

例: 男性は財布やランドセルの製造に最大 8 時間を費やします。彼は財布の製作に 2 時間を、ランドセルの製作に 4 時間を費やしています。彼は財布とランドセルを最大 5 個作ることを目標としており、それらを販売して財布で 20 ルピー、ランドセルで 100 ルピーの利益を得たいと考えています。目的関数を見つけます。

解決:

x をロティの数、y をパンの数とします。

男性は、財布の作成に 2 時間、ランドセルの作成に 4 時間を投資すると、最大 8 時間を投資できます。したがって、最初の制約式は次のようになります。

2x + 4y ⩽ 8

⇒ x + 2y ⩽ 4

彼が作れる最大数は5です

x+y ⩽ 5

目的関数を Z で表すとします。

ナット vs ベッド

したがって、Z = 20x + 100y

最小化目的関数

このタイプでは、通常、目的関数を最小化することを目指します。制約をグラフ化した後に見つかる頂点は、目的関数の最小値を生成する傾向があります。例を使って説明しましょう

例: 2 つの変数の合計が少なくとも 20 であるとします。1 つの変数が 9 以上であるとします。1 つの変数のコストが 2 単位で、別の変数のコストが 9 単位である場合の目的関数を導出します。

解決:

x と y を 2 つの変数としましょう。 2 つの変数の合計が少なくとも 20 である必要があると仮定します。

x+y ⩾ 20

そして x ⩾ 9

Linuxでスクリプトを実行する方法

上記の 2 つの不等式は、次の目的関数に対する制約です。

目的関数を Z で表すとします。したがって、Z は次のようになります。

Z = 2x + 9y

目的関数の数学的表現

線形計画法のコンテキストで目的関数について説明しましたが、目的関数は非線形である場合もあります。

  • 線形目的関数: このタイプの目的関数では、制約と目的関数の両方が本質的に線形です。変数の指数は 1 です。
  • 非線形目的関数: このタイプの目的関数では、制約と目的関数の両方が本質的に線形です。変数の指数は 1 または 1 より大きくなります。

目的関数の応用

目的関数は現実のシナリオでは重要です。例えばビジネスマンが利用する機能です。ビジネスマンは利益を最大化するためにそれを使用します。目的関数は輸送問題にも役立ちます。機能を設定することで、どのくらいの燃料消費が発生しているかを分析し、それに応じてユーザーがどのように価格を下げることができるかを分析できます。目的関数は距離の問題にも役立ちます。

目的関数に関する解決済みの問題

問題 1: ある人がベルトと財布を欲しがっています。彼は合計 6,000 ルピーの貯蓄を持っており、後で売却できるように、貯蓄すべてをベルトと財布の購入に費やしたいと考えています。財布の価値は 20 ルピー、ベルトの価値は 10 ルピーです。彼はそれらを食器棚に保管したいと考えていますが、食器棚の最大容量は 50 個です。彼はベルトで 2 ルピー、財布で 3 ルピーの利益を期待しています。制約とその結果の目的関数を見つけます。

解決:

購入する財布の数を x 、購入するベルトの数を y とします。問題で最大値が言及されている場合は常に、制約を見つけるために「⩽」を使用する必要があることに注意してください。

最大投資は Rs 6000 です。最初の制約式は次のとおりです。

20x+10y⩽6000

食器棚の最大収納量は50個です

x+y⩽50

ここでの利益関数は基本的に目的関数です。これを P で表すとします。したがって、利益関数は次のようになります。

P = 3x + 2y

問題 2: 指定されたセットから制約方程式と目的関数を特定する

  • 2x + 3y ⩾ 50
  • x + y ⩽ 50
  • 5x + 4y ⩽ 40
  • Z = 7x + 8y

ここで、x と y は 0 より大きくなります。

解決:

制約には、不等式または不等式形式を使用できます。ただし、目的関数には常に等価記号があります

したがって、制約式は次のようになります。

2x + 3y ⩾ 50

x + y ⩽ 50

5x + 4y ⩽ 40

目的の方程式は Z = 7x + 8y です。

問題 3: 女性がロティとパンを作るのに費やす時間は最大でも 7 時間です。彼女はロティに 2 時間を、パンに 4 時間を費やします。彼女はパンとロティを最大 20 個作ることを目標としており、それらを販売してロティで 2 ルピー、パンで 1 ルピーの利益を得たいと考えています。目的関数を見つけます。

解決:

x をロティの数、y をパンの数とします。

女性は、ロティ作りに 2 時間、パン作りに 4 時間を投資すると、最大 7 時間を投資できます。したがって、最初の制約式は次のようになります。

2x + 4y ⩽ 7

彼女が作れるパンとロティの最大数は20です

x + y ⩽ 20

目的関数を Z で表すとします。

したがって、Z = 2x + y となります。

問題 4: 会社は製品 A と製品 B を製造したいと考えています。製品 A にはココア パウダー 4 単位と粉ミルク 1 単位が必要です。製品 B にはココア パウダー 3 単位と粉ミルク 2 単位が必要です。ココアパウダーは 87 単位、ミルクパウダーは 45 単位あります。各製品で得られる利益はそれぞれ 3 ドルと 5 ドルです。目的関数を見つけます。

解決:

x は製品 A の数を示し、y はタイプ B のアイテムの数を示します。

ココアパウダーの最大量は87単位です。したがって、最初の制約式は次のようになります。

4x + 3y ⩽ 87

使用可能な粉ミルクの最大量は 45 ユニットです。したがって、2 番目の制約式は次のようになります。

x + 2y ⩽ 45

ここでの私たちの目標は、利益を最大化することです。したがって、利益関数は目的関数です。それを Z で表すとします

Z = 3x + 5y

問題 5: ビタミンを含む 2 種類の食品パケット A および B を生成する必要があります。利用可能にする食品パケット A は少なくとも 45 単位あり、両方の食品パケットの製造は少なくとも 30 である必要があります。食品パケット A には 6 単位のビタミンが含まれ、食品パケット B には 8 単位ある場合に生成される目的関数を生成します。 。

解決:

x を食品パケット A の数、y を食品パケット B の数とします。

少なくとも 45 個の食料パックが用意される予定です。したがって、最初の制約式は次のようになります。

× ⩾ 45

2 番目の制約式は次のとおりです。

x + y ⩾ 30

目的関数は次のとおりです。

Z = 6x + 8y

目的関数に関する FAQ

Q1: 線形計画問題の目的関数とは何ですか?

答え:

目的関数は、制約に応じて最大化または最小化される実数値関数です。これは 2 つの決定変数で構成されます。

Q2: 目的関数の目的は何ですか?

答え:

目的関数の目的は、結果の値を最大化または最小化することです。これは決定変数の観点から表現される方程式であり、線形計画法において重要な役割を果たします。

Pythonプログラミングの演算子

Q3: 関数が最大化されるべきか最小化されるべきかをどのように理解すればよいですか?

答え:

関数が最大化されるかどうかを確認するには、「最大でも」、「少なくとも」などの用語に精通している必要があります。 「少なくとも」という用語が問題になっている場合、目的関数は最小化されます。 「最大」という用語の場合、関数は最大化される必要があります。

Q4: 目的関数の一般的なタイプに名前を付けてください。

答え:

目的関数には次の 2 種類があります。

  • 最大化目的関数
  • 最小化目的関数

Q5: 目的関数の応用にはどのようなものがありますか?

答え:

目的関数にはさまざまな用途があります。これらは実際のシナリオで役立ちます。これらは基本的に、それぞれの場合の損益を見積もるために使用されます。目的関数は、輸送問題や時間制約の問題などに役立ちます。