問題タブ [optaplanner]
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.
shopping-cart - 最高の割引を計算するための optaplanner
私は optaplanner を使用して、ユーザーがアイテムのリスト (ショッピング カートなど) を購入するための最適な割引を計算するのに役立てたいと考えています。
これは良いアイデアのように聞こえますか?試した人いますか?どんな助けでも大歓迎です。
検討:
- 多数の異なるアイテムを購入したいユーザーがいます
この顧客には、次のような多数のプロモーション割引があります: パーセンテージ ディスカウントと、多数のアイテムで 1 つ購入するともう 1 つ無料
-
- 各割引は一部の商品にのみ適用される場合があります
- 各アイテムに適用できるプロモーションは 1 つだけです
- ただし、各プロモーションは複数のアイテムに適用される場合があります。複数の商品に同じ割引率が適用される場合があります
- 各プロモーションを異なる注文に適用すると、合計割引額が異なる場合があります
目標: 特定の順序で適用されたどのプロモーションがユーザーに最大の割引を提供するかを特定したいと考えています。
drools-expert (ブルート フォース オプションを考慮) と optaplanner の両方を調べました。optaplanner を使用すると、次のことができる方法がわかりません。
- プロモーションが複数のアイテムに適用される場合があることを考慮してください
- プロモーションから得られる割引は、適用時のバスケットの状態 (つまり、どのプロモーションが既に適用されているか) によって異なる場合があります。
drools-planner - Optaplanner VRP と車両がルート上で壊れている
Optaplannerの皆様へ
ルート上にある車両にある種の休憩時間を割り当てることが可能かどうか知っていますか? スイスでは 15 分間の休憩が法律で定められていますが、これをどのように実施すればよいかわかりません。
ありがとう、よろしくポール
java - OptaPlanner NurseRostering の例の例外
私がNurseRostering問題、OptaPlannerを使用しようとしているときはいつでも。以下はエラーです。修正可能な場所、またはそれを修正するために何をする必要があるかを教えてください。ご注意ください; コードを別の目的で使用しようとしているため、サンプル jar をインポートしたくありません。
optaplanner - optaplanner でポイント間の実際の距離を使用する
こんにちは
、optaplanner の初心者です。vrp (tw) の例を使用しようとしています。
実際のソリューションを得るために、実際の距離 (ルート距離) を設定したいと思います。
二重 NXN マトリックス (distance(a,b)<>distance(b,a)) 内のすべてのポイント間の実際の距離があるので、.xml (.vrp) 入力ファイル内のマトリックスを使用して vrp を解くにはどうすればよいですか?問題 ?
注:私のマトリックスは約2X10X10から2X100X100です。
前もって感謝します。
相手
optaplanner - ヒープ領域不足の Java メモリ
OptaPlanner を使用して Java の問題を解決するために SOLVER を使用していますが、しばらくすると Java.lang.OutOfMemoryError: Java Heap Space という例外が発生します。これは何を意味しますか
constraint-programming - 方程式を CSP として解く
私は一連の方程式を持っています。また、一連の値と方程式の結果もあります。何かのようなもの:
いくつかの割り当ては次のようになります。
ただし、実際の方程式ははるかに長く、対数などの関数が含まれている場合があります。
ここで、(1) 方程式が特定の値 xx に等しくなり、(2) パラメーターができるだけ変化しないように、特定のセットの結果を変更する必要があります。
方程式を次のように変更することで、これをCSPとして解決できると思いました
ここで、a、b、および c は古い値に対応し、ax、bx、および cx は、対応する古い値に適用する必要がある差です。そして xx は、方程式に求めたい結果です。a、b、c、xa、xb、cx などはすべて整数値であり、xx は常に x から一定の距離内にあることに注意してくださいxx - d < x < xx + d
。
CSP では、a、b、c、および xx は問題の事実として扱われ、ax、bx、cx は計画変数として扱われ、方程式(a + ax) + (b + bx) + (c + cx) = xx
は厳密な制約になります。ax、ab、ac のすべてを最小化することは、ソフト制約になります。ここには計画エンティティは実際にはありません。
しかし、ここから先に進む方法がわかりません。Optaplanner はこの種の問題に適していますか? 私は整数値しか持っていませんが、すべてPlanningVariable
の s はリストから取得し、インスタンスでなければならないようです。私のモデルは正しいですか?
java - Grails optaplanner のソルバー構成が存在しないというエラー
ここの optaplanner サイトのように、クラウド バランシングの例を実行しようとしています。cloudBalancingSolverConfig.xml ファイルを web-app/xmls ディレクトリに配置しました。CloudBalanceDomainController の保存アクションのコードは次のとおりです。
実行すると、次の例外が返されます。
java.lang.IllegalArgumentException: The solver configuration (C:\Users\....\IdeaProjects\OptaPlannerGrails\web-app\xmls\cloudBalancingSolverConfig.xml) does not exist.
ただし、驚くべきことは true を返すf.exists()
ため、ファイルが見つかっているということです。では、このエラーの原因は何でしょうか?
編集:
f.canRead()
また、f.canWrite()
true を返します。したがって、ファイルには読み取りと書き込みの両方のアクセス許可があります。ここでファイルに書き込む必要はありませんが。
exception - ScoreAttained 条件が算術例外をスローする - OptaPlanner
HARDSOFTBIGDECIMAL スコアの使用。
構成ファイルで、scoreAttained を 0hard/0soft に設定しました。
次のエラーが表示されます。
編集:
HARDSOFTBIGDECIMALSCOREDEFINITION を拡張し、 calculateTimeGradient(..) メソッドをオーバーライドすることで問題を解決しました。ここで、BigDecimal で除算メソッドが呼び出されると、切り上げられます。