simple_ga 1.0.3 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 037cd41703f1c95bb4ca9a274623db03401209d7
4
- data.tar.gz: 03d3d6b19377a5ae8d2b7866b5bc60bed9a9cd80
3
+ metadata.gz: 1813fa6d985aee5c9572bbf81508e88ccdadb286
4
+ data.tar.gz: cf6fd5275a1ef095240621107555044ab10a0980
5
5
  SHA512:
6
- metadata.gz: 8f9af7d6cc7e67785611432bf66cf9f44d33fe6d8708038448b6bbc985223182db678c5957c25375036d1508b3001a69660b6ff8afdb72b87c2722d125344201
7
- data.tar.gz: 85318474f65849eaf216047250fc63717d8ac2d2c39cd9411dcf9b8fc885f365a21665e54cc07d7a724297b9eed4e8b132328c30e1e6d6ed4d0bf8a415162369
6
+ metadata.gz: 325c94265ded92550b7bca978a5ba871a57202d2089f75d120dcfc48ac67a57ae70a4629d28a69e9b5d60e12ce355407f8cf3f2ee194140ca4ef4972959d636e
7
+ data.tar.gz: fc05de75516630709d72890f84f46af4ed4816d1de75439a880beb323e378fe0aa12119cb16dfe9c56fe0d7c5e316180496041eaa2386b8fd4e05d42edef76c0
@@ -243,7 +243,7 @@ module SimpleGa
243
243
  # Core constraints.
244
244
  # Elites own a high fitness value.
245
245
  # The higher the fitness value, the higher the chance of being selected.
246
- if total_credits <= max_credits && total_credits >= min_credits && cgpa >= target_cgpa
246
+ if total_credits <= max_credits && total_credits >= min_credits
247
247
  @fitness = cgpa
248
248
  # This chromosome doesn't satisfy the important constraints
249
249
  # e.g. within the range of min_credits and max_credits
@@ -363,10 +363,19 @@ module SimpleGa
363
363
  # ncourse = 11
364
364
  seed = []
365
365
 
366
- 1.step(@@ncourse*2, 2) do |j|
367
- seed << rand(2)
368
- seed << (1 + rand(6))
366
+ max_credits = 20
367
+ if @@total_credits > max_credits
368
+ 1.step(@@ncourse*2, 2) do |j|
369
+ seed << rand(2)
370
+ seed << (1 + rand(6))
371
+ end
372
+ else
373
+ 1.step(@@ncourse*2, 2) do |j|
374
+ seed << 1
375
+ seed << (1 + rand(6))
376
+ end
369
377
  end
378
+
370
379
  return Chromosome.new(seed)
371
380
  end
372
381
 
@@ -382,6 +391,7 @@ module SimpleGa
382
391
  available_courses.each do |course_info|
383
392
  @@credits << course_info[1]
384
393
  end
394
+ @@total_credits = @@credits.inject(0, :+)
385
395
  end
386
396
  end # end/Chromosome
387
397
  end # end/GeneticAlgorithm
@@ -1,3 +1,3 @@
1
1
  module SimpleGa
2
- VERSION = "1.0.3"
2
+ VERSION = "1.1.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simple_ga
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.3
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Johnson Yeap
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-05-15 00:00:00.000000000 Z
11
+ date: 2015-05-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler