JP2017514247A - 時間、資源および予算の制約下での構造化経営組織内のプロジェクトの選択および資源の割り当てを最適化する枠組み - Google Patents

時間、資源および予算の制約下での構造化経営組織内のプロジェクトの選択および資源の割り当てを最適化する枠組み Download PDF

Info

Publication number
JP2017514247A
JP2017514247A JP2017502918A JP2017502918A JP2017514247A JP 2017514247 A JP2017514247 A JP 2017514247A JP 2017502918 A JP2017502918 A JP 2017502918A JP 2017502918 A JP2017502918 A JP 2017502918A JP 2017514247 A JP2017514247 A JP 2017514247A
Authority
JP
Japan
Prior art keywords
project
projects
resource
resources
dependent
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017502918A
Other languages
English (en)
Other versions
JP2017514247A5 (ja
JP6564015B2 (ja
Inventor
スペラ,コジモ
ムカダム,サミール
マクブライド,クリフォード・ショーン
リード,チャールズ・ローレンス
Original Assignee
イノタス
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by イノタス filed Critical イノタス
Publication of JP2017514247A publication Critical patent/JP2017514247A/ja
Publication of JP2017514247A5 publication Critical patent/JP2017514247A5/ja
Application granted granted Critical
Publication of JP6564015B2 publication Critical patent/JP6564015B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06313Resource planning in a project environment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06312Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06315Needs-based resource requirements planning or analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06316Sequencing of tasks or work
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0633Workflow analysis

Landscapes

  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Educational Administration (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Computational Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本開示の態様は、時間、資源および予算の制約下で、スケジュール内のプロジェクトへ資源を効率的に割り当てることが提示される。いくつかの実施形態では、方法が提示される。方法は、スケジュール内の資源の効率的な割り当てを決定するための変数にアクセスすることを含み、複数のプロジェクトの他のプロジェクトの完了の要件として上記複数のプロジェクトの中のどのプロジェクトを完了させなければならないかを示すプロジェクト依存値の集合を含みうる。方法はまた、上記プロジェクト依存値の集合に基づいて、完了されるプロジェクトの順序を示す依存経路を決定することであって、上記依存経路のプロジェクトは、上記依存経路内の先行するすべてのプロジェクトが完了するまで開始されることができないことと、上記依存経路に基づく、かつ、予算支出によって制約される最適化目標を最大化する計画対象期間内の完了されるプロジェクトの効率的な選択を決定することとを含みうる。【選択図】図12C

Description

本明細書に開示される主題は、概してデータ処理に関する。いくつかの実施形態では、本開示は、構造化経営組織内のプロジェクトの選択および資源の割り当てを最適化する枠組みを提供するための方法および装置に関する。
経営組織および他の企業の共通の目標は、時間および予算の制約内で様々なタスクまたはプロジェクトを完了するために利用可能な資源の効率的な使用を見出すことである。いくつかの場合では、効率のレベルはどれだけの利益(profit)を挙げるかに基づきうるものであり、指定された数のプロジェクトに対する資源の特定の割り当てが与えられる。様々な最適化アルゴリズムを利用するコンピュータに、効率的に資源を利用するためにどんなプロジェクトを完了するべきであるかについてスケジュール案を決定することが委ねられうる。しかしながら、公知のアルゴリズムは、特に大量のプロジェクトを同時に検討する際に、計算機的に非効率的となりうる。いくつかの場合では、従来のアルゴリズムは、さらに多くのプロジェクトが検討に加えられているというこの最適化問題を解決できないものでありうる。従って、計算機的に効率的な手法でプロジェクトのスケジュールを決定することができる新しいアルゴリズムおよびヒューリスティックを開発することが要望されている。
様々な時間、資源および予算の制約下での組織内の複数のプロジェクトに対する資源の割り当てに関して、方法、システムおよびコンピュータ読み取り可能な媒体を提示する。いくつかの実施形態では方法が提示される。方法は、プロセッサによって、複数のプロジェクトにアクセスすることと、上記プロセッサによって、上記複数のプロジェクトのうち少なくともプロジェクトのサブセットを完了する時間の長さを示す計画対象期間にアクセスすることと、上記プロセッサによって、複数の資源であって、上記複数の資源の各資源が上記複数のプロジェクトの少なくとも1つのプロジェクトを完了するために上記資源によって実行可能である1つまたは複数の機能を特定する上記複数の資源にアクセスすることと、上記プロセッサによって、上記複数の資源の各資源について、各資源を上記複数のプロジェクトにわたって利用することが可能である最大利用可能容量を示す予算支出にアクセスすることと、上記プロセッサによって、上記複数のプロジェクトの各プロジェクトについて、前記プロジェクトを完了することに関連する費用の制約にアクセスすることと、上記プロセッサによって、上記複数のプロジェクトの各プロジェクトについて、前記プロジェクトを完了することで得られる利益の量を示す利益値にアクセスすることと、上記プロセッサによって、上記複数のプロジェクトの他のプロジェクトの完了の要件として上記複数のプロジェクトの中のどのプロジェクトを完了させなければならないかを示すプロジェクト依存値の集合にアクセスすることと、上記プロセッサによって、上記プロジェクト依存値の集合に基づいて、完了される上記複数のプロジェクトの中のプロジェクトの順序を示す少なくとも1つの依存経路を決定することであって、上記少なくとも1つの依存経路内のプロジェクトは、上記少なくとも1つの依存経路内の先行するすべてのプロジェクトが完了するまで開始されることができないことと、上記プロセッサによって、上記計画対象期間内の上記完了される複数のプロジェクトの中からのプロジェクトの効率的な選択を、上記プロジェクトの効率的な選択内の各プロジェクトの上記利益値と上記プロジェクトの効率的な選択内の各プロジェクトの上記費用の制約との間の比較に基づいて決定し、上記効率的な選択は上記少なくとも1つの依存経路に基づき、上記複数の資源の効率的な利用を決定して、各資源についての上記予算支出によって制約される、上記プロジェクトの効率的な選択を完了することとを含みうる。
いくつかの実施形態では、上記少なくとも1つの依存経路を決定することは、上記複数のプロジェクトを複数のクラスタに分割することと、上記クラスタ内の各プロジェクトについて、上記クラスタ内の前記プロジェクトに関連した上記プロジェクト依存値によって結びつけられる上記複数のプロジェクトの中の一連のプロジェクトを示す、各クラスタについてのクラスタ依存経路を計算することと、上記クラスタ依存経路の併合操作を実行して上記少なくとも1つの依存経路を生成することと、上記併合操作中に上記少なくとも1つの依存経路と関連しない少なくとも1つの上記クラスタ依存経路の少なくともサブセットをプルーニングすることとを含む。いくつかの実施形態では、上記併合操作は、少なくとも2つのクラスタ依存経路をともに接続することを含み、接続される上記少なくとも2つのクラスタ依存経路の選択は、上記少なくとも2つのクラスタ依存経路の中で共通している少なくとも1つのプロジェクトに基づく。
いくつかの実施形態では、上記少なくとも1つの依存経路を決定することは、上記プロジェクト依存値の集合に基づいて第1の依存経路を決定することと、上記プロジェクト依存値の集合に基づいて第2の依存経路を決定することと、上記第1および第2の経路依存性の予測利益間の比較に基づいて上記第2の依存経路に対して上記第1の依存経路を順位付けすることと、上記計画対象期間によって制約される予定表に沿って、上記プロジェクトを、上記予定表に沿って上記第2の依存経路に上記プロジェクトを割り当てる前に上記第1の依存経路に割り当てることとを含む。
いくつかの実施形態では、上記完了される複数のプロジェクトの中からの上記プロジェクトの効率的な選択を決定することは、上記計画対象期間によって制約される予定表上のプロジェクトについて効率的な配置を決定することを含み、上記効率的な配置は、上記プロジェクト完了にかかる時間長と、上記プロジェクト完了に必要な資源量と、上記プロジェクトにかかる最大財務費用を規定するプロジェクト予算とに基づく。いくつかの実施形態では、上記プロジェクトについて上記効率的な配置を決定することは、上記資源を上記プロジェクト内のロールとマッチングすることと、上記ロールとマッチングされる上記資源の選択を優先することと、上記資源とマッチングされる上記ロールの選択を優先することとを含む。いくつかの実施形態では、上記資源の選択を優先することは、非優先資源よりも早く優先資源を選択することと、非スティッキーな資源よりも早くスティッキーな資源を割り当て、上記スティッキーな資源は検討されている上記ロールより前の時間間隔に割り当てられた資源を示すことと、フレキシブルな資源よりも早く非フレキシブルな資源を割り当てることと、上記ロールのベストフィット記述に合うロールに資源を割り当てることと、利用可能期間が短い資源に対して利用可能期間が長い資源を優遇することとを含む。いくつかの実施形態では、上記ロールの選択を優先することは、より希少でないロールよりも前に希少のロールをマッチングすることと、ロールのコンター(contours)として、より長い非ゼロの需要の連鎖(sequence)を有するロールを、より短いコンターをもつロールよりも前にマッチングすることと、より短い時間拘束であるロールよりも前により長い時間拘束であるロールをマッチングすることとを含む。
いくつかの実施形態では、上記完了される複数のプロジェクトの中からの上記プロジェクトの効率的な選択を決定することは、上記複数のプロジェクトの中のプロジェクトが、上記プロジェクトの効率的な選択の中から除外される理由を決定することを含む。いくつかの実施形態では、上記プロジェクトが除外される理由を決定することは、予算不足により上記プロジェクトが除外されるかどうかを決定することと、資源不足により上記プロジェクトが除外されるかどうかを決定することと、予定表の不足により上記プロジェクトが除外されるかどうかを決定することと、依存経路不足により上記プロジェクトが除外されるかどうかを決定することとを含む。
いくつかの実施形態では、上記完了される複数のプロジェクトの中からの上記プロジェクトの効率的な選択を決定することは、プロジェクトの制約の集合を修正して上記プロジェクトの効率的な選択の中に現在含まれていない上記複数のプロジェクトの中の少なくとももう1つのプロジェクトを、上記効率的な選択の中に含むことができるかどうかを決定することを含む。いくつかの実施形態では、上記プロジェクトの制約の集合を修正することは、上記プロジェクトの効率的な選択の完了に関してロール数を修正することが、結果として、上記プロジェクトの効率的な選択の中に含まれる1つまたは複数のプロジェクトになるかどうかを決定すること、上記プロジェクトの効率的な選択に関連する少なくとも1つの予算を増加することが、結果として、上記プロジェクトの効率的な選択の中に含まれる1つまたは複数のプロジェクトになるかどうかを決定すること、または、上記プロジェクトの効率的な選択の中のプロジェクト内のロールの容量を増加することが、結果として、上記プロジェクトの効率的な選択の中に含まれる1つまたは複数のプロジェクトになるかどうかを決定することを含む。
いくつかの実施形態では、上記計画対象期間内の上記完了される複数のプロジェクトの中からの上記プロジェクトの効率的な選択を決定することは、上記プロジェクトの効率的な選択内の各プロジェクトの上記利益値と上記プロジェクトの効率的な選択内の各プロジェクトの上記費用の制約との間の比較を最大化することにさらに基づく。
いくつかの実施形態ではシステムが提示される。システムは、複数のプロジェクトと、上記複数のプロジェクトの少なくともプロジェクトのサブセットを完了する時間の長さを示す計画対象期間と、複数の資源であって、前記複数の資源の各資源が上記複数のプロジェクトの少なくとも1つのプロジェクトを完了するために上記資源によって実行可能である1つまたは複数の機能を特定する上記複数の資源と、上記複数の資源の各資源について、各資源を上記複数のプロジェクトにわたって利用することが可能である最大利用可能容量を示す予算支出と、上記複数のプロジェクトの各プロジェクトについて、前記プロジェクトを完了することに関連した財務費用を示す費用の制約と、上記複数のプロジェクトの各プロジェクトについて、前記プロジェクトを完了することで得られる利益の量を示す利益値と、上記複数のプロジェクトのうちの他のプロジェクトの完了の要件として上記複数のプロジェクトの中のどのプロジェクトを完了させなければならないかを示すプロジェクト依存値の集合とを含む、データを記憶するように構成されたメモリを含む。システムはまた、上記複数のプロジェクトと、上記計画対象期間と、上記複数の資源と、上記複数の資源の各資源についての上記予算支出と、上記複数のプロジェクトの各プロジェクトについての上記費用の制約と、上記複数のプロジェクトの各プロジェクトについての上記利益値と、上記プロジェクト依存値の集合とにアクセスし、上記プロジェクト依存値の集合に基づいて、完了される上記複数のプロジェクトの中のプロジェクトの順序を示す少なくとも1つの依存経路を決定し、上記少なくとも1つの依存経路内のプロジェクトは、上記少なくとも1つの依存経路内の先行するすべてのプロジェクトが完了するまで開始されることができないものであり、上記計画対象期間内の上記完了される複数のプロジェクトの中からのプロジェクトの効率的な選択を、上記プロジェクトの効率的な選択内の各プロジェクトの上記利益値と上記プロジェクトの効率的な選択内の各プロジェクトの上記費用の制約との間の比較に基づいて決定し、上記効率的な選択は上記少なくとも1つの依存経路に基づき、上記複数の資源の効率的な利用を決定して、各資源についての上記予算支出によって制約される、上記プロジェクトの効率的な選択を完了するように構成され、かつ、上記メモリに結合されるプロセッサを含みうる。
いくつかの実施形態では非一時的なコンピュータ読み取り可能な媒体が提示される。コンピュータ読み取り可能な媒体は、プロセッサによって解釈される場合に、複数のプロジェクトにアクセスすることと、上記複数のプロジェクトの少なくともプロジェクトのサブセットを完了する時間の長さを示す計画対象期間にアクセスすることと、複数の資源であって、上記複数の資源の各資源が上記複数のプロジェクトの少なくとも1つのプロジェクトを完了するための上記資源によって実行可能である1つまたは複数の機能を特定する上記複数の資源にアクセスすることと、上記複数の資源の各資源について、各資源を上記複数のプロジェクトにわたって利用することが可能である最大利用可能容量を示す予算支出にアクセスすることと、上記複数のプロジェクトの各プロジェクトについて、前記プロジェクトを完了することに関連した財務費用を示す費用の制約にアクセスすることと、上記複数のプロジェクトの各プロジェクトについて、前記プロジェクトを完了することで得られる利益の量を示す利益値にアクセスすることと、上記複数のプロジェクトのうちの他のプロジェクトの完了の要件として上記複数のプロジェクトの中のどのプロジェクトを完了させなければならないかを示すプロジェクト依存値の集合にアクセスすることと、上記プロジェクト依存値の集合に基づいて、完了される上記複数のプロジェクトの中のプロジェクトの順序を示す少なくとも1つの依存経路を決定し、上記少なくとも1つの依存経路内のプロジェクトは、上記少なくとも1つの依存経路内の先行するすべてのプロジェクトが完了するまで開始されることができないことと、上記計画対象期間内で上記完了される複数のプロジェクトの中からのプロジェクトの効率的な選択を、上記プロジェクトの効率的な選択内の各プロジェクトの上記利益値と上記プロジェクトの効率的な選択内の各プロジェクトの上記費用の制約との間の比較に基づいて決定し、上記効率的な選択は上記少なくとも1つの依存経路に基づき、上記複数の資源の効率的な利用を決定して、各資源についての上記予算支出によって制約される、上記プロジェクトの効率的な選択を完了することとを含む動作をマシンに対して実行させる指示を含みうる。
いくつかの実施形態を、限定ではなく例として添付の図面の各図に示す。
図1は、いくつかの実施形態による、本開示の態様の実行に好適な例となるネットワーク環境の一例を説明するネットワーク図である。 図2は、いくつかの実施形態による、複数のプロジェクトに対して資源を割り当てるためのシステムへの計画対象期間および最適化情報を受けるためのグラフィカルユーザインタフェースの一例の表示を示す。 図3は、いくつかの実施形態による、複数のプロジェクトに対して資源を割り当てるためのシステムへのプロジェクト情報を受けるためのグラフィカルユーザインタフェースの第2の例の表示を示す。 図4は、いくつかの実施形態による、複数のプロジェクトに対して資源を割り当てるためのシステムへの制約情報を受けるためのグラフィカルユーザインタフェースの第3の例の表示を示す。 図5は、いくつかの実施形態による、最適化目標を最大化するいくつかのプロジェクトを列挙する全体的なスケジュールに関する、例えばエグゼクティブサマリーである一例の表示を示す。 図6は、いくつかの実施形態による、スケジュール案に含まれるプロジェクトについての追加属性を説明する、例えば図表である第2の例となる表示を示す。 図7は、いくつかの実施形態による、スケジュール案に含まれるプロジェクトについての他の属性を説明する、例えばプロジェクト一覧である第3の例となる表示を示す。 図8は、いくつかの実施形態による、スケジュール案に含まれるプロジェクトについての他の属性を説明する、例えば予定表の概要である第4の例となる表示を示す。 図9は、いくつかの実施形態による、スケジュール案に含まれるプロジェクトについての他の属性を説明する、例えば資源利用の概要である第5の例となる表示を示す。 図10は、いくつかの実施形態による、スケジュール案に含まれるプロジェクトについての他の属性を説明する、例えばさらなる種々の統計である第6の例となる表示を示す。 図11は、いくつかの実施形態による、指定された計画対象期間内で完了対象のプロジェクトのスケジュールを生成するための一例の方法論を説明する。 図12Aは、いくつかの実施形態による、図11のブロック1116において依存経路を決定するための一例の方法論を提供する。 図12Bは、有向非巡回グラフのいくつかの例の図示を提供する。 図12Cは、図12Aにおける記述と一致する完成依存経路を生成するための一例を提供する。 図13は、いくつかの実施形態による、図11のブロック1118においてプロジェクトを割り当てることを決定するための一例の方法論を提供する。 図14は、いくつかの例示する実施形態によるマシン読み取り可能な媒体からの指示を読み取り、本明細書で論じられる任意の1つまたは複数の方法論を実行することができるマシンの構成要素を示すブロック図である。
以下の詳細な説明は、異なる図中で同様の要素には同一の参照符合を付している図面を参照しながら理解されたい。図面においては、必ずしも縮尺をあわせているものではなく、選択的に実施形態を示しており、発明の範囲を限定することを意図していない。詳細な説明は、例として、限定ではなく、発明の原理を説明している。この説明は、明らかに、当業者が発明をなし、用いることができることとなるものであり、発明を実施するための最良の形態となると現在見られているものを含む、発明のいくつかの実施形態、適合、変形、代替および使用を説明する。この明細書および添付の特許請求の範囲で用いる場合、明確に別を示す文脈がなければ、単数形である“a”、“an”および“the”は複数の指示対象を含む。
様々な時間、資源および予算の制約下での、組織における複数のプロジェクトに対して資源を割り当てるためのシステム、方法および装置が提示される。本明細書では、「プロジェクト」とは、企業の特定の目的を有する予定されたひとまとまりの仕事として規定されうるものであり、例えば、金額上の利益、得られる評判、各プロジェクトについてのスコア、予測の長期戦略的価値、他の数量化可能な数値、またはそれらの任意の組合せを含む様々な方法で表現される企業に関するある値を生じうる。プロジェクトを完了するために、いくつかの資源を、ある期間にわたってプロジェクトに費やす必要がありうるため、プロジェクトは、関連する指定された必要な資源の量、予測費用、完了のための予測時間および各種資源に関する最大利用可能容量を特定する1つまたは複数の予算を有しうる。本明細書では、「資源」(resource)とは、有する資格に関するタスクの集合を実行することが可能であるような有資格の専門家の存在(stock)として規定されうる。他の場合では、資源は、コンピュータ、印刷機、科学的機械、建設機械等である他の実体のあるツールおよびマシンを含むことが可能である。経営組織および他の企業の共通の目標は、時間および予算の制約内で、様々なタスクまたはプロジェクトを完了するために利用可能な資源の効率的な使用を見出すことである。いくつかの場合では、効率のレベルは、どれだけの利益が挙げられるかに基づきうるものであり、指定された数のプロジェクトに対する資源の特有の割り当てが与えられる。
最適または効率的な解決法を見出すための標準のアプローチは、線形プログラムとしてのこの問題をモデル化することと、オペレーションズリサーチ理論および公知のヒューリスティックに従ってコンピュータを用いて線形プログラムを解くこととを含んでいる。しかしながら、この最適化問題は、NP困難として知られており、問題の大きさ(例えば、プロジェクト数)が直線的に増加するにつれて、この問題を解決するために必要な計算資源が指数関数的に増加することを意味する。そのため、従来の方法は、検討および考量対象のプロジェクト数がより少なければこの問題を適切に解決しうるが、検討対象であるプロジェクトがより多い(例えば、50以上)と、この最適化問題は手に負えないものとなりうる。経営組織は、平均で概ね150以上のプロジェクトの検討に対処しうるため、効率的または最適な解決法を見出すことへの従来のアプローチでは、合理的な時間制限内で、満足な回答を提供することができないものでありうる。
本開示の態様は、計算機的に効率的な手法で、指定された時間および予算の制約を与えられた複数のプロジェクトに対する資源の割り当てについて提示される。いくつかの実施形態では、プロセッサは、プロジェクトの1つまたは複数の依存経路を決定するように構成されうるものであり、依存経路は、いくつかのプロジェクトが、他のプロジェクトが完了可能である前に完了されるという指定に基づく、完了されるプロジェクトの順序を示す。いくつかの実施形態では、多くのプロジェクトの集合において、該プロジェクトの集合はプロジェクトのクラスタに分割されうるものであって、クラスタ依存経路がクラスタごとに計算されてよく、他のプロジェクト(クラスタ内でないプロジェクトを含む)への依存性を示す。いくつかの実施形態では、プロジェクトの集合全体の中の複数の依存経路はクラスタ依存経路を明らかにすることによって決定されうるものであり、各クラスタ内の示される依存性に基づく。その後、これら複数の依存経路は、利益を最大化することまたは費用に対して比較される他の種類のある利益値(benefit value)を最大化することなどのある最適化目標に従って順位付けされうる。用語「最大化すること」は、すべての他の考えられる値と比較して最大の値が達成されるという意味で、完全な最大を達成することを指しうる。いくつかの実施形態では、用語「最大化すること」は、与えられる制約の集合およびそれらの制約を利用する規定された方法論の下で、すべての他の値よりもよい値が達成されるという意味で、相対的な最大を達成することを指しうる。最高位に順位付けされた依存経路内のプロジェクトは、指定された計画対象期間によって制約されうるプロジェクトのスケジュールにその後割り当てられうる。いくつかの実施形態では、プロジェクトのクラスタへの分割は、ランダムな選択に基づきうる。
概して、プロジェクトのクラスタへの分割は、並列計算を含みうるものであり、それによって本明細書に提示される最適化問題への効率的な解決法を決定するために要する時間の量が減少する。また、プロジェクトの集合全体をクラスタへ分割して、まずクラスタ依存経路を計算することは、コンピューティングプロセッサに、集合全体(例えば、150プロジェクト)ではなくプロジェクトのサブセットのみ(例えば、15プロジェクト)を検討することを許可し、それにより全体的な集合全体に取り組む試行の際に要する、計算機的な資源における指数関数的な増加を回避する。さらに、プロジェクトの集合全体をクラスタへ分割することは、コンピューティングプロセッサに、互いに依存しないプロジェクト間の無関連な比較数を減らすことを許可し、それにより必要な計算機的な資源の量がさらに減少する。
図1を参照すると、いくつかの実施形態による、本開示の態様の実行に好適なネットワーク環境100の一例を説明するネットワーク図が示される。例であるネットワーク環境100は、サーバマシン110、データベース115、第1のクライアント132の第1のクライアント装置130および第2のクライアント142の第2のクライアント装置140を含み、ネットワーク120を介してすべてが互いに通信可能に結合される。サーバマシン110は、ネットワークベースシステム105(例えば、第1のクライアント装置130と第1および第2のクライアント装置130および140とに対して1つまたは複数のサービスを提供するように構成されたクラウドベースサーバシステム)のすべてまたは部分を形成しうる。サーバマシン110、第1のクライアント装置130および第2のクライアント装置140は、図17に関して以下に説明されるように、それぞれ全体的にまたは部分的にコンピュータシステムで実施されうる。
図1にもまた、第1のクライアント132および第2のクライアント142を示す。1つまたは複数の第1および第2のクライアント132および142は、人であるユーザ、マシンユーザ(例えば、第1のクライアント装置130と相互に作用するソフトウェアプログラムによって構成されるコンピュータ)またはそれらの任意の好適な組合せ(例えば、マシンに補助される人または人に管理されるマシン)でありうる。第1のクライアント132は、第1のクライアント装置130と関連してよく、第1のクライアント装置130のユーザでありうる。例えば、第1のクライアント装置130は、第1のユーザ132に属する、デスクトップコンピュータ、車載コンピュータ、タブレットコンピュータ、ナビゲーション装置、携帯用媒体装置、スマートフォンまたはウェアラブル装置(例えば、スマートフォンウォッチまたはスマートグラス)でありうる。同様に、第2のクライアント142は、第2のクライアント装置140と関連しうる。
図1に示すマシン、データベース115、第1のクライアント装置130または第2のクライアント装置140のいずれかは、ソフトウェア(例えば、1つまたは複数のソフトウェアモジュール)によって専用コンピュータに変形された(例えば、構成されたまたはプログラムされた)汎用性コンピュータで実施され、そのマシン、データベース115または装置130および140に関して本明細書に記載される1つまたは複数の機能を実行する。例えば、本明細書に記載された任意の1つまたは複数の方法論を実施することができるコンピュータシステムが、図17に関して以下で論じられる。本明細書で用いる場合、「データベース」は、データ記憶資源を指しうるものであり、テキストファイル、表、スプレッドシート、リレーショナルデータベース(例えば、オブジェクトリレーショナルデータベース)、トリプルストア(triple store)、階層データストア、その他の好適なデータ編成記憶手段またはそれらの任意の好適な組合せとして構造化されたデータを記憶しうる。さらに、図1に示す任意の2つまたは複数のマシン、データベースまたは装置は1つのマシンに結合されてよく、任意の1つのマシン、データベースまたは装置について本明細書に記載される機能は、複数のマシン、データベースまたは装置の中で細分されうる。
ネットワーク120は、マシン、データベース115および装置(例えば、サーバマシン110および第1のクライアント装置130)間で通信を可能にする任意のネットワークでありうる。従って、ネットワーク120は、有線ネットワーク、無線ネットワーク(例えば、モバイルまたはセルラーネットワーク)、またはそれらの任意の好適な組合せでありうる。ネットワーク120は、プライベートネットワーク、公衆ネットワーク(例えば、インターネット)またはそれらの任意の好適な組合せを構成する1つまたは複数の部分を含みうる。従って、ネットワーク120は、例えば、ローカルエリアネットワーク(LAN)、広域通信網(WAN)、インターネット、携帯電話ネットワーク(例えば、セルラーネットワーク)、有線電話ネットワーク(例えば、単純旧式電話システム(POTS)ネットワーク)、無線データネットワーク(例えば、WiFiネットワークまたはWiMaxネットワーク)、またはそれらの任意の好適な組合せを組み込む1つまたは複数の部分を含みうる。ネットワーク120の任意の1つまたは複数の部分は、伝送媒体を介して情報を伝達しうる。本明細書で用いる場合、「伝送媒体」は、マシンによる(例えば、そうしたマシンの1つまたは複数のプロセッサによる)実行のための指示を伝達すること(例えば、伝送すること)が可能である任意の実体のない(例えば、一時的な)媒体を指しうるものであり、デジタルまたはアナログの通信信号もしくは他の実体のない媒体を含み、そうしたソフトウェアの通信を容易にすることができる。

入力を受けるユーザインタフェースの例
図2を参照すると、図表200は、いくつかの実施形態による、複数のプロジェクトへの資源の割り当てに関するシステムへの入力を受けるグラフィカルユーザインタフェースの表示の一例を示す。図表200における例である表示は、例えばクライアント装置130または140である装置上で、例えばクライアント132または142であるユーザに対して提示されうる。いくつかの実施形態によれば、以下で図3および4において説明される入力を含む、例である表示において受ける入力は、その後、プロジェクトがどのように計画されるべきかを決定するために利用されうる例えばネットワークベースシステム105であるシステムによってアクセスされうる。
ここで、例である表示は、まず、ある最適化目標に基づいて、指定された時間枠にわたる様々なプロジェクトのスケジュール案を生成することをユーザに許可しうる。この場合では、最適化目標は、「EVM−計画値(PV)(Planned Value)」として特定されており、これはプロジェクトの予測値(estimated value)を最大化するプロジェクトの集合を見出すことをユーザが望んでいることを示しうる。さらに、指定された時間枠は、ここでは「計画対象期間」表示ボックスに示され、指定された開始日から開始される12ヶ月の時間にわたるプロジェクトのスケジュールを計画することをユーザが希望していることを示す。
図3を参照すると、図表300は、いくつかの実施形態による、複数のプロジェクトへの資源の割り当てに関するシステムへの入力を受けるグラフィカルユーザインタフェースの表示の第2の例を示す。ここで、プロジェクトの一覧305によって示されるように、12ヶ月のスケジュールに置かれていると考えられうる多数のプロジェクトがユーザに提示されうる。いくつかの実施形態では、プロジェクトオプション310に示されるように、ユーザはまた、各プロジェクトに対してある除外または他の変更を特定することが可能でありうる。例えば、いくつかの例として、ユーザは、あるプロジェクトを検討から除外するように特定して、結果としてそのプロジェクトをグレー表示とすることが可能である。他の場合では、ユーザは、どのプロジェクトが必須(required)であるべきか、または単に優先(preferred)であるべきかを特定することによって最適化問題に対してさらなる制約を加えることが可能である。さらに、ユーザはまた、スケジュール内で残されているのが限られた量の時間でありうる事象において、プロジェクトが分割可能であるどうかを特定することが可能であってよく、かつ、ユーザは部分的なプロジェクトを完了させるか否かを許可するように希望してもよい。いくつかの実施形態では、プロジェクトの一覧はまた、各プロジェクトを完了することによって得られる予測値315を含みうる。いくつかの実施形態では、プロジェクトの一覧はまた、例えば示されている指定のような、優先度または重要度の指定を含みうる。いくつかの実施形態では、プロジェクトは、図示しない関連するプロジェクト依存性を有してよく、前記プロジェクトが開始されうる前に完了されるように決定される1つまたは複数のプロジェクトを特定する。いくつかの実施形態では、プロジェクトの一覧305はまた、例えば完了への予測時間、完了への予測費用、必要な資源の種類等であるプロジェクトについての他の情報を含みうる。
図4を参照すると、図表400は、いくつかの実施形態による、複数のプロジェクトへの資源の割り当てに関するシステムへの入力を受けるグラフィカルユーザインタフェースの表示の第3の例を示す。ここで、ユーザに、様々なプロジェクトに資源を割く場合にどの種類の資源が検討されるべきかを特定するためのオプションが提示されうる。いくつかの実施形態では、指定された計画対象期間においてどんなプロジェクトを完了するべきかを検討する場合に、複数のプロジェクトでの使用に利用可能な資源は、制約として考慮されうる。上記のように、資源は、あるタスクの集合の完了に有用な技能についてのある集合を所有する業務の専門家の一種として規定されうる。これらの資源の種類の例としては、コンピュータプログラマ、ビジネスアナリスト、管理補佐、市場調査員、プロジェクトマネージャ等を含みうる。他の場合では、資源はまた、例えばコンピュータの数、印刷材料、建設材料、倉庫スペース等の量である実体のある資産を含むことが可能である。
いくつかの実施形態では、ユーザは、資源フィルタ405を介するなどして、指定された計画対象期間に従い、プロジェクトに対して費やすためにどんな資源が検討されうるかでフィルタリングすることが可能でありうる。ここで、初期設定では、検討対象であるすべての現在の資源となっており、それは例えば有給職員、在庫品、利用可能な倉庫およびオフィスのスペース等である企業のデータベース内において知られているすべての資源を意味しうる。資源のそれぞれの有用性は、予め特定され、システムに入れられうる。資源フィルタ405は、いくつかの例として、例えばスケジュールによる資源の制限、経験のレベル、経験の種類または既知の業者または販売店を含むように一覧を拡大することなどである他のオプションを含みうる。
いくつかの実施形態では、ユーザはまた、例えばオプション410であるさらなる制約を特定することが可能でありうる。ここで、ユーザはまた、指定された計画対象期間内でプロジェクトを完了するための既知の制約に基づいて、検討されうる資源の量をさらに制限するような任意のさらなる財務的な制約を加えることが可能でありうる。いくつかの実施形態では、さらなる制約は、当業者にとって明らかでありうるものが検討されることが可能であり、実施形態はそれに限定されない。
いくつかの実施形態では、例えばネットワークベースシステム105である本開示の態様によるシステムは、例えば図2から図4において説明されるように、ユーザにより与えられて各プロジェクトと関連するすべての情報にアクセスしうるものであり、例えば費用に対して比較される利益または他の種類のある利益値を最大化することである最適化目標を最大化しつつ、与えられた予算的な支出内で資源を効率的に利用するものである、指定された計画対象期間にわたるプロジェクトのスケジュールを決定しうる。このスケジュールを決定するための技術の例は、図11から図13に関して以下に説明される。

出力の例
いくつかの実施形態では、最適化目標を最大化し、かつ、指定された予算の制約内で利用可能な資源を考慮に入れるプロジェクトのスケジュール案を決定した後で、例えばネットワークベースシステム105である本開示の態様によるシステムは、ユーザに対してこれらの結果を反映する様々な出力を与えうる。
図5を参照すると、図表500は、いくつかの実施形態による、最適化目標を最大化するいくつかのプロジェクトを列挙する全体的なスケジュールについての表示の一例を示す。図表500における例である表示は、一種のエグゼクティブサマリーを表しうるものであり、計画対象期間内の包含プロジェクトの予測値を強調している。さらなる情報には、いくつかの例として、プロジェクトを完了するための予測費用、プロジェクト数、現在スケジュールに含まれるプロジェクトの完了により企業内のいくつの部署または部門が応対されるか、または利益を得るか、利用可能な資源の種類についての任意の残容量、利用可能な資源の割合としての対応する資源の利用およびスケジュール案に含まれるプロジェクトの種類の内訳が含まれうる。いくつかの実施形態では、除外プロジェクトの一覧またはサマリーもまた、検討または表示可能である。いくつかの実施形態では、システムは、さらなる入力を考慮し、様々な変更を通してスケジュールに適合するように除外プロジェクトを検討しうるものであり、その例が以下でさらに説明される。
図6を参照すると、図表600は、いくつかの実施形態による、スケジュール案に含まれるプロジェクトについての追加属性を説明する表示の第2の例を示す。この場合、例である表示は、プロジェクトについての様々な属性の図示を提供しうる。例えば、円610は、スケジュール案に含まれる異なるプロジェクトのそれぞれを表し、それらの大きさは、例えばプロジェクトの完了により得られる予測値であるプロジェクトについての属性を示しうる。円610は、例えばそのプロジェクトが属するカテゴリまたは部門などである、共通のテーマによってまとめられうる。さらに、いくつかの実施形態では、様々な資源により満足される、例えば計画された開始日および終了日、プロジェクト完了により得られる予測値、総費用およびプロジェクト完了のために必要となりうるロールの種類などであるプロジェクトについての様々な属性を説明する、例えば図表620であるより詳細な表が各プロジェクトについて提供されうる。本明細書の記載と一致し、各プロジェクトに関連して当業者に明らかである他の種類の情報がまた含まれうるものであり、実施形態はそれに限定されない。
図7を参照すると、図表700は、いくつかの実施形態による、スケジュール案に含まれるプロジェクトについての他の属性を説明する表示の第3の例を示す。ここで、プロジェクトの一覧705は、リストの形で表示されうる。様々な他の情報には、例えば、各プロジェクトの推奨状態710(例えば、「包含」、「除外」など)、各プロジェクトの予測値、予定開始日および終了日715、予測費用、各プロジェクトが属する指定のチーム、各プロジェクトの優先度または重要度である指定のレベル等が含まれうる。
いくつかの実施形態では、一覧内のあるプロジェクトが選択されると、プロジェクトについてのより詳細な説明が第2の表示720に表示されうる。例えば、ここでは、プロジェクトの完了に必要なロールの一覧が列挙されている。この場合、特定の技能を備える様々な人物として列挙される様々な資源が、プロジェクトに割り当てられ、各資源に対する様々な予測容量を含む。これらの内訳は、ユーザが、どんな資源およびどんな費用が各プロジェクトと関連しているかをより明確に見ることができるようにしうる。いくつかの実施形態では、ユーザはまた、これらの表示に基づいて、いくつかの提案されたプロジェクト、資源、日付等を変更することが許可されうる。
図8を参照すると、図表800は、いくつかの実施形態による、スケジュール案に含まれるプロジェクトについての他の属性を説明する表示の第4の例を示す。この場合、プロジェクトの一覧705は、プロジェクトがどれだけ続きうるのかについての予測される時間の流れを一連の線で視覚的に示す、予定表805に表示されうるものである。この図を通して、システムはどのプロジェクトが同時に稼動中または行われているかをより明確に示しうる。さらに、ここには示していないが、この予定表の図はまた、他のプロジェクトの終了後にちょうど発生する開始の予定時間に基づいて、どのプロジェクトが他のプロジェクトに依存しうるかを示しうる。
いくつかの実施形態では、例であるこの表示はまた、例えば各月である指定された期間での資源の利用についての棒グラフ810を示しうる。ここでは、例えば、ビジネスアナリスト、一般資源、業者および資源管理者についての資源の利用率を棒グラフ810に特定している。利用されている資源の種類に基づいて、他の資源の種類が表示されうるものであり、実施形態はそれに限定されない。
図9を参照すると、図表900は、いくつかの実施形態による、スケジュール案に含まれるプロジェクトについての他の属性を説明する表示の第5の例を示す。この場合、指定された時間枠にわたるロール905の利用が、一種のヒートマップ910で説明されうる。ロールは、同じ技能を備える資源の集団として規定されうる。一例として、所与の各日においてロールがどれだけ利用されているかに関する指定に加えて、指定された計画対象期間の各月が視覚的に表示されうるものである。この場合、指定は、異なる色により示されうるものであり、百分率利用のスケール915に対応する。このように、ユーザは、ある資源について利用状態である、または利用下にある場所を確認することが可能でありうる。そして、さらなるプロジェクトまたは他のタスクを、資源が利用下である時間の間に検討してもよく、またはさらなる資源を、資源が利用状態である特定の時間において費やしてもよい。他の例として、様々な資源は、休暇をとることが可能でありうるときをわかっていてもよく、またはより自由な時間があると期待されるときをわかっていてもよい。
図10を参照すると、図表1000は、いくつかの実施形態による、スケジュール案に含まれるプロジェクトについての他の属性を説明する表示の第6の例を示す。例であるこの表示において、システムは、様々な種々の統計1005に加えて、スケジュール案に包含および除外される様々なプロジェクトの全体的な一覧を提供しうる。例であるこれらの統計1005は、ユーザから受けたシステムへの入力に基づきうる、または他の場合では、すでにシステムに属する、プロジェクトへの予めの指定に基づきうる。例えば、プロジェクト一覧705内の各プロジェクトは、そのプロジェクトは包含されなければならない、すなわち「必須」であるということが特定されているプロジェクトかどうか、そのプロジェクトは包含されることが望ましい(preferred)ということが特定されているプロジェクトかどうか、そのプロジェクトは予め指定された開始時間から移動させることが可能であるかどうか、およびそのプロジェクトは分割時間で行わせるために分割させることが可能でありうるかどうかといったプロジェクトの種類を含みうる。表示に適切である、およびプロジェクトまたはスケジュール案に適切である他の種類の情報が、当業者には明らかでありうるものであり、本明細書においてまた検討されうるものであり、実施形態はそれに限定されない。

最適化アルゴリズムの例
以下は、いくつかの実施形態による、指定された計画対象期間内に完了されるプロジェクトの選択が、本開示の態様においてどのように決定されうるかに関する説明の例であり、様々な資源および予算の制約が与えられているプロジェクトにどのような資源が割り当てられうるかを含む。
図11を参照すると、フローチャート1100は、いくつかの実施形態による、指定された計画対象期間内で完了されるプロジェクトのスケジュールを生成するための方法論の一例を説明する。例である方法論は、例えば、ネットワークベースシステム105である本開示の態様のシステムまたはサーバによって実行されうる。いくつかの実施形態では、ネットワークベースシステム105は、クライアント装置130を介して例えばクライアント132などであるユーザから受けるいくつかの入力にアクセスしうる。いくつかの場合では、入力のいくつかはまた、例えばデータベース115などである、1つまたは複数のプロジェクトについての様々な属性を記述するように予めプログラムされて用いられたデータベースからもたらされうる。
いくつかの実施形態では、例である方法論は、まず、スケジュール案を生成するために用いられることとなる別個の変数のすべてにアクセスすることによって始まりうる。例えば、ブロック1102において、システムはスケジュール案に含むことを検討中の複数のプロジェクトにアクセスしうる。先に述べたように、プロジェクトは企業の特定の目的を有する予定されたひとまとまりの仕事として規定されうるものであり、企業に関するある値を生じうる。プロジェクトの種類の例は、例えば図3から図10である先の図面に説明される。さらに、ブロック1104において、システムは、スケジュール案がどれぐらいの長さを占めているかに関する時間範囲を定める計画対象期間にアクセスしうる。例えば、先の図面の説明では、例である計画対象期間は12ヶ月の期間にわたるものとして定められた。いくつかの実施形態では、計画対象期間はまた、必ずしも現代とは限らなくともよい開始日を含む。
ブロック1106において、システムは、生成されるスケジュールにおいて様々なプロジェクトに割り当てるために検討される複数の資源にアクセスしうる。先に述べたように、資源は、資格をもつタスクの集合を実行することが可能である有資格の専門家の存在として規定されうる。他の場合では、資源は、コンピュータ、印刷機、科学的機械、建設機械等である他の実体のあるツールおよびマシンを含むことが可能である。資源の種類の例は、例えば図4から図10である先の図面に説明される。いくつかの場合では、資源は、プロジェクト上で動くためにどの資源が有用でありうるかをより説明しうるような属性技能を有しうる。同様に、各プロジェクトは、プロジェクトを完了するために適する必要とされる定まった技能を有しうる。
ブロック1108において、いくつかの実施形態では、システムは、複数の予算支出にアクセスしうるものであり、各予算支出は特定の資源に関連し、各予算支出は、各資源を複数のプロジェクトにわたって用いることが可能である最大利用可能容量を示す。予算支出の例は、例えば1日あたり8時間または1週あたり40時間などのような、日毎または週毎の従業員の時間ごとの最大容量を含みうる。予算支出の他の例は、例えば1日あたり15時間または1週あたり100時間などのような、研究所の使用に関する時間ごとの最大容量を含みうる。予算支出の他の例は、業者利用の予算である$20,000またはブルドーザーを借りるための$5000であるような財務予算を含みうる。いくつかの実施形態では、他の場合では少なくともいくつかの予算支出がユーザによって特定され、かつ、ユーザインタフェースを介してシステムにおいて受けられうる一方で、各資源に関連する予算支出は、データベース115にすでに予め指定され、かつ、記憶されうる。
ブロック1110において、システムはまた、複数の費用の制約にアクセスしうるものであり、各費用の制約はあるプロジェクトに関連し、前記プロジェクトの完了に関連する予測財務費用を示す。いくつかの実施形態では、費用の制約はプロジェクトの完了に必要とされると見積もられるすべての資源の予測合計値に基づきうる。これらの関連する費用の例は、例えば図5から図10のように、先の図面に説明されうる。
ブロック1112において、システムはまた、複数の利益値にアクセスしうるものであり、各利益値はあるプロジェクトに関連し、前記プロジェクトの完了に関連して得られる予測値を示す。利益値の例は、財務通貨で表される財務収益、もしくは順位付けられたスコア、生産性の増加、増加したエネルギーの節約、純現在価値(NPV)、プロジェクト完了により得られる評価または企業によって用いられる他の数値などの他の種類の値を含み、当業者に明らかでありうる。これらの関連する値の例は、例えば図3および図5から図10のEVM値のように、先の図面で説明されうる。
ブロック1114において、システムはまた、各プロジェクトに関連する複数のプロジェクト依存性にアクセスしうるものであり、プロジェクト依存性の値は、他のプロジェクトの完了の要件としてブロック1102でアクセスしたどのプロジェクトを完了させなければならないかを示す。いくつかの実施形態では、これらのプロジェクト依存値は、従属の上三角行列Uの正方の次元iで表現または表されうるものであり、iはアクセスしたプロジェクト数に等しく、プロジェクトiがプロジェクトjの要件であればUij=1となり、そうでなければUij=0である。いくつかの実施形態では、プロジェクト依存性は、各プロジェクトとともに列挙されうるものであり、システムは、いくつかの場合では、こうした上三角行列Uで表現され、各プロジェクトに関して列挙した依存性に基づいて、プロジェクト依存値を生成するように構成されてよい。他の場合では、上三角行列Uは例えばデータベース115などにすでに格納されうる。いくつかの実施形態では、いくつかのプロジェクトは、それらに結びつけられる関連する依存性を何も有しない場合がありうる。これらの「独立する(independent)」プロジェクトのいくつかはまた、プロジェクトに求められる開始時間または終了時間を何も有しない場合があり、予め完了されている必要があるような要件であるプロジェクトが何もなく、いつでもそれらを実行することが可能であることを意味する(すなわち、それらは「移動可能(shiftable)」である)。これらの「独立する」かつ「移動可能」なプロジェクトは、本明細書において「フロート(floater)」プロジェクトと称されうる。
ブロック1116において、システムは、1つまたは複数の依存経路を決定しうるものであり、プロジェクト依存値に基づいて、指定された順序で完了される一連のプロジェクトまたは一続きのプロジェクトを示す。つまり、依存経路内のあるプロジェクトは、依存経路上で先行するプロジェクトが完了するまで開始できない。概して、プロジェクトは、前記プロジェクトがいつ開始できるかに関連するある時間的制約を含むのであれば、依存経路内にありうる。例えば、指定された開始時間または終了時間を有するが、それが従属するような文字通りのプロジェクトを有さないプロジェクトが、依存経路内にいまだありうる場合、このプロジェクトは長さ1の依存経路内にある。いくつかの実施形態では、複数の依存経路が決定されうる。いくつかの場合では、いくつかの依存経路は、共通して1つまたは複数のプロジェクトを有することとなり、複数のプロジェクトが開始可能となる前に予め要求されうるあるプロジェクトを完了することを意味している。いくつかの実施形態では、ブロック1116において、システムはまた、どのプロジェクトがフロートでありうるか、すなわち、どのプロジェクトは依存性がないかを決定しうる。つまり、他のプロジェクトが、依存性はないが確かに要求される開始日または終了日を有しうる一方で、いくつかのプロジェクトは、依存性を有さずそれらに置かれる時間の制約を有さなくてもよい。いくつかの実施形態において、このブロックでの依存経路の決定に関するさらなる詳細を、図12Aから図12Cで以下に説明する。
ブロック1118において、システムは様々なプロジェクトをスケジュール案に割り当てうる。スケジュール案における時間の長さは、システムによってアクセスされた計画対象期間に合わせられうる。提案されるスケジュールの開始日は、ユーザによって特定された開始日に基づきうるか、または他の場合では、スケジュール案が生成された日から数日とされる初期設定の開始日に基づきうる。
システムは、他のプロジェクトと比較して最適化目標をより満足するプロジェクトを決定することに基づいて様々なプロジェクトを割り当てうる。いくつかの実施形態では、プロジェクトはまず、どれほど良好にプロジェクトが最適化目標を満足するかに基づいて、順位付けまたは配列されうる。しかしながら、他のプロジェクトの完了に依存しているプロジェクトがある、すなわちプロジェクトが依存経路に沿うのであれば、その後これらのプロジェクトを分離するまたはそれだけにすることを検討することは意味をなさないだろう。従って、いくつかの実施形態では、システムは、依存経路内のプロジェクトの合計値に基づいて依存経路の値を順位付けしうる。いくつかの実施形態において、最適化目標を最良に満足するためにプロジェクトを割り当てることのさらなる詳細が、図13で以下に説明される。
いくつかの実施形態では、ブロック1120において、ブロック1118で割り当てられるプロジェクトに基づくスケジュール案を、任意の除外されたプロジェクトおよびそれらがもたらしうる値を解析することにより変更しうる。システムはまた、ユーザに対して、スケジュール案を変更することでより多くの値を見出す方法を検討するにあたって、あるフレキシビリティを許可するために、解析対象の除外プロジェクトを考慮しうる。いくつかの実施形態では、除外プロジェクトは、スケジュール案が基づく1つまたは複数の制約を増やすまたは緩和することによって検討されうる。例えば、システムは、1つまたは複数のプロジェクトが他のプロジェクトの完了に依存しうるものでないように、1つまたは複数の予算変数を増加させること、1つまたは複数の資源変数を増加させること、計画対象期間を拡大すること、および/または1つまたは複数の依存値を変更することを許可しうる。システムは、通常ユーザにより入力されるこれらの変更のいずれも受けるように構成されうるものであり、いくつかの場合では、本開示の最適化アルゴリズムが再実行されてこれらの変更が有しうる効果を確認しうる。例えば、予算不足、資源不足、予定表の不足、依存性不足等が原因でプロジェクトが除外されたということが決定されうる。これらの原因は、以前に除外されたプロジェクトを、修正されたスケジュール内に今は含まれることをその後許可しうるようなこれらの制約のうちのひとつの緩和を介して決定されうる。いくつかの実施形態では、システムはまた、時間移動の制約を緩和することを許可しうるものであり、それによって、システムに対して、プロジェクトがその要求される開始時間間隔に適合することができないことを理由に、プロジェクトが除外されていてもよいということが決定されることを許可する。いくつかの実施形態では、この除外の解析は、複数の制約に対して、および/または除外されている複数のプロジェクトの原因を解析するために実行されうる。
いくつかの実施形態では、ブロック1122において、システムは、解析された除外に基づいて、修正されるスケジュールに提案され、かつ、包含される1つまたは複数の変更を考慮しうる。いくつかの実施形態では、解析された除外に基づいて、システムは、その後ユーザが選んで選択することが可能でありうる変更に関して1つまたは複数の提案を出すように構成されうる。例えば、システムは、解析された除外に基づいて、以下に示す1つまたは複数の提案を出すように構成されうる。
・プロジェクトに1つ余分なロールを加えることが、結果として、割り当てられている1つまたは複数のプロジェクトとなりうる。
・予算を10%増加すると、プロジェクトのある群が割り当てられることが可能となりうる。
・特定の時間間隔内で1つのロールの容量を増加すると、あるプロジェクトを割り当てることが可能となりうる。
・予算を増加すると、結果として、新しい費用の調整に関する値において大きな増加性の利得となりうる。
プロジェクトの値に対して小さい不足をカバーすると、結果として、全体的なスケジュールの値がよりよくなりうる。例えば、休暇中の、プロジェクトに欠かせない従業員は、いくつかの計画化(formulation)の下で適切に割り当てられなかったプロジェクトにより、プロジェクトに対して最初はスケジュールに含めないようにさせうる。しかしながら、プロジェクトを完了することの価値が、例えば、従業員が休暇から戻るときである、計画対象期間内の異なる時間のそのときに、いかなる潜在的な作業の遅れまたは他の費用にもかかわらずプロジェクトを続けることが依然として価値をもたらす場合には、スケジュールにそのプロジェクトを含むことは依然として価値がありうる。
システムは、その後スケジュール案に対する変更として組み込まれるこれらの提案のうちの1つまたは複数を受け入れるように構成されうる。
ブロック1124において、システムはその後、ブロック1118でスケジュール案に割り当てられた順位付けされたプロジェクトのいずれにでも基づき、またはブロック1120および1122において実行される解析に基づく任意の組み込まれた変更をも含むスケジュールを生成するように構成されうる。いくつかの実施形態では、このスケジュールは、例えば図5から図10に説明される例のいずれかを介する、様々な異なる形式で表示されうる。生成されたスケジュールはまた、例えば図5から図10に説明される例のいずれかである、スケジュールに関する様々な統計および数値を説明するように表示可能である追加の情報を含みうる。
図12Aを参照すると、フローチャート1200は、いくつかの実施形態による、図11のブロック1116における依存経路を決定するための方法論の一例を提供する。ブロック1202で開始されると、システムは、例えば上三角行列における値であるプロジェクト依存値を、1つまたは複数の有向非巡回グラフ(DAG)に変換しうる。DAGは、頂点と有向の辺との集まりとして規定されうるものであり、各辺は1つの頂点とその他を連結し、ある頂点vから開始して、最終的に折り返して再びvに戻る一連の辺に続く道がないようにする。この場合、各頂点はプロジェクトを表現し、第1のプロジェクトからの各有向辺は、第2のプロジェクトのプロジェクト依存値が第1のプロジェクトに依存しているかどうかに基づいて、第2のプロジェクトを指すものを表現する。単純に以降のプロジェクト依存値に基づいて、複数のDAGが生成され、複数のプロジェクトをともに連結する有向辺を作成しうる。
あるいは、いくつかの実施形態では、1つまたは複数のDAG以外の他の種類の関係が生成されうる。通常、プロジェクト依存値に基づき、当業者に明らかである複数のプロジェクトのそれぞれの依存関係を規定する1つまたは複数のデータ構造が生成されうるものであり、本実施形態はそれに限定されない。
いくつかの実施形態では、ブロック1204で、システムはプロジェクトの集合を複数のクラスタに分割しうる。各クラスタは、総プロジェクト数のうちのプロジェクトのサブセットを含みうる。例えば、スケジュール内に配置が検討されるプロジェクトの集合全体が150プロジェクトであれば、システムは、プロジェクトの集合をそれぞれ15プロジェクトとする10クラスタに分割しうる。いくつかの実施形態では、クラスタへのプロジェクトの選択は、ランダム化された処理である。各プロジェクトがそれに関連してどの程度の依存性を有するかは、経験的にわからないため、各クラスタがどの程度の依存性を有するかという観点から、ランダムにプロジェクトをクラスタに分割することが、概して、結果的に最も可能性のある均一なプロジェクトの分散をもたらすこととなる。他の場合では、プロジェクトは、例えばアルファベット順でのプロジェクトの整列、予測値や要求されるロールの種類に基づくストリーム、プロジェクト等に基づいてプロジェクトを均一に分散することである、他の処理を通してクラスタに細分されうる。いくつかの実施形態では、システムはまた、各クラスタに含まれる最適なプロジェクト数を決定しうる。最適なプロジェクト数は、統計的分析に基づいてよく、各クラスタの大きさが変わるときに、平均計算時間および資源(例えば、メモリ)の平均量が測定される。例えば、クラスタの大きさを49または51プロジェクトに設定することで、概して、結果的に計算時間は長く、使用される資源は多くなるという意味では、最適なクラスタの大きさは50プロジェクトであると予め決定されていてもよい。いくつかの実施形態では、システムは、プロジェクトの集合をクラスタへ分割することの一部として最適なクラスタの大きさを決定するために、この統計的解析を実行するように構成されうる。
いくつかの実施形態では、ブロック1206において、システムは、各クラスタについて、あるクラスタ内のプロジェクトの依存経路を決定しうる。各クラスタ内のこれらの小さな依存経路の集合は、本明細書においてクラスタの依存経路と称されうる。つまり、同一クラスタ内のプロジェクトにわたってのみ、依存経路が形成されうる。いくつかの実施形態では、これらのクラスタ依存経路は、そのあるクラスタに対して生成された依存性のDAGの深さ優先探索を実行することによって生成されうる。これは、存在する時間では不十分となる依存経路を導く可能性があるが、クラスタ依存経路を生成することで、システムに対してすべてのプロジェクトおよびすべての依存性を一度に検討する必要がないようにさせる。これは、プロジェクトの集合全体をこれらのクラスタのサブセットに分割することによって、システムに対して大量のプロジェクトをより効率的に扱うことを許可しうる。さらに、いくつかの実施形態では、クラスタの経路依存性を決定する処理は、複数の並行するプロセッサにわたって並列化されうるものであり、計算スピードがさらに上がる。
いくつかの実施形態では、ブロック1208において、システムは、その後完成依存経路を形成するために、他のクラスタからのクラスタ依存経路をともに併合(merge)しうる。つまり、システムは、その後、まだ連結していないあらゆる依存性に関して、他のクラスタ依存経路の不完全な辺を調べることによってクラスタ依存経路の不完全な辺を連結しうる。複数のクラスタ依存経路は、すでに各クラスタ内でいくつかの連結を作っているため、調べられる必要がある不完全な辺の数が劇的に減少しうるものであり、それによって計算時間が有意に減少する。例えば、プロジェクトの集合全体をクラスタに分割せずに、プロセッサに対して、連結された依存性を決定するためにすべてのプロジェクトを一度に検討させてもよい。対照的に、クラスタ依存経路を一緒に併合することは、その後システムが、クラスタ依存経路の不完全な辺のみを検討することを必要とすることを許可し、それによって、いずれかがすでに連結されているか、または依存性を何も有さないような多くの無関連のプロジェクトを検討することが省かれる。プロジェクトの依存性を調べることを必要とすることからプロジェクトを自然に省くというこの概念を、本明細書においてはプルーニングすること(pruning)と称しうる。
いくつかの実施形態では、ブロック1210において、生成された完成依存経路をここで有しているため、依存経路を、予め決定された価値基準に基づいて順位付けまたは整列しうる。例えば、価値基準は、指定された最適化目標のために各依存経路がどの程度の価値を寄与するかを含みうる。例えば、最適化目標が利益を最大化することであれば、その後完成依存経路は、各依存経路の完了がもたらしうる予測収益がどの程度かによって順位付けされうる。通常、価値基準をより満足する依存経路は、そうでない依存経路よりも高い「密度」を有するといわれうる。つまり、依存経路の「密度」は、依存経路の全体的な収益(return)の量の定量的な表現でありうる。いくつかの実施形態では、依存経路の「密度」は、依存経路内でプロジェクトによって得られるある利益に対するプロジェクトの完了に関連する費用の比率を含む一方で、他の場合では、依存経路の「密度」は、利益および費用の間の差を含む。
いくつかの実施形態では、ブロック1212において、システムは、残りの未決定の依存性をどれでも決定しうる。例えば、依存性が何もないプロジェクトおよび他のフロートプロジェクトはまた、依然として順位付けされる必要がありうる。いくつかの実施形態では、依存性が何もないプロジェクトおよび他のフロートプロジェクトは、独立した順位において順位付けされうる。いくつかの実施形態では、依存経路および依存性のない任意のプロジェクトまたは他のフロートの順位のマスターリストが、本開示の態様による最適化アルゴリズムの後の段階での使用のために記憶されうる。
図12Bを参照すると、図表1250は有向非巡回グラフのいくつかの例である図示を提供する。ここで、各頂点はプロジェクトの集合全体の中の1つのプロジェクトを表現する。有向辺は、他の頂点を指す矢印によって表現される。それゆえ、様々な経路が、図表1250に示される経路の記述と一致するこれらの2つの例のDAGの経路において示され、セミコロンによって分けられている。
図12Cを参照すると、フローチャート1270は完成依存経路を生成するための例を提供し、フローチャート1200における記述と一致する。示すように、プロジェクトの集合は、複数の部分にランダムに分割されうるものであって、それらの依存値に基づいて、各部分におけるプロジェクトを連結する深さ優先探索が実行される。そして、これらの部分的連結のそれぞれは、他のランダムな部分からの他の部分的連結とともに併合されうるものであり、それによって1つまたは複数の完成依存経路を生成する。例えば、依存性がないプロジェクトと他のフロートとを解析および処理するなどのように、未決定の依存性が関連付けられうる。
図13を参照すると、フローチャート1300は、いくつかの実施形態による、図11のブロック1118においてプロジェクトを割り当てることを決定するための方法論の一例を提供する。指定された計画対象期間に適合するようにプロジェクトを割り当てるための処理に、入力として、生成された依存経路が含まれることを想起されたい。いくつかの場合では、この処理は、入力として、順位付けられた順序で依存経路およびフロートを含む。いくつかの実施形態では、ブロック1302において、システムは依存経路およびフロートを別個の指定で分類しうるものであり、各指定は、生成されるスケジュールに含まれる依存経路内(またはフロートとして独立する)のプロジェクトの重要度を特定する。例えば、いくつかの実施形態では、依存経路およびフロートは、必須、優先および選択的の3つの別個の集合のうちのひとつに分類されうる。例えば、プロジェクトのうち1つでも、図3のプロジェクト一覧305内の特別な指定のいずれかが与えられた場合、これらの指定は、プロジェクトに関する予め規定された属性に基づきうる。いくつかの実施形態では、様々な指定を有する複数のプロジェクトを伴う依存経路について、システムは、その依存経路内の任意のプロジェクトに与えられた最高位または最重要な指定に基づいて、全体の依存経路を指定するように構成されうる。例えば、10プロジェクトの依存経路において、1つでもプロジェクトが「必須」に指定されていれば、その後全体の依存経路は必須として指定されうる。最高の重要度の指定に分類されたプロジェクトは、より低い重要度に指定されている他のプロジェクトよりも先にスケジュールに割り当てられることとなる。例えば、「必須」として指定されている依存経路のプロジェクトおよびフロートは、「優先」カテゴリに指定されるどのプロジェクトよりも前にスケジュールに割り当てられることとなる。
ブロック1304において、いくつかの実施形態では、システムは、依存経路およびフロートにわたり、資源を割り当てることを繰り返す。いくつかの実施形態では、システムはまず、最重要かつ最高値の依存経路およびフロートに資源を割り当てうるものであり、徐々に低い重要性かつ低い価値の依存経路およびフロートまで順に続ける。この処理は、プロジェクトに求められる規定のロールに基づいて、すべての利用可能な資源が割り当てられるまで継続しうるものであり、いくつかの場合では、最低優先度かつ最低値の依存経路およびフロートには、どの資源も割り当てないようにしうる。いくつかの実施形態では、フロートプロジェクトは、フロートが依存経路内の複数のプロジェクトの累積的な密度の合計よりも大きい密度を有する場合、依存経路内のプロジェクトよりも資源を与えられうる。いくつかの実施形態では、様々な依存経路およびフロートへの資源の割り当てはまた、例えば資源に関連する任意の予算支出およびプロジェクトに関連する任意の予算などである他の様々な制約を考慮しうる。例えば、プロジェクトは関連予算を有しうるために、確かな高い価値または高価である資源をそのプロジェクトに費やすことができないということが決定されうる。代わりに、同じ機能を実行することが可能であるより安価な資源がプロジェクトに費やされうる。
いくつかの実施形態では、ブロック1306において、システムはその後、要求に合うそれらの資源のすべてを有する依存経路をスケジュールに適合しうる。例えば、依存経路内のプロジェクトの累積密度の合計よりも大きい、高密度値を伴うフロートはどれでも、より低い累積密度を備える依存経路よりも前にスケジュールに配置されることもありうる。いくつかの実施形態では、計画対象期間が、全体の依存経路を完了する全体的な予測時間よりも短い場合に、システムはまた、一続きの依存プロジェクト内の、最新のプロジェクトの依存経路を切り詰めることを検討しうる。こうして、切り詰めたバージョンの依存経路がスケジュールに適合されうる。いくつかの実施形態では、まだ割り当てられていない残りのフロートをどれでも、時間および資源が許せば、スケジュールに適合しうる。
いくつかの実施形態では、システムはまた、優先順位付けのセットに基づいて、プロジェクト内のロールに資源を割り当てうる。この優先順位付けのセットは、いくつかの資源が他よりも希少でありうる、かつ、あるプロジェクト内のいくつかのロールが他よりも価値がありうるという推論をもちいて、システムに対してより効率的に資源を割り当てることを許可しうる。以下は、いくつかの実施形態による、システムがロールへの資源の割り当てを導くように組み込みうる優先順位付けのいくつかの例である。

ロールの優先順位付け
1.希少のロールは、より希少でないロールよりも先にマッチングされる。
2.その「コンター(contours)」が最長の非ゼロの需要の連鎖(sequence)を有するロールは、より短いそうしたコンターをもつロールよりも早くマッチングされる。いくつかの実施形態では、依存経路が生成された後で、プロジェクト内のロールは、それに費やされる、例えて言えば、高優先度である、高リスクであるまたは高価値を有するプロジェクトのために、より多くの資源を有することを許可されうるものであり。システムは、そのプロジェクトに対して、依存経路内の近くのプロジェクトからさらなる資源を引き込むことを許可しうるものであり、それによって、他のプロジェクトに対する資源割り当てを減少するが、より費やされるプロジェクトの完了を時間的に保証するように助ける。一続きのプロジェクト内のあるロールにおけるこの過剰補償の処理は、「コンター」、つまり、過剰補償される1つまたは複数のロールを有する一続きのプロジェクトを形成する。
3.プロジェクトにおける現在の時間間隔に関して、時間的により大きな拘束を伴うロールは、より小さな拘束を伴うロールよりも早くマッチングされる。

資源の優先順位付け
1.優先の資源は、非優先の資源よりも早く選択される。いくつかの実施形態では、資源がそのように指定されれば、資源は優先でありうる。他の場合では、数量、時間または予算において少ない資源は、それらの数値がより多量の資源よりも先に優先として検討されうる。
2.「スティッキー」な資源は、他よりも早く割り当てられ、「スティッキー」とは、検討中のものよりも先の時間間隔に割り振られた資源であることを意味する。
3.非フレキシブルな資源は、フレキシブルな資源よりも早く割り当てられる。非フレキシブル性は、予め指定された時間または位置の制約に基づきうる。
4.該ロール需要に相対する最小の相対誤差を有する資源(「ベストマッチ」判定基準)
5.他の事柄がすべて等しければ、該ロール需要に関して最長の利用可能な期間を伴う資源を選択する。
いくつかの実施形態では、システムはまた、1つまたは複数の以下のガイドラインに従ってプロジェクトを割り当てることができうる。
1.ロール需要が利用可能な資源容量を超えたとしても、強制的に割り当てられるという意味で、必須のプロジェクトを「過剰割り当て」することができる。この場合、結果的に利用可能な資源容量の最大の利用となるという最良の配置方針が活用されうる。
2.閾値を条件として、部分的割り当てが支援されうる。分割可能で、かつ、移動不可のプロジェクトは閾値処理を受けない。
3.持続期間が1以上(>1)の時間単位(例えば、数日、数時間など)とするフロートは、任意に分割することができる。
4.フロートは、残資源容量を最小化するようなフロートに関して、その時間間隔の範囲を選択する最適化ヒューリスティックに基づいて割り当てられる。
5.移動不可のプロジェクトは依存経路上にありうる。
6.ある時間間隔が予算不足であるとき、予算を再形成することが可能である。一例としては、再形成の機会を実行可能である、最も早く適格な時間間隔を優遇することによる。
図14を参照すると、ブロック図は、いくつかの実施形態による、マシン読み取り可能な媒体1422(例えば、非一時的なマシン読み取り可能な媒体、マシン読み取り可能な記憶媒体、コンピュータ読み取り可能な記憶媒体またはこれらの任意の好適な組合せ)からの指示1424を読み取り、全体的にまたは部分的に、本明細書で論じられる任意の1つまたは複数の方法論を実行することができるマシン1400の構成を示す。特に、図14は、コンピュータシステム(例えば、コンピュータ)の形態の例におけるマシン1400を示し、その内部で、マシン1400に対して、全体的にまたは部分的に、本明細書で論じられる任意の1つまたは複数の方法論を行わせる指示1424(例えば、ソフトウェア、プログラム、アプリケーション、アプレット、App、または他の実行可能なコード)を実行させうる。
代替となる実施形態では、マシン1400は、独立型、すなわち他のマシンに連結(例えば、ネットワークで)されうる装置として動作する。ネットワークで連結される配置においては、マシン1400は、サーバクライアントネットワーク環境におけるサーバマシン110またはクライアントマシンの容量内で、または分散型(例えば、ピアツーピア)ネットワーク環境における同位層マシンとして動作しうる。マシン1400は、ハードウェア、ソフトウェアまたはそれらの組合せを含みうるものであり、例として、サーバコンピュータ、クライアントコンピュータ、パーソナルコンピュータ(PC)、タブレットコンピュータ、ラップトップコンピュータ、ネットブック、携帯電話、スマートフォン、セットトップボックス(STB)、個人情報機器(PDA)、ウェブ装置、ネットワークルータ、ネットワークスイッチ、ネットワークブリッジまたは指示1424を順次実行可能である任意のマシン、そうでなければそのマシンによって取られるアクションを特定する任意のマシンでありうる。さらに、1つのマシン1400のみを示しているが、用語「マシン」はまた、個々に、または合同で指示1424を実行して本明細書に論じられる1つまたは複数の方法論のいずれかのすべてまたは一部を実行する機械の任意の集まりを含むように考えられうる。
マシン1400は、バス1408を介して互いに通信するように構成されたプロセッサ1402(例えば、中央処理装置(CPU)、画像処理装置(GPU)、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、無線周波数集積回路(RFIC)、またはそれらの任意の好適な組合せ)、メインメモリ1404、および静的メモリ1406を含む。プロセッサ1402が、全体的にまたは部分的に、本明細書に記載の任意の1つまたは複数の方法論を実行するように設定可能であるように、プロセッサ1402は、いくつかのまたはすべての指示1424によって、一時的にまたは持続的に設定可能であるようなマイクロ回路を含む。例えば、プロセッサ1402の1つまたは複数のマイクロ回路の集合は、本明細書に記載される1つまたは複数のモジュール(例えば、ソフトウェアモジュール)を実行するように設定可能でありうる。
マシン1400は、ビデオディスプレイ1410(例えば、プラズマディスプレイパネル(PDP))、発光ダイオード(LED)ディスプレイ、液晶ディスプレイ(LCD)、プロジェクタ、ブラウン管(CRT)もしくは画像または映像を表示することが可能であるその他のディスプレイ)をさらに含みうる。マシン1400はまた、英数字入力装置1412(例えば、キーボードまたはキーパッド)、カーソル制御装置1414(例えば、マウス、タッチパッド、トラックボール、ジョイスティック、運動センサ、視標追跡装置または他のポインティング機器)、記憶部1416、信号生成装置1418(例えば、サウンドカード、アンプ、スピーカ、ヘッドホンジャックまたはそれらの任意の好適な組合せ)およびネットワークインタフェース装置1420を含みうる。
記憶部1416は、例えば、図1から図13の説明のいずれかを含む、本明細書に記載される任意の1つまたは複数の方法論または機能を具現化する指示1424をそこに記憶するマシン読み取り可能な媒体1422(例えば、実体があり、かつ、非一時的なマシン読み取り可能な記憶媒体)を含む。指示1424はまた、マシン1400によるその実行前または実行中に、完全にまたは少なくとも部分的に、メインメモリ1404内、プロセッサ1402内(例えば、プロセッサのキャッシュメモリ内)、またはその両方に帰しうる。指示1424はまた、静的メモリ1406に帰しうる。
従って、メインメモリ1404およびプロセッサ1402は、マシン読み取り可能な媒体1422でありうる(例えば、実体があり、かつ、非一時的なマシン読み取り可能な媒体)。指示1424は、ネットワークインタフェース装置1420を介してネットワーク1426上を送信または受信されうる。例えば、ネットワークインタフェース装置1420は、任意の1つまたは複数の転送プロトコル(例えば、HTTP)を用いて、指示1424を伝達しうる。マシン1400はまた、図1から図13に記載される処理を含む、本明細書に記載の機能のいずれかを実行する手段の例を表しうる。
いくつかの実施形態では、マシン1400は、スマートフォンまたはタブレットコンピュータなどである携帯用コンピューティングデバイスであってよく、1つまたは複数の追加の入力部品(例えば、センサまたは規格)を有しうる(図示せず)。そうした入力部品の例としては、画像入力部品(例えば、1つまたは複数のカメラ)、音声入力部品(例えば、マイク)、方向入力部品(例えば、コンパス)、位置入力部品(例えば、GPS受信機)、方位部品(例えば、ジャイロスコープ)、運動検出部品(例えば、1つまたは複数の加速度計)、高度検出部品(例えば、高度計)、および気体検出部品(例えば、気体センサ)を含む。これらの任意の1つまたは複数の入力部品によって獲得された入力は、本明細書に記載のいずれかのモジュールによる使用に関してアクセス可能であり利用可能でありうる。
本明細書で用いる場合、用語「メモリ」は、一時的または持続的にデータを記憶することができるマシン読み取り可能な媒体1422を指し、限定するものではないが、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、バッファメモリ、フラッシュメモリおよびキャッシュメモリを含むと考えてよい。マシン読み取り可能な媒体1422は、一実施形態において1つの媒体であるように示されるが、用語「マシン読み取り可能な媒体」は、指示1424を記憶することができる1つの媒体または複数の媒体(例えば、集中型または分散型データベース115または関連するキャッシュおよびサーバ)を含むと考えるべきである。用語「マシン読み取り可能な媒体」はまた、マシン1400の1つまたは複数のプロセッサ(例えば、プロセッサ1402)によって実行されるときに、指示1424がマシン1400に対して、全体的にまたは部分的に、本明細書に記載される任意の1つまたは複数の方法論を実行させるために、マシン1400による実行に関する指示1424を記憶することができる任意の媒体または複数の媒体の組合せを含むと考えられうる。従って、「マシン読み取り可能な媒体」は、1つの記憶装置もしくは装置130m、140または150、ならびに複数の記憶装置もしくは装置130、140または150を含むクラウドベース記憶システムまたは記憶ネットワークを指す。従って、用語「マシン読み取り可能な媒体」は、限定するものではないが、固体メモリ、光媒体、磁気媒体またはそれらの任意の好適な組合せの形をとる、1つまたは複数の実体のある(例えば、非一時的な)データの格納場所を含むと考えられうる。
さらに、マシン読み取り可能な媒体1422は非一時的であり、内部で伝播信号を具現化しない。しかしながら、実体のあるマシン読み取り可能な媒体1422を「非一時的」と分類することは、媒体が移動不可能であることを意味すると解釈されるべきではなく、媒体が、ある物理的な場所から他へ運搬可能であると見なされるべきである。また、マシン読み取り可能な媒体1422は実体があるため、媒体はマシン読み取り可能な装置であると考えられうる。
本明細書を通して、複数の例は、1つの例として説明される構成要素、動作または構造を実施しうる。1つまたは複数の方法の独立した動作は、分離した動作として示され、説明されるが、1つまたは複数の独立した動作は、同時に動作されてよく、説明された順に動作を実行する必要はない。例である構成の分離した構成要素として提示された構造および機能性は、構造または構成要素の組合せとして実施されうる。同様に、1つの構成要素として提示された構造および機能性は、独立した構成要素として実施されうる。これらおよび他のバリエーション、変形、付加および改良は、本明細書の主題の範囲内に含まれる。
ある実施形態は、本明細書において、論理またはいくつかの構成要素、モジュールまたは機構を含むように記載されている。モジュールは、ソフトウェアモジュール(例えば、マシン読み取り可能な媒体1422上または伝送媒体内に記憶されるまたは別の方法で具現化されるコード)、ハードウェアモジュールまたはそれらの任意の好適な組合せを構成しうる。「ハードウェアモジュール」は、ある動作を実行することが可能である実体のある(例えば、非一時的な)ユニットであり、ある物理的な方法で構成または配置されうる。様々な実施形態において、1つまたは複数のコンピュータシステム(例えば、独立型コンピュータシステム、クライアントコンピュータシステムまたはサーバコンピュータシステム)またはコンピュータシステムの1つまたは複数のハードウェアモジュール(例えば、プロセッサ1402または一群のプロセッサ1402)が、本明細書に記載されるようにある動作を実行するために動作するハードウェアモジュールとして、ソフトウェア(例えば、アプリケーションまたはアプリケーション部分)によって構成される。
いくつかの実施形態では、ハードウェアモジュールは、機械的に、電子的にまたはそれらの任意の好適な組合せで実施されうる。例えば、ハードウェアモジュールは、専用回路またはある動作を実行するように持続的に構成される論理を含みうる。例えば、ハードウェアモジュールは、例えばフィールドプログラマブルゲートアレイ(FPGA)またはASICである専用プロセッサでありうる。ハードウェアモジュールはまた、ある動作を実行するようにソフトウェアによって一時的に構成されるプログラマブル論理または回路を含みうる。例えば、ハードウェアモジュールは、汎用プロセッサ1402または他のプログラマブルプロセッサ1402内に含まれるソフトウェアを含みうる。専用および持続的に構成された回路または一時的に構成された回路(例えば、ソフトウェアによって構成される)において、ハードウェアモジュールを機械的に実施するという決定は、費用および時間の考慮によってなされることが認識されるであろう。
ハードウェアモジュールは、他のハードウェアモジュールへの情報を提供すること、および他のハードウェアモジュールからの情報を受信することができる。従って、説明されるハードウェアモジュールは、通信可能に結合されているものとみなされうる。複数のハードウェアモジュールが同時に存在する場所で、通信は、2つ以上のハードウェアモジュール間での信号伝達を介して(例えば、適切な回路およびバス1408を介して)達成されうる。その時々で複数のハードウェアモジュールが構成され、または例示される実施形態において、こうしたハードウェアモジュール間の通信が、例えば、それに対して複数のハードウェアモジュールがアクセスを有するようなメモリ構造内の情報の記憶および検索を介して達成されうる。例えば、ひとつのハードウェアモジュールは、動作を実行して、それに対して通信可能に結合されるメモリ装置内にその動作の出力を記憶しうる。その後、それ以降の時間に、さらなるハードウェアモジュールが、メモリ装置にアクセスし、記憶される出力を検索および処理する。ハードウェアモジュールはまた、入力または出力装置と通信を開始してよく、資源(例えば、情報の集まり)上で動作することができる。
本明細書に記載された例である方法の様々な動作は、少なくとも部分的に、一時的に構成される(例えば、ソフトウェアによって)または持続的に関連のある動作を実行するように構成される、1つまたは複数のプロセッサ1402によって実行されうる。構成が一時的であっても持続的であっても、こうしたプロセッサ1402は、本明細書に記載の1つまたは複数の動作または機能を実行するように動作するプロセッサ実施モジュール(processor-implemented module)を構成しうる。本明細書で用いる場合、「プロセッサ実施モジュール」は、1つまたは複数のプロセッサ1402を用いて実施されるハードウェアモジュールを指す。
同様に、本明細書に説明される方法は、少なくとも部分的にプロセッサ実施されてよく、プロセッサ1402はハードウェアの一例である。例えば、方法の動作のうち少なくともいくつかは、1つまたは複数のプロセッサ1402またはプロセッサ実施モジュールによって実行されうる。本明細書で用いられる場合、「プロセッサ実施モジュール」は、その内部にハードウェアが1つまたは複数のプロセッサ1402を含む、ハードウェアモジュールを指す。さらに、1つまたは複数のプロセッサ1402はまた、「クラウドコンピューティング」環境内または「サービス型ソフトウェア(software as a service)」(SaaS)として、関連する動作の実行をサポートするように動作しうる。例えば、動作のうちの少なくともいくつかは、一群のコンピュータ(例としては、プロセッサ1402を含むマシン1400)によって実行されうるものであり、これらの動作は、ネットワーク1426(例えば、インターネット)を介して、かつ、1つまたは複数の適切なインタフェース(例えば、API)を介してアクセス可能であることを伴う。
ある動作の実行は、1つまたは複数のプロセッサ1402に分布されうるものであり、1つのマシン1400内に存在するだけでなく、いくつかのマシン1400にわたって展開される。ある実施形態では、1つまたは複数のプロセッサ1402またはプロセッサ実施モジュールは、1つの地理的位置(例えば、ホーム環境、オフィス環境またはサーバファーム内)に配置されうる。他の実施形態では、1つまたは複数のプロセッサ1402またはプロセッサ実施モジュールは、いくつかの地理的位置にわたって分布されうる。
特別に別の方法で示すものでなければ、例えば「処理すること(processing)」、「計算すること(computing)」、「計算すること(calculating)」、「決定すること(determining)」、「提示すること(presenting)」、「表示すること(displaying)」等の語を用いる本明細書における議論は、情報を受信し、記憶し、送信し、または表示する1つまたは複数のメモリ(例えば、揮発性メモリ、不揮発性メモリまたはそれらの任意の好適な組合せ)、記録機または他のマシン構成要素内の物理的な(例えば、電子的、磁気的または光学的)量として表現されるデータを操作または変形するマシン1400(例えば、コンピュータ)の動きまたは処理を指しうる。さらに、特別に別の方法で示すものでなければ、用語“a”または“an”は、特許書類においては普通であるように、一例以上の1つまたは複数を含むように本明細書で用いられる。最後に、本明細書で用いる場合、接続詞“or(または)”は、特別に別の方法で示すものでなければ、非排他的な“or”を指す。
本開示は、例示であり、限定するものではない。本開示に照らして、さらなる変形が当業者にとって明らかであろうものであり、かつ、添付の特許請求の範囲の範囲内に含むことが意図される。

Claims (20)

  1. プロセッサによって、複数のプロジェクトにアクセスすることと、
    前記プロセッサによって、前記複数のプロジェクトのうち少なくともプロジェクトのサブセットを完了する時間の長さを示す計画対象期間にアクセスすることと、
    前記プロセッサによって、複数の資源であって、前記複数の資源の各資源が前記複数のプロジェクトの少なくとも1つのプロジェクトを完了するために前記資源によって実行可能である1つまたは複数の機能を特定する前記複数の資源にアクセスすることと、
    前記プロセッサによって、前記複数の資源の各資源について、各資源を前記複数のプロジェクトにわたって利用することが可能である最大利用可能容量を示す予算支出にアクセスすることと、
    前記プロセッサによって、前記複数のプロジェクトの各プロジェクトについて、前記プロジェクトを完了することに関連する費用の制約にアクセスすることと、
    前記プロセッサによって、前記複数のプロジェクトの各プロジェクトについて、前記プロジェクトを完了することで得られる利益の量を示す利益値にアクセスすることと、
    前記プロセッサによって、前記複数のプロジェクトの他のプロジェクトの完了の要件として前記複数のプロジェクトの中のどのプロジェクトを完了させなければならないかを示すプロジェクト依存値の集合にアクセスすることと、
    前記プロセッサによって、前記プロジェクト依存値の集合に基づいて、完了される前記複数のプロジェクトの中のプロジェクトの順序を示す少なくとも1つの依存経路を決定することであって、前記少なくとも1つの依存経路内のプロジェクトは、前記少なくとも1つの依存経路内の先行するすべてのプロジェクトが完了するまで開始されることができないことと、
    前記プロセッサによって、前記計画対象期間内の前記完了される複数のプロジェクトの中からのプロジェクトの効率的な選択を、前記プロジェクトの効率的な選択内の各プロジェクトの前記利益値と前記プロジェクトの効率的な選択内の各プロジェクトの前記費用の制約との間の比較に基づいて決定し、前記効率的な選択は前記少なくとも1つの依存経路に基づき、前記複数の資源の効率的な利用を決定して、各資源についての前記予算支出によって制約される、前記プロジェクトの効率的な選択を完了することとを含む、方法。
  2. 前記少なくとも1つの依存経路を決定することは、
    前記複数のプロジェクトを複数のクラスタに分割することと、
    前記クラスタ内の各プロジェクトについて、前記クラスタ内の前記プロジェクトに関連した前記プロジェクト依存値によって結びつけられる前記複数のプロジェクトの中の一連のプロジェクトを示す、各クラスタについてのクラスタ依存経路を計算することと、
    前記クラスタ依存経路の併合操作を実行して前記少なくとも1つの依存経路を生成することと、
    前記併合操作中に前記少なくとも1つの依存経路と関連しない少なくとも1つの前記クラスタ依存経路の少なくともサブセットをプルーニングすることとを含む、請求項1記載の方法。
  3. 前記併合操作は、少なくとも2つのクラスタ依存経路をともに接続することを含み、接続される前記少なくとも2つのクラスタ依存経路の選択は、前記少なくとも2つのクラスタ依存経路の中で共通している少なくとも1つのプロジェクトに基づく、請求項1から2のいずれかに記載の方法。
  4. 前記少なくとも1つの依存経路を決定することは、
    前記プロジェクト依存値の集合に基づいて第1の依存経路を決定することと、前記プロジェクト依存値の集合に基づいて第2の依存経路を決定することと、前記第1および第2の経路依存性の予測収益間の比較に基づいて前記第2の依存経路に対して前記第1の依存経路を順位付けすることと、前記計画対象期間によって制約される予定表に沿って、前記プロジェクトを、前記予定表に沿って前記第2の依存経路に前記プロジェクトを割り当てる前に前記第1の依存経路に割り当てることとを含む、請求項1から3のいずれかに記載の方法。
  5. 前記完了される複数のプロジェクトの中からの前記プロジェクトの効率的な選択を決定することは、前記計画対象期間によって制約される予定表上のプロジェクトについて効率的な配置を決定することを含み、前記効率的な配置は、前記プロジェクト完了にかかる時間長と、前記プロジェクト完了に必要な資源量と、前記プロジェクトにかかる最大財務費用を規定するプロジェクト予算とに基づく、請求項1から4のいずれかに記載の方法。
  6. 前記プロジェクトについて前記効率的な配置を決定することは、前記資源を前記プロジェクト内のロールとマッチングすることと、前記ロールとマッチングされる前記資源の選択を優先することと、前記資源とマッチングされる前記ロールの選択を優先することとを含む、請求項1から5のいずれかに記載の方法。
  7. 前記資源の選択を優先することは、非優先資源よりも早く優先資源を選択することと、
    非スティッキーな資源よりも早くスティッキーな資源を割り当て、前記スティッキーな資源は検討されている前記ロールより前の時間間隔に割り当てられた資源を示すことと、
    フレキシブルな資源よりも早く非フレキシブルな資源を割り当てることと、
    前記ロールのベストフィット記述に合うロールに資源を割り当てることと、
    利用可能期間が短い資源に対して利用可能期間が長い資源を優遇することとを含む、請求項1から6のいずれかに記載の方法。
  8. 前記ロールの選択を優先することは、
    より希少でないロールよりも前に希少のロールをマッチングすることと、
    ロールのコンター(contours)として、より長い非ゼロの需要の連鎖(sequence)を有するロールを、より短いコンターをもつロールよりも前にマッチングすることと、
    より短い時間拘束であるロールよりも前により長い時間拘束であるロールをマッチングすることとを含む、請求項1から7のいずれかに記載の方法。
  9. 前記完了される複数のプロジェクトの中からの前記プロジェクトの効率的な選択を決定することは、前記複数のプロジェクトの中のプロジェクトが、前記プロジェクトの効率的な選択の中から除外される理由を決定することを含む、請求項1から8のいずれかに記載の方法。
  10. 前記プロジェクトが除外される理由を決定することは、
    予算不足により前記プロジェクトが除外されるかどうかを決定することと、
    資源不足により前記プロジェクトが除外されるかどうかを決定することと、
    予定表の不足により前記プロジェクトが除外されるかどうかを決定することと、
    依存経路不足により前記プロジェクトが除外されるかどうかを決定することとを含む、請求項1から9のいずれかに記載の方法。
  11. 前記完了される複数のプロジェクトの中からの前記プロジェクトの効率的な選択を決定することは、プロジェクトの制約の集合を修正して前記プロジェクトの効率的な選択の中に現在含まれていない前記複数のプロジェクトの中の少なくとももう1つのプロジェクトを、前記効率的な選択の中に含むことができるかどうかを決定することを含む、請求項1から10のいずれかに記載の方法。
  12. 前記プロジェクトの制約の集合を修正することは、
    前記プロジェクトの効率的な選択の完了に関してロール数を修正することが、結果として、前記プロジェクトの効率的な選択の中に含まれる1つまたは複数のプロジェクトになるかどうかを決定すること、
    前記プロジェクトの効率的な選択に関連する少なくとも1つの予算を増加することが、結果として、前記プロジェクトの効率的な選択の中に含まれる1つまたは複数のプロジェクトになるかどうかを決定すること、または、
    前記プロジェクトの効率的な選択の中のプロジェクト内のロールの容量を増加することが、結果として、前記プロジェクトの効率的な選択の中に含まれる1つまたは複数のプロジェクトになるかどうかを決定することを含む、請求項1から11のいずれかに記載の方法。
  13. 前記計画対象期間内の前記完了される複数のプロジェクトの中からの前記プロジェクトの効率的な選択を決定することは、前記プロジェクトの効率的な選択内の各プロジェクトの前記利益値と前記プロジェクトの効率的な選択内の各プロジェクトの前記費用の制約との間の比較を最大化することにさらに基づく、請求項1から12のいずれかに記載の方法。
  14. 複数のプロジェクトと、
    前記複数のプロジェクトの少なくともプロジェクトのサブセットを完了する時間の長さを示す計画対象期間と、
    複数の資源であって、前記複数の資源の各資源が前記複数のプロジェクトの少なくとも1つのプロジェクトを完了するために前記資源によって実行可能である1つまたは複数の機能を特定する前記複数の資源と、
    前記複数の資源の各資源について、各資源を前記複数のプロジェクトにわたって利用することが可能である最大利用可能容量を示す予算支出と、
    前記複数のプロジェクトの各プロジェクトについて、前記プロジェクトを完了することに関連した財務費用を示す費用の制約と、
    前記複数のプロジェクトの各プロジェクトについて、前記プロジェクトを完了することで得られる利益の量を示す利益値と、
    前記複数のプロジェクトのうちの他のプロジェクトの完了の要件として前記複数のプロジェクトの中のどのプロジェクトを完了させなければならないかを示すプロジェクト依存値の集合とを含む、データを記憶するように構成されたメモリと、
    前記複数のプロジェクトと、前記計画対象期間と、前記複数の資源と、前記複数の資源の各資源についての前記予算支出と、前記複数のプロジェクトの各プロジェクトについての前記費用の制約と、前記複数のプロジェクトの各プロジェクトについての前記利益値と、前記プロジェクト依存値の集合とにアクセスし、
    前記プロジェクト依存値の集合に基づいて、完了される前記複数のプロジェクトの中のプロジェクトの順序を示す少なくとも1つの依存経路を決定し、前記少なくとも1つの依存経路内のプロジェクトは、前記少なくとも1つの依存経路内の先行するすべてのプロジェクトが完了するまで開始されることができないものであり、
    前記計画対象期間内の前記完了される複数のプロジェクトの中からのプロジェクトの効率的な選択を、前記プロジェクトの効率的な選択内の各プロジェクトの前記利益値と前記プロジェクトの効率的な選択内の各プロジェクトの前記費用の制約との間の比較に基づいて決定し、前記効率的な選択は前記少なくとも1つの依存経路に基づき、前記複数の資源の効率的な利用を決定して、各資源についての前記予算支出によって制約される、前記プロジェクトの効率的な選択を完了するように構成され、かつ、前記メモリに結合されるプロセッサとを含む、システム。
  15. 前記少なくとも1つの依存経路を決定することは、
    前記複数のプロジェクトを複数のクラスタに分割することと、
    前記クラスタ内の各プロジェクトについて、前記クラスタ内の前記プロジェクトに関連した前記プロジェクト依存値によって結びつけられる前記複数のプロジェクトの中の一連のプロジェクトを示す、各クラスタについてのクラスタ依存経路を計算することと、
    前記クラスタ依存経路の併合操作を実行して前記少なくとも1つの依存経路を生成することと、
    前記併合操作中に前記少なくとも1つの依存経路と関連しない少なくとも1つの前記クラスタ依存経路の少なくともサブセットをプルーニングすることとを含む、請求項14記載のシステム。
  16. 前記併合操作は、少なくとも2つのクラスタ依存経路をともに接続することを含み、接続される前記少なくとも2つのクラスタ依存経路の選択は、前記少なくとも2つのクラスタ依存経路の中で共通している少なくとも1つのプロジェクトに基づく、請求項14から15のいずれかに記載のシステム。
  17. 前記少なくとも1つの依存経路を決定することは、
    前記プロジェクト依存値の集合に基づいて第1の依存経路を決定することと、前記プロジェクト依存値の集合に基づいて第2の依存経路を決定することと、前記第1および第2の経路依存性の予測収益間の比較に基づいて前記第2の依存経路に対して前記第1の依存経路を順位付けすることと、前記計画対象期間によって制約される予定表に沿って、前記プロジェクトを、前記予定表に沿って前記第2の依存経路に前記プロジェクトを割り当てる前に前記第1の依存経路に割り当てることとを含む、請求項14から16のいずれかに記載のシステム。
  18. 前記完了される複数のプロジェクトの中からの前記プロジェクトの効率的な選択を決定することは、前記計画対象期間によって制約される予定表上のプロジェクトについて効率的な配置を決定することを含み、前記効率的な配置は、前記プロジェクト完了にかかる時間長と、前記プロジェクト完了に必要な資源量と、前記プロジェクトにかかる最大財務費用を規定するプロジェクト予算とに基づく、請求項14から17のいずれかに記載のシステム。
  19. 前記プロジェクトについて前記効率的な配置を決定することは、
    前記資源を前記プロジェクト内のロールとマッチングすることと、
    前記ロールとマッチングされる前記資源の選択を
    非優先資源よりも早く優先資源を選択することと、
    非スティッキーな資源よりも早くスティッキーな資源を割り当て、前記スティッキーな資源は検討されている前記ロールより前の時間間隔に割り当てられた資源を示すことと、
    フレキシブルな資源よりも早く非フレキシブルな資源を割り当てることと、
    前記ロールのベストフィット記述に合うロールに資源を割り当てることと、
    利用可能期間が短い資源に対して利用可能期間が長い資源を優遇することと
    に基づいて、優先することと、
    前記資源とマッチングされる前記ロールの選択を
    より希少でないロールよりも前に希少のロールをマッチングすることと、
    ロールのコンター(contours)として、より長い非ゼロの需要の連鎖(sequence)を有するロールを、より短いコンターをもつロールよりも前にマッチングすることと、
    より短い時間拘束であるロールよりも前により長い時間拘束であるロールをマッチングすることと
    に基づいて優先することとを含む、請求項14から18のいずれかに記載のシステム。
  20. プロセッサによって解釈される場合に、
    複数のプロジェクトにアクセスすることと、
    前記複数のプロジェクトの少なくともプロジェクトのサブセットを完了する時間の長さを示す計画対象期間にアクセスすることと、
    複数の資源であって、前記複数の資源の各資源が前記複数のプロジェクトの少なくとも1つのプロジェクトを完了するための前記資源によって実行可能である1つまたは複数の機能を特定する前記複数の資源にアクセスすることと、
    前記複数の資源の各資源について、各資源を前記複数のプロジェクトにわたって利用することが可能である最大利用可能容量を示す予算支出にアクセスすることと、
    前記複数のプロジェクトの各プロジェクトについて、前記プロジェクトを完了することに関連した財務費用を示す費用の制約にアクセスすることと、
    前記複数のプロジェクトの各プロジェクトについて、前記プロジェクトを完了することで得られる利益の量を示す利益値にアクセスすることと、
    前記複数のプロジェクトのうちの他のプロジェクトの完了の要件として前記複数のプロジェクトの中のどのプロジェクトを完了させなければならないかを示すプロジェクト依存値の集合にアクセスすることと、
    前記プロジェクト依存値の集合に基づいて、完了される前記複数のプロジェクトの中のプロジェクトの順序を示す少なくとも1つの依存経路を決定し、前記少なくとも1つの依存経路内のプロジェクトは、前記少なくとも1つの依存経路内の先行するすべてのプロジェクトが完了するまで開始されることができないことと、
    前記計画対象期間内の前記完了される複数のプロジェクトの中からのプロジェクトの効率的な選択を、前記プロジェクトの効率的な選択内の各プロジェクトの前記利益値と前記プロジェクトの効率的な選択内の各プロジェクトの前記費用の制約との間の比較に基づいて決定し、前記効率的な選択は前記少なくとも1つの依存経路に基づき、前記複数の資源の効率的な利用を決定して、各資源についての前記予算支出によって制約される、前記プロジェクトの効率的な選択を完了することとを含む動作をマシンに対して実行させる指示を含む、非一時的なコンピュータ読み取り可能な媒体。
JP2017502918A 2014-03-25 2015-03-25 時間、資源および予算の制約下での構造化経営組織内のプロジェクトの選択および資源の割り当てを最適化する方法およびシステム Expired - Fee Related JP6564015B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201461967714P 2014-03-25 2014-03-25
US61/967,714 2014-03-25
PCT/US2015/022448 WO2015148641A1 (en) 2014-03-25 2015-03-25 A framework to optimize the selection of projects and the allocation of resources within a structured business organization under time, resource and budget constraints

Publications (3)

Publication Number Publication Date
JP2017514247A true JP2017514247A (ja) 2017-06-01
JP2017514247A5 JP2017514247A5 (ja) 2018-04-19
JP6564015B2 JP6564015B2 (ja) 2019-08-21

Family

ID=54190907

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017502918A Expired - Fee Related JP6564015B2 (ja) 2014-03-25 2015-03-25 時間、資源および予算の制約下での構造化経営組織内のプロジェクトの選択および資源の割り当てを最適化する方法およびシステム

Country Status (6)

Country Link
US (1) US20150278736A1 (ja)
EP (1) EP3123417A4 (ja)
JP (1) JP6564015B2 (ja)
KR (1) KR102376755B1 (ja)
AU (1) AU2015236099A1 (ja)
WO (1) WO2015148641A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200092297A (ko) * 2018-03-02 2020-08-03 (주) 빌트온 웹브라우저에 입력된 이벤트에 대응하는 빅데이터분석결과와 경영정보를 통합하여 제공하는 토탈경영정보제공장치

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170220974A1 (en) * 2016-01-29 2017-08-03 Sap Se Resource optimization for production efficiency
US10489204B2 (en) * 2017-01-31 2019-11-26 Samsung Electronics Co., Ltd. Flexible in-order and out-of-order resource allocation
US10789208B2 (en) * 2017-08-02 2020-09-29 Sap Se Dependency mapping in a database environment
US10810524B1 (en) * 2018-05-21 2020-10-20 Amazon Technologies, Inc. Dynamic resource prediction simulation
WO2020219041A1 (en) * 2019-04-24 2020-10-29 Alibaba Group Holding Limited Distributed resource allocation
WO2020219040A1 (en) * 2019-04-24 2020-10-29 Alibaba Group Holding Limited Distributed resource allocation
AU2019253789B1 (en) * 2019-04-24 2020-10-08 Advanced New Technologies Co., Ltd. Distributed resource allocation
DE102020203716A1 (de) * 2020-03-23 2021-09-23 Zf Friedrichshafen Ag Computerimplementiertes Verfahren für eine Produktionsplanung und/oder -steuerung eines Produktionssystems und Produktionsplanung und/oder-steuerungssystem
KR102349118B1 (ko) * 2021-09-07 2022-01-11 주식회사 디케이브라더스 프로젝트 중개 플랫폼 서비스 제공 방법 및 장치
US20230410011A1 (en) * 2022-06-09 2023-12-21 Abductive Services LLC Systems, Devices, and/or Methods for Managing Projects
CN117648179A (zh) * 2023-11-23 2024-03-05 北京菱云科技有限公司 一种资源分配方法、装置、电子设备和存储介质
KR102669893B1 (ko) 2024-02-19 2024-05-28 주식회사 똑똑한개발자 스마트 업무일지를 활용한 it프로젝트별 손익 금액 자동 계산 시스템

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006107448A (ja) * 2004-09-30 2006-04-20 Microsoft Corp クロスプロジェクトコミットメントを提供する方法およびシステム
JP2010211364A (ja) * 2009-03-09 2010-09-24 Hitachi Ltd プロジェクトのシミュレーション方法及びシミュレーションシステム
US7991632B1 (en) * 2011-01-28 2011-08-02 Fmr Llc Method and system for allocation of resources in a project portfolio
JP2012238054A (ja) * 2011-05-10 2012-12-06 Takenaka Komuten Co Ltd スケジューリング装置及びプログラム
US20140032256A1 (en) * 2012-07-27 2014-01-30 International Business Machines Corporation Multi-project portfolio optimization

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5630070A (en) * 1993-08-16 1997-05-13 International Business Machines Corporation Optimization of manufacturing resource planning
US5408663A (en) * 1993-11-05 1995-04-18 Adrem Technologies, Inc. Resource allocation methods
EP1913534A4 (en) * 2005-02-11 2010-07-07 Volt Inf Sciences Inc PROJECT WORK CHANGING IN A PLAN / AREA MANAGEMENT AND BUSINESS INFORMATION SYNERGY SYSTEM AND METHOD
US8281313B1 (en) * 2005-09-29 2012-10-02 Hewlett-Packard Development Company, L.P. Scheduling computer processing jobs that have stages and precedence constraints among the stages
US20080255910A1 (en) * 2007-04-16 2008-10-16 Sugato Bagchi Method and System for Adaptive Project Risk Management
US20090119144A1 (en) * 2007-11-02 2009-05-07 International Business Machines Corporation Method, system and program product for optimal project selection and tradeoffs
US20090234699A1 (en) * 2008-03-15 2009-09-17 Microsoft Corporation User Interface For Scheduling Resource Assignments

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006107448A (ja) * 2004-09-30 2006-04-20 Microsoft Corp クロスプロジェクトコミットメントを提供する方法およびシステム
JP2010211364A (ja) * 2009-03-09 2010-09-24 Hitachi Ltd プロジェクトのシミュレーション方法及びシミュレーションシステム
US7991632B1 (en) * 2011-01-28 2011-08-02 Fmr Llc Method and system for allocation of resources in a project portfolio
JP2012238054A (ja) * 2011-05-10 2012-12-06 Takenaka Komuten Co Ltd スケジューリング装置及びプログラム
US20140032256A1 (en) * 2012-07-27 2014-01-30 International Business Machines Corporation Multi-project portfolio optimization

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200092297A (ko) * 2018-03-02 2020-08-03 (주) 빌트온 웹브라우저에 입력된 이벤트에 대응하는 빅데이터분석결과와 경영정보를 통합하여 제공하는 토탈경영정보제공장치
KR102298999B1 (ko) 2018-03-02 2021-09-07 (주) 빌트온 웹브라우저에 입력된 이벤트에 대응하는 빅데이터분석결과와 경영정보를 통합하여 제공하는 토탈경영정보제공장치

Also Published As

Publication number Publication date
EP3123417A1 (en) 2017-02-01
KR20160130795A (ko) 2016-11-14
JP6564015B2 (ja) 2019-08-21
WO2015148641A1 (en) 2015-10-01
KR102376755B1 (ko) 2022-03-21
EP3123417A4 (en) 2017-08-30
AU2015236099A1 (en) 2016-09-08
US20150278736A1 (en) 2015-10-01

Similar Documents

Publication Publication Date Title
JP6564015B2 (ja) 時間、資源および予算の制約下での構造化経営組織内のプロジェクトの選択および資源の割り当てを最適化する方法およびシステム
Abrishami et al. Cost-driven scheduling of grid workflows using partial critical paths
US10338796B2 (en) Event services modeling framework for computer systems
US20150120600A1 (en) Time and location based delivery optimization
US11321634B2 (en) Minimizing risk using machine learning techniques
US11017358B2 (en) Schedule defragmentation
US20110202382A1 (en) Workforce planning
CN111461469B (zh) 人员调度方法及计算机设备
US10223673B2 (en) Cognitive adaptation to user behavior for personalized automatic processing of events
US11348043B2 (en) Collective-aware task distribution manager using a computer
Dahmen et al. Solving multi-activity multi-day shift scheduling problems with a hybrid heuristic
US20190050786A1 (en) Task Assisted Resources Assignment Based On Schedule Impact
US20150170078A1 (en) System and method of allocating large numbers of tasks
US20160171420A1 (en) Optimizing allocation of employees for corporate training
JPWO2014061229A1 (ja) 情報システム構築支援装置、情報システム構築支援方法および情報システム構築支援プログラム
US20110112880A1 (en) Allocation of common resources in an entity
WO2022216490A1 (en) Intelligent scheduling using a prediction model
US20170039508A1 (en) Systems and methods for recommendation tool
JP6094594B2 (ja) 情報システム構築支援装置、情報システム構築支援方法および情報システム構築支援プログラム
US20150112742A1 (en) System and method of automatically allocating tasks
CN117196530A (zh) 一种软件项目集与人力资源池数字智能化调度方法及系统
US20160350694A1 (en) Implementing workflow based on social network nodes
CA3101836A1 (en) Automated slot adjustment tool
US20150081356A1 (en) Dynamic multi-dimensional business reports
US11393050B2 (en) Resource accommodation device, schedule management device, and resource accommodation system

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180306

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180306

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190108

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20190408

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190610

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190702

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190725

R150 Certificate of patent or registration of utility model

Ref document number: 6564015

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees