Changeset 200 in public
- Timestamp:
- 7/23/2014 4:01:48 PM (5 months ago)
- Location:
- Examples
- Files:
-
- 11 edited
-
pom.xml (modified) (1 diff)
-
src/main/java/com/numericalmethod/suanshu/examples/DistributedPrimeCheck.java (modified) (2 diffs)
-
src/main/java/com/numericalmethod/suanshu/examples/DistributedRandomNumberGeneration.java (modified) (3 diffs)
-
src/main/java/com/numericalmethod/suanshu/examples/LinearAlgebra.java (modified) (2 diffs)
-
src/main/java/com/numericalmethod/suanshu/examples/LinearTimeSeries.java (modified) (1 diff)
-
src/main/java/com/numericalmethod/suanshu/examples/QuadraticProgramming.java (modified) (2 diffs)
-
src/main/java/com/numericalmethod/suanshu/examples/Random.java (modified) (1 diff)
-
src/main/java/com/numericalmethod/suanshu/examples/SOCP.java (modified) (3 diffs)
-
src/main/java/com/numericalmethod/suanshu/examples/SemiDefiniteProgramming.java (modified) (3 diffs)
-
src/main/java/com/numericalmethod/suanshu/examples/SequentialQuadraticProgramming.java (modified) (5 diffs)
-
src/main/java/com/numericalmethod/suanshu/examples/StochasticIntegral.java (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
Examples/pom.xml
r140 r200 19 19 <properties> 20 20 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 21 <suanshu.version> 2.5.0</suanshu.version>21 <suanshu.version>3.0.0</suanshu.version> 22 22 </properties> 23 23 -
Examples/src/main/java/com/numericalmethod/suanshu/examples/DistributedPrimeCheck.java
r137 r200 23 23 package com.numericalmethod.suanshu.examples; 24 24 25 import com.numericalmethod.suanshu.grid. DefaultDistributedExecutorFactory;26 import com.numericalmethod.suanshu.grid. DistributedExecutor;25 import com.numericalmethod.suanshu.grid.executor.DefaultGridExecutorFactory; 26 import com.numericalmethod.suanshu.grid.executor.GridExecutor; 27 27 import com.numericalmethod.suanshu.grid.function.Function; 28 28 import com.numericalmethod.suanshu.number.DoubleUtils; … … 69 69 */ 70 70 public static void main(String[] args) { 71 DistributedExecutor executor =72 DefaultDistributedExecutorFactory.getInstance().newDistributedExecutor();71 GridExecutor executor 72 = DefaultGridExecutorFactory.getInstance().newExecutor(); 73 73 74 74 List<Integer> numbers = DoubleUtils.intArray2List(DoubleUtils.seq(10, 20)); -
Examples/src/main/java/com/numericalmethod/suanshu/examples/DistributedRandomNumberGeneration.java
r84 r200 23 23 package com.numericalmethod.suanshu.examples; 24 24 25 import com.numericalmethod.suanshu.grid. DefaultDistributedExecutorFactory;26 import com.numericalmethod.suanshu.grid. DistributedExecutor;27 import com.numericalmethod.suanshu.grid.function. RandomizedFunction;28 import com.numericalmethod.suanshu.stats.random. univariate.RandomLongGenerator;25 import com.numericalmethod.suanshu.grid.executor.DefaultGridExecutorFactory; 26 import com.numericalmethod.suanshu.grid.executor.GridExecutor; 27 import com.numericalmethod.suanshu.grid.function.random.RLGFunction; 28 import com.numericalmethod.suanshu.stats.random.rng.univariate.RandomLongGenerator; 29 29 import java.util.List; 30 30 … … 39 39 * Generates a random number using the given random number generator. 40 40 */ 41 public static class GenerateRandomNumber extends R andomizedFunction<Long, Integer> {41 public static class GenerateRandomNumber extends RLGFunction<Long, Integer> { 42 42 43 43 private static final long serialVersionUID = -4580493892345384714L; 44 44 45 45 @Override 46 public Long eval(Integer in, RandomLongGenerator r ng) {47 long x = r ng.nextLong();46 public Long eval(Integer in, RandomLongGenerator rlg) { 47 long x = rlg.nextLong(); 48 48 49 49 System.out.printf("%s generates %d%n", Thread.currentThread().getName(), x); … … 63 63 */ 64 64 public static void main(String[] args) { 65 DistributedExecutor executor =66 DefaultDistributedExecutorFactory.getInstance().newDistributedExecutor();65 GridExecutor executor 66 = DefaultGridExecutorFactory.getInstance().newExecutor(); 67 67 68 68 List<Long> numbers1 = executor.forLoop(0, N_NUMBERS, new GenerateRandomNumber()); 69 69 70 System.out.println("random list 1: " + numbers1); 71 72 List<Long> numbers2 = executor.forLoop(0, N_NUMBERS, new GenerateRandomNumber()); 73 74 System.out.println("random list 2: " + numbers2); 75 76 // this depends on whether the seeds have been added in the config file 77 System.out.println("two lists are equal? " + numbers1.equals(numbers2)); 70 System.out.println("random list" + numbers1); 78 71 } 79 72 } -
Examples/src/main/java/com/numericalmethod/suanshu/examples/LinearAlgebra.java
r137 r200 31 31 import com.numericalmethod.suanshu.algebra.linear.matrix.doubles.factorization.svd.SVD; 32 32 import com.numericalmethod.suanshu.algebra.linear.matrix.doubles.factorization.triangle.Doolittle; 33 import com.numericalmethod.suanshu.algebra.linear.matrix.doubles.factorization.triangle.cholesky.Chol; 34 import com.numericalmethod.suanshu.algebra.linear.matrix.doubles.factorization.triangle.cholesky.Cholesky; 33 import com.numericalmethod.suanshu.algebra.linear.matrix.doubles.factorization.triangle.cholesky.*; 35 34 import com.numericalmethod.suanshu.algebra.linear.matrix.doubles.linearsystem.LinearSystemSolver; 36 35 import com.numericalmethod.suanshu.algebra.linear.matrix.doubles.matrixtype.dense.DenseMatrix; … … 38 37 import com.numericalmethod.suanshu.algebra.linear.matrix.doubles.matrixtype.dense.triangle.*; 39 38 import com.numericalmethod.suanshu.algebra.linear.matrix.doubles.operation.*; 39 import com.numericalmethod.suanshu.algebra.linear.matrix.doubles.operation.householder.HouseholderReflection; 40 40 import com.numericalmethod.suanshu.algebra.linear.vector.doubles.Vector; 41 41 import com.numericalmethod.suanshu.algebra.linear.vector.doubles.dense.DenseVector; 42 42 import com.numericalmethod.suanshu.number.DoubleUtils; 43 import java.util.Arrays; 44 import java.util.List; 43 import java.util.*; 45 44 46 45 /** -
Examples/src/main/java/com/numericalmethod/suanshu/examples/LinearTimeSeries.java
r55 r200 23 23 package com.numericalmethod.suanshu.examples; 24 24 25 import com.numericalmethod.suanshu.stats.random. RNGUtils;25 import com.numericalmethod.suanshu.stats.random.rng.RNGUtils; 26 26 import com.numericalmethod.suanshu.stats.timeseries.datastructure.univariate.realtime.inttime.IntTimeTimeSeries; 27 27 import com.numericalmethod.suanshu.stats.timeseries.datastructure.univariate.realtime.inttime.SimpleTimeSeries; -
Examples/src/main/java/com/numericalmethod/suanshu/examples/QuadraticProgramming.java
r55 r200 30 30 import com.numericalmethod.suanshu.misc.PrecisionUtils; 31 31 import com.numericalmethod.suanshu.optimization.multivariate.constrained.constraint.linear.*; 32 import com.numericalmethod.suanshu.optimization.multivariate.constrained.convex.sdp.socp.qp.QPInfeasible; 33 import com.numericalmethod.suanshu.optimization.multivariate.constrained.convex.sdp.socp.qp.QPSolution; 34 import com.numericalmethod.suanshu.optimization.multivariate.constrained.convex.sdp.socp.qp.activeset.QPPrimalActiveSetSolver; 35 import com.numericalmethod.suanshu.optimization.multivariate.constrained.convex.sdp.socp.qp.activeset.QPPrimalActiveSetSolver.Solution; 32 import com.numericalmethod.suanshu.optimization.multivariate.constrained.convex.sdp.socp.qp.*; 33 import com.numericalmethod.suanshu.optimization.multivariate.constrained.convex.sdp.socp.qp.activeset.QPPrimalActiveSetMinimizer; 34 import com.numericalmethod.suanshu.optimization.multivariate.constrained.convex.sdp.socp.qp.activeset.QPPrimalActiveSetMinimizer.Solution; 36 35 import com.numericalmethod.suanshu.optimization.multivariate.constrained.convex.sdp.socp.qp.problem.QPProblem; 37 import static java.lang.Math. sqrt;36 import static java.lang.Math.*; 38 37 39 38 /** … … 149 148 throws QPInfeasible, Exception { 150 149 QPProblem problem = new QPProblem(F, equal, greater, less); 151 QPPrimalActiveSet Solver instance = new QPPrimalActiveSetSolver(precision, maxIterations);150 QPPrimalActiveSetMinimizer instance = new QPPrimalActiveSetMinimizer(precision, maxIterations); 152 151 Solution soln = instance.solve(problem); 153 152 QPSolution qpSoln = soln.search(initialGuess); -
Examples/src/main/java/com/numericalmethod/suanshu/examples/Random.java
r57 r200 26 26 import com.numericalmethod.suanshu.stats.distribution.univariate.ExponentialDistribution; 27 27 import com.numericalmethod.suanshu.stats.distribution.univariate.ProbabilityDistribution; 28 import com.numericalmethod.suanshu.stats.random. univariate.InverseTransformSampling;29 import com.numericalmethod.suanshu.stats.random. univariate.RandomNumberGenerator;30 import com.numericalmethod.suanshu.stats.random. univariate.normal.BoxMuller;31 import com.numericalmethod.suanshu.stats.random. univariate.normal.NormalRNG;32 import com.numericalmethod.suanshu.stats.random. univariate.uniform.UniformRNG;33 import com.numericalmethod.suanshu.stats.random. univariate.uniform.mersennetwister.MersenneTwister;28 import com.numericalmethod.suanshu.stats.random.rng.univariate.InverseTransformSampling; 29 import com.numericalmethod.suanshu.stats.random.rng.univariate.RandomNumberGenerator; 30 import com.numericalmethod.suanshu.stats.random.rng.univariate.normal.BoxMuller; 31 import com.numericalmethod.suanshu.stats.random.rng.univariate.normal.NormalRNG; 32 import com.numericalmethod.suanshu.stats.random.rng.univariate.uniform.UniformRNG; 33 import com.numericalmethod.suanshu.stats.random.rng.univariate.uniform.mersennetwister.MersenneTwister; 34 34 import java.util.Arrays; 35 35 -
Examples/src/main/java/com/numericalmethod/suanshu/examples/SOCP.java
r78 r200 27 27 import com.numericalmethod.suanshu.algebra.linear.vector.doubles.Vector; 28 28 import com.numericalmethod.suanshu.algebra.linear.vector.doubles.dense.DenseVector; 29 import com.numericalmethod.suanshu.optimization.multivariate.constrained.convex.sdp.socp.interiorpoint.PrimalDualInteriorPoint ;29 import com.numericalmethod.suanshu.optimization.multivariate.constrained.convex.sdp.socp.interiorpoint.PrimalDualInteriorPointMinimizer; 30 30 import com.numericalmethod.suanshu.optimization.multivariate.constrained.convex.sdp.socp.interiorpoint.PrimalDualSolution; 31 31 import com.numericalmethod.suanshu.optimization.multivariate.constrained.convex.sdp.socp.problem.SOCPGeneralConstraint; … … 114 114 PrimalDualSolution soln0 = new PrimalDualSolution(x0, s0, y0); 115 115 116 PrimalDualInteriorPoint socp = new PrimalDualInteriorPoint(epsilon, maxIteration);116 PrimalDualInteriorPointMinimizer socp = new PrimalDualInteriorPointMinimizer(epsilon, maxIteration); 117 117 IterativeMinimizer<PrimalDualSolution> soln = socp.solve(problem); 118 118 soln.search(soln0); … … 131 131 public static void solveSOCP_0020(SOCPGeneralProblem problem, double epsilon, int maxIteration) 132 132 throws Exception { 133 PrimalDualInteriorPoint socp = new PrimalDualInteriorPoint(epsilon, maxIteration);133 PrimalDualInteriorPointMinimizer socp = new PrimalDualInteriorPointMinimizer(epsilon, maxIteration); 134 134 IterativeMinimizer<PrimalDualSolution> soln = socp.solve(problem); 135 135 soln.search(); -
Examples/src/main/java/com/numericalmethod/suanshu/examples/SemiDefiniteProgramming.java
r55 r200 28 28 import com.numericalmethod.suanshu.algebra.linear.vector.doubles.dense.DenseVector; 29 29 import com.numericalmethod.suanshu.optimization.multivariate.constrained.convex.sdp.pathfollowing.*; 30 import com.numericalmethod.suanshu.optimization.multivariate.constrained.convex.sdp.pathfollowing.PrimalDualPathFollowing .Solution;30 import com.numericalmethod.suanshu.optimization.multivariate.constrained.convex.sdp.pathfollowing.PrimalDualPathFollowingMinimizer.Solution; 31 31 import com.numericalmethod.suanshu.optimization.multivariate.constrained.convex.sdp.problem.SDPDualProblem; 32 32 … … 142 142 public static void primalDualPathFollowing( 143 143 SDPDualProblem problem, CentralPath path0, double gamma0, double epsilon) throws Exception { 144 PrimalDualPathFollowing pdpf = new PrimalDualPathFollowing(gamma0, epsilon);144 PrimalDualPathFollowingMinimizer pdpf = new PrimalDualPathFollowingMinimizer(gamma0, epsilon); 145 145 Solution soln = pdpf.solve(problem); 146 146 CentralPath path = soln.search(path0); … … 163 163 public static void homogeneousPathFollowing( 164 164 SDPDualProblem problem, double epsilon) throws Exception { 165 HomogeneousPathFollowing hsdpf = new HomogeneousPathFollowing(epsilon);165 HomogeneousPathFollowingMinimizer hsdpf = new HomogeneousPathFollowingMinimizer(epsilon); 166 166 Solution soln = hsdpf.solve(problem); 167 167 CentralPath path = soln.search(); -
Examples/src/main/java/com/numericalmethod/suanshu/examples/SequentialQuadraticProgramming.java
r55 r200 33 33 import com.numericalmethod.suanshu.optimization.multivariate.constrained.constraint.general.GeneralGreaterThanConstraints; 34 34 import com.numericalmethod.suanshu.optimization.multivariate.constrained.constraint.linear.LinearGreaterThanConstraints; 35 import com.numericalmethod.suanshu.optimization.multivariate.constrained.general.sqp.activeset.SQPActiveSet Solver;36 import com.numericalmethod.suanshu.optimization.multivariate.constrained.general.sqp.activeset.SQPActiveSet Solver.Solution;37 import com.numericalmethod.suanshu.optimization.multivariate.constrained.general.sqp.activeset.SQPActiveSet SolverForOnlyInequalityConstraint;35 import com.numericalmethod.suanshu.optimization.multivariate.constrained.general.sqp.activeset.SQPActiveSetMinimizer; 36 import com.numericalmethod.suanshu.optimization.multivariate.constrained.general.sqp.activeset.SQPActiveSetMinimizer.Solution; 37 import com.numericalmethod.suanshu.optimization.multivariate.constrained.general.sqp.activeset.SQPActiveSetOnlyInequalityConstraintMinimizer; 38 38 import com.numericalmethod.suanshu.optimization.multivariate.constrained.general.sqp.activeset.equalityconstraint.*; 39 39 import com.numericalmethod.suanshu.optimization.multivariate.constrained.problem.ConstrainedOptimProblemImpl1; … … 60 60 public static void main(String[] args) throws Exception { 61 61 System.out.println("This class demonstrates how to solve sequential quadratic programming " 62 + "problems in Java using SuanShu.");62 + "problems in Java using SuanShu."); 63 63 inequalityAndEquality(); 64 64 inequalityOnly(); … … 97 97 98 98 EqualityConstraints equal = new GeneralEqualityConstraints( 99 new RealScalarFunction() {100 @Override101 public Double evaluate(Vector x) {102 double x1 = x.get(1);103 double x2 = x.get(2);104 105 double fx = x1 * x1 + x2 * x2 - 9.;106 return fx;107 }108 109 @Override110 public int dimensionOfDomain() {111 return 2;112 }113 114 @Override115 public int dimensionOfRange() {116 return 1;117 }118 });99 new RealScalarFunction() { 100 @Override 101 public Double evaluate(Vector x) { 102 double x1 = x.get(1); 103 double x2 = x.get(2); 104 105 double fx = x1 * x1 + x2 * x2 - 9.; 106 return fx; 107 } 108 109 @Override 110 public int dimensionOfDomain() { 111 return 2; 112 } 113 114 @Override 115 public int dimensionOfRange() { 116 return 1; 117 } 118 }); 119 119 120 120 LinearGreaterThanConstraints greater = new LinearGreaterThanConstraints( 121 new DenseMatrix(new double[][]{122 {1, 0},123 {-1, 0},124 {0, 1},125 {0, -1}126 }),127 new DenseVector(1., -5., 2., -4.));128 129 SQPActiveSet Solver instance = new SQPActiveSetSolver(1e-6, 20);121 new DenseMatrix(new double[][]{ 122 {1, 0}, 123 {-1, 0}, 124 {0, 1}, 125 {0, -1} 126 }), 127 new DenseVector(1., -5., 2., -4.)); 128 129 SQPActiveSetMinimizer instance = new SQPActiveSetMinimizer(1e-6, 20); 130 130 ConstrainedOptimProblemImpl1 problem = new ConstrainedOptimProblemImpl1( 131 f, equal, greater.toLessThanConstraints());131 f, equal, greater.toLessThanConstraints()); 132 132 133 133 Vector x; … … 178 178 179 179 GreaterThanConstraints greater = new GeneralGreaterThanConstraints( 180 new RealScalarFunction() {181 @Override182 public Double evaluate(Vector x) {183 double x1 = x.get(1);184 double x2 = x.get(2);185 double x3 = x.get(3);186 double x4 = x.get(4);187 188 Matrix v = new DenseMatrix(new double[]{x1, x2}, 2, 1);189 190 Matrix A = new DenseMatrix(new double[][]{191 {0.25, 0},192 {0, 1}193 });194 Matrix B = new DenseMatrix(new double[]{0.5, 0}, 2, 1);195 196 Matrix FX = v.t().multiply(A).multiply(v);197 FX = FX.scaled(-1);198 FX = FX.add(v.t().multiply(B));199 200 double fx = FX.get(1, 1);201 fx += 0.75;202 203 return fx;204 }205 206 @Override207 public int dimensionOfDomain() {208 return 4;209 }210 211 @Override212 public int dimensionOfRange() {213 return 1;214 }215 },216 new RealScalarFunction() {217 @Override218 public Double evaluate(Vector x) {219 double x3 = x.get(3);220 double x4 = x.get(4);221 222 Matrix v = new DenseMatrix(new double[]{x3, x4}, 2, 1);223 224 Matrix A = new DenseMatrix(new double[][]{225 {5, 3},226 {3, 5}227 });228 Matrix B = new DenseMatrix(new double[]{11. / 2, 13. / 2}, 2, 1);229 230 Matrix FX = v.t().multiply(A).multiply(v);231 FX = FX.scaled(-1. / 8);232 FX = FX.add(v.t().multiply(B));233 234 double fx = FX.get(1, 1);235 fx += -35. / 2;236 237 return fx;238 }239 240 @Override241 public int dimensionOfDomain() {242 return 4;243 }244 245 @Override246 public int dimensionOfRange() {247 return 1;248 }249 });250 251 SQPActiveSet SolverForOnlyInequalityConstraint instance =252 new SQPActiveSetSolverForOnlyInequalityConstraint(1e-7, 300);180 new RealScalarFunction() { 181 @Override 182 public Double evaluate(Vector x) { 183 double x1 = x.get(1); 184 double x2 = x.get(2); 185 double x3 = x.get(3); 186 double x4 = x.get(4); 187 188 Matrix v = new DenseMatrix(new double[]{x1, x2}, 2, 1); 189 190 Matrix A = new DenseMatrix(new double[][]{ 191 {0.25, 0}, 192 {0, 1} 193 }); 194 Matrix B = new DenseMatrix(new double[]{0.5, 0}, 2, 1); 195 196 Matrix FX = v.t().multiply(A).multiply(v); 197 FX = FX.scaled(-1); 198 FX = FX.add(v.t().multiply(B)); 199 200 double fx = FX.get(1, 1); 201 fx += 0.75; 202 203 return fx; 204 } 205 206 @Override 207 public int dimensionOfDomain() { 208 return 4; 209 } 210 211 @Override 212 public int dimensionOfRange() { 213 return 1; 214 } 215 }, 216 new RealScalarFunction() { 217 @Override 218 public Double evaluate(Vector x) { 219 double x3 = x.get(3); 220 double x4 = x.get(4); 221 222 Matrix v = new DenseMatrix(new double[]{x3, x4}, 2, 1); 223 224 Matrix A = new DenseMatrix(new double[][]{ 225 {5, 3}, 226 {3, 5} 227 }); 228 Matrix B = new DenseMatrix(new double[]{11. / 2, 13. / 2}, 2, 1); 229 230 Matrix FX = v.t().multiply(A).multiply(v); 231 FX = FX.scaled(-1. / 8); 232 FX = FX.add(v.t().multiply(B)); 233 234 double fx = FX.get(1, 1); 235 fx += -35. / 2; 236 237 return fx; 238 } 239 240 @Override 241 public int dimensionOfDomain() { 242 return 4; 243 } 244 245 @Override 246 public int dimensionOfRange() { 247 return 1; 248 } 249 }); 250 251 SQPActiveSetOnlyInequalityConstraintMinimizer instance 252 = new SQPActiveSetOnlyInequalityConstraintMinimizer(1e-7, 300); 253 253 IterativeMinimizer<Vector> minimizer = instance.solve(f, greater); 254 254 Vector x = minimizer.search(new DenseVector(1., 0.5, 2., 3.), new DenseVector(1., 1.)); … … 294 294 295 295 EqualityConstraints equal = new GeneralEqualityConstraints( 296 new RealScalarFunction() {297 @Override298 public Double evaluate(Vector x) {299 double x1 = x.get(1);300 double x2 = x.get(2);301 double x3 = x.get(3);302 303 double fx = pow(x1, 4.);304 fx += pow(x2, 4.);305 fx += pow(x3, 4.);306 fx -= 25.;307 308 return fx;309 }310 311 @Override312 public int dimensionOfDomain() {313 return 3;314 }315 316 @Override317 public int dimensionOfRange() {318 return 1;319 }320 },321 new RealScalarFunction() {322 @Override323 public Double evaluate(Vector x) {324 double x1 = x.get(1);325 double x2 = x.get(2);326 double x3 = x.get(3);327 328 double fx = 8. * pow(x1, 2.);329 fx += 14. * pow(x2, 2.);330 fx += 7. * pow(x3, 2.);331 fx -= 56.;332 333 return fx;334 }335 336 @Override337 public int dimensionOfDomain() {338 return 3;339 }340 341 @Override342 public int dimensionOfRange() {343 return 1;344 }345 });346 347 SQPActiveSet SolverForOnlyEqualityConstraint1 instance =348 new SQPActiveSetSolverForOnlyEqualityConstraint1(349 new SQPActiveSet SolverForOnlyEqualityConstraint1.VariationFactory() {296 new RealScalarFunction() { 297 @Override 298 public Double evaluate(Vector x) { 299 double x1 = x.get(1); 300 double x2 = x.get(2); 301 double x3 = x.get(3); 302 303 double fx = pow(x1, 4.); 304 fx += pow(x2, 4.); 305 fx += pow(x3, 4.); 306 fx -= 25.; 307 308 return fx; 309 } 310 311 @Override 312 public int dimensionOfDomain() { 313 return 3; 314 } 315 316 @Override 317 public int dimensionOfRange() { 318 return 1; 319 } 320 }, 321 new RealScalarFunction() { 322 @Override 323 public Double evaluate(Vector x) { 324 double x1 = x.get(1); 325 double x2 = x.get(2); 326 double x3 = x.get(3); 327 328 double fx = 8. * pow(x1, 2.); 329 fx += 14. * pow(x2, 2.); 330 fx += 7. * pow(x3, 2.); 331 fx -= 56.; 332 333 return fx; 334 } 335 336 @Override 337 public int dimensionOfDomain() { 338 return 3; 339 } 340 341 @Override 342 public int dimensionOfRange() { 343 return 1; 344 } 345 }); 346 347 SQPActiveSetOnlyEqualityConstraint1Minimizer instance 348 = new SQPActiveSetOnlyEqualityConstraint1Minimizer( 349 new SQPActiveSetOnlyEqualityConstraint1Minimizer.VariationFactory() { 350 350 @Override 351 351 public SQPASEVariation newVariation( 352 RealScalarFunction f, EqualityConstraints equal) {353 SQPASEVariation2 impl = new SQPASEVariation2(100., 0.01, 10);354 impl.set(f, equal);355 return impl;356 }352 RealScalarFunction f, EqualityConstraints equal) { 353 SQPASEVariation2 impl = new SQPASEVariation2(100., 0.01, 10); 354 impl.set(f, equal); 355 return impl; 356 } 357 357 }, 358 358 1e-10, -
Examples/src/main/java/com/numericalmethod/suanshu/examples/StochasticIntegral.java
r55 r200 70 70 public static void main(String[] args) { 71 71 System.out.println("This class demonstrates how to numerically compute stochastic " 72 + "integrals in Java using SuanShu.");72 + "integrals in Java using SuanShu."); 73 73 B2dB1_0010(); 74 74 B2dB1_0020(); … … 155 155 Integral I = new IntegralDB(B2); 156 156 157 Expectation E = newExpectation(I,158 T_0, T_1, // [0, 1]159 N_T, // discretization160 N_SIMS); // number of simulations157 IntegralExpectation E = new IntegralExpectation(I, 158 T_0, T_1, // [0, 1] 159 N_T, // discretization 160 N_SIMS); // number of simulations 161 161 162 162 /** … … 202 202 Integral I = new IntegralDt(B1B2); 203 203 204 Expectation E = newExpectation(I,205 T_0, T_1, // [0, 1]206 N_T, // discretization207 N_SIMS); // number of simulations204 IntegralExpectation E = new IntegralExpectation(I, 205 T_0, T_1, // [0, 1] 206 N_T, // discretization 207 N_SIMS); // number of simulations 208 208 209 209 System.out.printf("the mean is %f%n", E.mean());
Note: See TracChangeset
for help on using the changeset viewer.
