5

私は、ユーザーが毎日のスケジュールを最適化できる Java アプリケーションに取り組んでいます。そのためには、次の点に注意して「タスク」の最適な時間を計算するのに役立つフレームワークが必要です。

  1. 必要なリソースとリソースの使用制限
  2. タスク間の依存関係 (ただし、F->S 関係のみで実行できます)
  3. 最早および最遅の始業時間、余裕時間
  4. ベースラインと実際の時間 - 実際の開始時間と終了時間を報告し、それに応じて残りのタスクを更新できます

いくつかの明確化: 私は、これらのガントを描画するためのフレームワークも、1 つの特定の問題ドメイン (教室など) を処理するフレームワークも、スレッド スケジューリングを処理するフレームワークも探していません。

ありがとう!

4

3 に答える 3

5

箱から出してすぐにニーズに合ったフレームワークはないと思います。ジョブ/スレッドスケジューラを探していないと言ったのは知っていますが、最善の策はおそらく、独自の最適化/優先順位付けコードを、Quartz (またはあなたが持っているもの)のような「愚かな」ジョブ/スレッドスケジューリングフレームワークに巻き込むことだと思います場所)。Quartz を使用する場合、API は、最適化基準の項目 3 と 4 に役立つ情報を提供できる可能性があります。さらに、Quartz にはジョブの「優先度」の概念があるため、最適化された優先度を計算すると、実行のスケジューリングが容易になります。

あなたが求めていることを実行するフレームワークを見つけた場合は、ここに投稿してください。同様のものを使用できる人が他にもいると確信しています。

于 2010-09-15T17:08:31.583 に答える
0

おそらく、最適化されたスケジュールを生成するための進化的/遺伝的アルゴリズムのようなものが必要ですか?

はいの場合は、次のウォッチメーカー フレームワークを参照してください: http://watchmaker.uncommons.org/

進化的/遺伝的アルゴリズムにより、スケジュールのプールをランダムに生成します。主な焦点は、生成された各スケジュールを評価するためのスコア基準を定義することです。次に、それ(生成されたスケジュール)を世代から世代へと進化させて、あなたにとって十分に最適なものにします.

于 2010-09-18T11:02:02.607 に答える
0

プロジェクト管理ソフトウェアを確認できます。コードを変更する機能を備えた Java で記述されている必要があるようです。リストは本当に絞り込まれますが、簡単なスキャンを行ったところ、少なくとも 2 つ (Endeavour と Project.net) が役立ちます。

于 2010-09-15T03:07:47.233 に答える