問題タブ [drools-planner]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
518 参照

java - drools エキスパート / ソルバー - 5.0.1 マッチ

私は drools にかなり慣れていないので、よく理解できない問題に直面しています。割り当ての問題を解決しようとしていますが、LHS の 1 つが次のようになります

なんらかの理由で、2 番目のステートメントは何にも一致しません。たとえワーキング メモリに一致があると確信していてもです。上記のコードを次のように変更すると、正常に動作します

誰か私にこれを説明できますか?

ありがとう!

0 投票する
4 に答える
893 参照

java - Scalaでraw型を持つメソッドを実装する

ScalaでDroolsPlanner(Javaで記述)を使用する際に問題があります。Droolsplannerのインターフェースの1つは次のように宣言されています。

ただし、別のインターフェースは「スコア」をrawタイプとして使用します。

次に、このインターフェースをScalaに実装したいと思います。

そして、コンパイルエラーが発生します:Scalaコンパイラーは「defgetScore:Score」だけを書くことを許可していません。'Score[_]'または'Score[whatever]'を追加しようとすると、コンパイラは型の非互換性について文句を言います。私は何をすべきか?

0 投票する
1 に答える
363 参照

java - DroolsPlannerルールは1回だけ実行されます

フォームのルールがあります

これは、バーがfalseのFooごとに1回発生することを期待していますが、ルールは1回だけ発生します。紛らわしいことに、をに変更する$foo : Foo(bar == false)$foo : Foo()、すべてのFooに対して正しく起動されます。私は何が欠けていますか?

0 投票する
2 に答える
261 参照

drools - Droolsがカスタムスコアを作成する

だから私はdroolsでカスタムスコアを作成しました:

そしてそれを実装しました。しかし、スコアの使い方がわかりません。構成には

タグを付けますが、SIMPLEまたはHARD_AND_SOFT以外のものをこの中に入れると、エラーが発生します。

作成したスコアを使用するようにソルバーを構成するにはどうすればよいですか。ドキュメントでは、これが可能であると示唆されているようですが、詳細については説明していません。

0 投票する
2 に答える
6471 参照

drools - droolsルールはマップから値を取得します

ブロック時によだれの特定の値を取得する方法。

私はこのようなものを探していますが、機能していません:

Hashmapをワーキングメモリに挿入し、Whenで取得しようとしました

以下のエラーが発生します

0 投票する
1 に答える
284 参照

jsp - 時間割にはどの Drools 製品を使用しますか?

はい、初心者の質問です。

これらのポイントが自分の状況に固有のものである時刻表アプリケーションを作成したいと考えています。

  1. 一度に、最大 (3 人の教師 X 6 時間)X(3 クラス X 週 35 時間の労働時間) を一度に割り当て、時間割を繰り返し作成しています。

  2. 不可能な状態があり、不可能な時刻表は、アプリケーションが動かなくなることなく通知する必要があります。このアプリケーションが限界までプッシュされることを期待しています。

  3. 一定時間内に結果を返すか、失敗したことを報告する必要があります。


Tomcat 6でJSPアプリケーションとして実行するつもりです。実行は次のとおりです。

  1. PHP アプリケーションは、データとルール セット全体を「POST します」
  2. 実行が終わるまで待つ
  3. 最適化された状態を含む応答を読み取る

JSP のものは、プログラムを転送して維持する最も簡単な方法と思われるため、便宜上のものです。

これが手に負えない状況である場合は、私を修正してください。


それを可能にする Drools 製品はどれですか? それとも、もっと簡単な構成がありますか?

0 投票する
1 に答える
669 参照

drools - Droolsプランナーの例を理解する:p‌r‌o‌b‌l‌e‌m状態はどこで初期化されますか?

DroolsのNクイーンクラウドバランサーの例を理解しようとしています。マニュアルの第3章と第4章、および2つの例のソースを詳しく調べました。

私はそれを(誤)理解しています

  1. 問題は、割り当てられていない状態または最適でない状態から開始する必要があります
  2. したがって、POJOである問題ファクトと計画エンティティをインスタンス化する必要があります
  3. CloudBalanceやNQueensなどのソリューションクラスは、問題の事実と計画エンティティを認識している必要があります

質問1:例では、計画エンティティと問題ファクトクラスのオブジェクトはどこで初期化されていますか?

たとえば、クラウドバランシングをロードすると、次のように表示されます。

これは、シリアル化された形式が実際のオブジェクトに変換され、ソリューションに供給されることを意味しますか?


質問2:計画エンティティはどこで処理されますか?

そのコメントの意味は何ですか?そもそもそれはどのように処理されたのですか?

0 投票する
3 に答える
7650 参照

java - ゲッターとセッターに関して、JavaBeanプロパティの命名について混乱している

Droolsplannerを使用したアプリケーションを作成しています。

@ValueRangeFromSolutionProperty、別のクラス(NQueensこの場合)のプロパティを参照することになっています。@ValueRangeFromSolutionPropertyのJavaDocsから:


しかし、私は矛盾に気づきました:アノテーターはrowListからのプロパティを使用しますNQueens。ただし、rowList(とは対照的にRowList)はプライベート変数です(以下のスニペットを参照)。イントロスペクション(getterメソッドとsetterメソッドから)によってプロパティを推測することになっている場合は、次のRowListように綴る必要がありgetRowList()ますか?

質問: Javaは、getterメソッドからプロパティ名(caseおよびall)をどのように推測(イントロスペクト)しますか?

または@ValueRangeFromSolutionProperty、プライベート変数に直接アクセスしますか?


背景の詳細​​:From Queen.java、チェス盤の女王を表すクラス:

From 、からプロパティを取得するNQueens.javaクラス:@ValueRangeFromSolutionProperty

0 投票する
1 に答える
164 参照

drools - 特定の計画エンティティが不変であることをどこで指定しますか?

(2X2) 数独ゲームを作成しており、パズルを完成させる必要があります。これは、一部の数字が不変であることを意味します (それらは別の場所に移動することはできません。

2X2 ゲームでは、16 個Digitの s があります。問題の事実はrow、s、columns、およびblocks (分かりますか?) です。が唯一のrow計画変数です。

boolean fixedの属性として指定しましたDigit。しかし(ユーザーガイドによると)、それを実装する場所が見つかりませんでした。

いくつかの計画エンティティを実際に不変にする方法は何ですか?


私はこれらの方法を見つけます:

  1. 不変の場合にのみmoveFactoryを変更する を実装します。rowこのメソッドは文書化されていません
  2. rowが a と等しくない場合はfixed_row、ハード制約を破ります。
  3. を使用し@ValueRangeFromPlanningPropertyます。不変エンティティvalue_rangeには単一の要素があり、可変エンティティには固定行を除外するリストがあります。これは、数独プロジェクトよりも大きなものには持続不可能に思えますよね? そして、(私の?) ソルバーを脱線させるとされる落とし穴がありますか?

追加の質問: 方法 #3 は、時間割の問題のようなものに推奨される方法ですか (可能な期間に教科教師を割り当てる)?

0 投票する
2 に答える
149 参照

drools - Drools Plannerでコンフィギュレーターの作成に問題があります:デバッグ方法

XML構成からソルバーを作成しようとしました。しかし、プロセス全体が意味のない不可解なエラーメッセージを返します。

これを修正するにはどうすればよいですか?そして、このような同様の問題を実際に解決するために、これをどのように理解できますか?

それをスローする関数はここにリストされています。線はもちろんreturn configurer.buildSolver();です。

XMLの内容: