the weight of the weight?

Started by Benahmed Abdelkrim, April 14, 2018, 08:00:19 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Liviu Lalescu

Quote from: Benahmed Abdelkrim on April 16, 2018, 09:14:44 PM
I think he has a third possibility, maybe it's fiction but it exists (I think); to find the right combination of random seeds for each file? an equation of chance ?!

Absolutely not. That is why the random number generator should be good. And it is.

Benahmed Abdelkrim

Quote from: Liviu Lalescu on April 16, 2018, 09:18:13 PM

Absolutely not. That is why the random number generator should be good. And it is.
maybe I'm wrong?
can we know how this generator works?
B.A/krim

Liviu Lalescu

#17
It is from Knuth TAOCP Vol. 2. See timetable_defs.cpp, search randomKnuth for the implementation.

For us, all that matters is that you give it an initial number (X and Y) and it generates a series of numbers in the range 1..2147483647, updating X and Y at each step (the random number at each step is equivalent to |X-Y|).

Edited to add: The numbers should be without connection one with the next one. And we use them in two ways: a random number between 0 and n-1 (making modulo n) or a real number between 0% and 100% to know if to skip a constraint or not.

Volker Dirr

i fear that is impossible, if you are able to find such an relation then:
a) i think you also proved at the same time that the random number generator is bad.
and also
b) in that case there should be an alorithm oder trick to do that without beeing "random"

Benahmed Abdelkrim

#19
Quote from: Benahmed Abdelkrim on April 16, 2018, 07:42:33 PM
surprise or good news, the first file with 100% weight is resolved in record time; 12 min 43s.

same random seeds of the second file cited above :
X=2105598204,
Y=300887750


only one small change: the activity ID = 533 and ID = 534 fixed in time by the constraint: acttivity has a preferred starting time instead of the constraint: activity has a set of preferred starting time.

I attach below the file and a screenshot of FET showing the end of generation

another tests with the last file cited above (no changes in the file);
characteristics:
generation time = 9min 15s;
Random seeds:
X = 1830718095;
Y = 870582853


OS: windows 8.1 , 64 bits , processor x64 ;

processor: Intel(R) Core(TM) i3-4150 CPU @ 3.50Ghz 3.50Ghz ;
RAM 4.00Go
cache memory:
   L1 Data Cache Size   2 x 32 KBytes
   L1 Instructions Cache Size   2 x 32 KBytes
   L2 Unified Cache Size   2 x 256 KBytes
   L3 Unified Cache Size   3072 KBytes

B.A/krim

Benahmed Abdelkrim

#20
another tests with the last file cited above
generation time: 24min 21s

same last random seeds
X=2105598204,
Y=300887750

OS: windows 7 64bits  x64

processor: Pentium Dual-Core CPU T4400 @ 2.20GHz
RAM 4.00Go
memory caches:
L1 Data Cache Size                  2 x 32 Ko
L1 Instructions Cache Size    2 x 32 Ko
L2 Unified Cache Size            1024 Ko
B.A/krim

Volker Dirr

#21
yes. that is normal.

you can also check the single core (SC) speed of that CPUs here:
http://cpu.userbenchmark.com/Compare/Intel-Core-i3-4150-vs-Intel-Pentium-T4400/2309vsm1886

So you can expect around 170% speedup. (of course they don't do a "timetabling" test, but the SC speed will be pretty similar to timetabling with FET.)

Benahmed Abdelkrim

I did a test and here is the result attached bellow:
B.A/krim