SlideShare a Scribd company logo
1 of 81
Download to read offline
© 2010 IBM Corporation
®
Some “Do”s and “Don't”s of 
Benchmarking
Paul Shaw, Program Manager, CP product development, IBM.
paul.shaw@fr.ibm.com
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
2
© 2010 IBM Corporation
Optimization at IBM
 IBM Research has a tradition of optimization
– Probably most recently for COIN­OR
 ILOG was fully transferred to IBM just under one year ago
– Brought new optimization products to IBM
– Since 4th
 of June, IBM sells “CPLEX Optimization Studio”
• Comprises CPLEX, CP Optimizer, OPL
– As well as ILOG CP (the older CP products Solver, Scheduler, Dispatcher)
 Academic Initiative
– Full CPLEX Optimization Studio will be free for academics
• https://www.ibm.com/developerworks/university/academicinitiative
• https://www.ibm.com/developerworks/university/support/faqs.html
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
3
© 2010 IBM Corporation
CP Optimizer
 CP Optimizer is a constraint programming engine concentrating on
– Combinatorial optimization problems
– Scheduling problems
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
4
© 2010 IBM Corporation
CP Optimizer
 CP Optimizer is a constraint programming engine concentrating on
– Combinatorial optimization problems
– Scheduling problems
 CP Optimizer has a robust built­in search engine (sometimes referred 
to as autonomous search)
– Although the search can be fully programmed if desired
– Concise hints on search can also be given
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
5
© 2010 IBM Corporation
CP Optimizer
 CP Optimizer is a constraint programming engine concentrating on
– Combinatorial optimization problems
– Scheduling problems
 CP Optimizer has a robust built­in search engine (sometimes referred 
to as autonomous search)
– Although the search can be fully programmed if desired
– Concise hints on search can also be given
 Our team concentrates on:
– Making CP Optimizer solve more quickly
– Making CP Optimizer easier to use
– Adding new modelling or solving features
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
6
© 2010 IBM Corporation
About this talk, or, “sorry for stealing the idea”
 Fifteen years ago
– I worked in a research group called APES
• Algorithms, Problems, Empirical Studies
– We studied algorithms and did a lot of experiments (or if you like, 
benchmarking)
– One report we wrote was called “How Not To Do It”
• Informally chronicled some misadventures in the world of 
experiments on NP­hard problems
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
7
© 2010 IBM Corporation
About this talk, or, “sorry for stealing the idea”
 Fifteen years ago
– I worked in a research group called APES
• Algorithms, Problems, Empirical Studies
– We studied algorithms and did a lot of experiments (or if you like, 
benchmarking)
– One report we wrote was called “How Not To Do It”
• Informally chronicled some misadventures in the world of 
experiments on NP­hard problems
 Today
– I tried (without peeking at the report) to remember some of the 
themes and to see how they applied to me now
– A couple of themes are new
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
8
© 2010 IBM Corporation
Scenario
 You are are PhD student working on a research area proposed to you by your 
thesis advisor.  You've thought of a cool new algorithm for a well­known 
problem class.  Eager to see how it performs, you code it up and run a load of 
experiments on classic benchmarks over the weekend.
 You check on the results on Monday morning. Tremendous!  You close several 
open problems by proving the optimality of some known upper bounds.
 Do you:
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
9
© 2010 IBM Corporation
Scenario
 You are are PhD student working on a research area proposed to you by your 
thesis advisor.  You've thought of a cool new algorithm for a well­known 
problem class.  Eager to see how it performs, you code it up and run a load of 
experiments on classic benchmarks over the weekend.
 You check on the results on Monday morning. Tremendous!  You close several 
open problems by proving the optimality of some known upper bounds.
 Do you:
– A) Call your thesis advisor to thank them for being so insightful in proposing 
the area.  He or she surely deserves at least half the credit.
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
10
© 2010 IBM Corporation
Scenario
 You are are PhD student working on a research area proposed to you by your 
thesis advisor.  You've thought of a cool new algorithm for a well­known 
problem class.  Eager to see how it performs, you code it up and run a load of 
experiments on classic benchmarks over the weekend.
 You check on the results on Monday morning. Tremendous!  You close several 
open problems by proving the optimality of some known upper bounds.
 Do you:
– A) Call your thesis advisor to thank them for being so insightful in proposing 
the area.  He or she surely deserves at least half the credit.
– B) Allow yourself a little smile – you always knew your idea was brilliant.
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
11
© 2010 IBM Corporation
Scenario
 You are are PhD student working on a research area proposed to you by your 
thesis advisor.  You've thought of a cool new algorithm for a well­known 
problem class.  Eager to see how it performs, you code it up and run a load of 
experiments on classic benchmarks over the weekend.
 You check on the results on Monday morning. Tremendous!  You close several 
open problems by proving the optimality of some known upper bounds.
 Do you:
– A) Call your thesis advisor to thank them for being so insightful in proposing 
the area.  He or she surely deserves at least half the credit.
– B) Allow yourself a little smile – you always knew your idea was brilliant.
– C) Call up your friends to go out and celebrate – the thesis is in the bag.
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
12
© 2010 IBM Corporation
Scenario
 You are are PhD student working on a research area proposed to you by your 
thesis advisor.  You've thought of a cool new algorithm for a well­known 
problem class.  Eager to see how it performs, you code it up and run a load of 
experiments on classic benchmarks over the weekend.
 You check on the results on Monday morning. Tremendous!  You close several 
open problems by proving the optimality of some known upper bounds.
 Do you:
– A) Call your thesis advisor to thank them for being so insightful in proposing 
the area.  He or she surely deserves at least half the credit.
– B) Allow yourself a little smile – you always knew your idea was brilliant.
– C) Call up your friends to go out and celebrate – the thesis is in the bag.
– D) Start scanning your code for bugs.
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
13
© 2010 IBM Corporation
DON'T TRUST YOURSELF
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
14
© 2010 IBM Corporation
DON'T TRUST YOURSELF
 DO have healthy skepticism
– DON'T believe that someone else will volunteer to find errors in your work
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
15
© 2010 IBM Corporation
DON'T TRUST YOURSELF
 DO have healthy skepticism
– DON'T believe that someone else will volunteer to find errors in your work
 DO check everything twice, then check it again (including the problem spec.)
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
16
© 2010 IBM Corporation
DON'T TRUST YOURSELF
 DO have healthy skepticism
– DON'T believe that someone else will volunteer to find errors in your work
 DO check everything twice, then check it again (including the problem spec.)
 DON'T  do it alone
– DO get help in your group to check your logic, code and algorithm
– DO use tools to detect errors, but DO write simple code
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
17
© 2010 IBM Corporation
DON'T TRUST YOURSELF
 DO have healthy skepticism
– DON'T believe that someone else will volunteer to find errors in your work
 DO check everything twice, then check it again (including the problem spec.)
 DON'T  do it alone
– DO get help in your group to check your logic, code and algorithm
– DO use tools to detect errors, but DO write simple code
 DO write a solution checker where appropriate (or better, use someone else's)
– DO resist the temptation to use the same data and solution reader
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
18
© 2010 IBM Corporation
DON'T TRUST YOURSELF
 DO have healthy skepticism
– DON'T believe that someone else will volunteer to find errors in your work
 DO check everything twice, then check it again (including the problem spec.)
 DON'T  do it alone
– DO get help in your group to check your logic, code and algorithm
– DO use tools to detect errors, but DO write simple code
 DO write a solution checker where appropriate (or better, use someone else's)
– DO resist the temptation to use the same data and solution reader
 DO write a second implementation
 DO construct a proof
 ...
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
19
© 2010 IBM Corporation
DON'T TRUST YOURSELF: A study
 Solve the optimization version of the MAX­CUT problem on a cubic graph
– Best known specialized algorithm has complexity O*(2     )
 We wanted to try CP Optimizer to see how it compared empirically
m/6
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
20
© 2010 IBM Corporation
DON'T TRUST YOURSELF: A study
 Solve the optimization version of the MAX­CUT problem on a cubic graph
– Best known specialized algorithm has complexity O*(2     )
 We wanted to try CP Optimizer to see how it compared empirically
 Results:
– Obvious model was terrible
• from memory, growth was around 2
m/6
m/2
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
21
© 2010 IBM Corporation
DON'T TRUST YOURSELF: A study
 Solve the optimization version of the MAX­CUT problem on a cubic graph
– Best known specialized algorithm has complexity O*(2     )
 We wanted to try CP Optimizer to see how it compared empirically
 Results:
– Obvious model was terrible
• from memory, growth was around 2
– Second model included a dominance rule to cut non­optimal solutions
• better: growth around 2
m/6
m/2
m/5
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
22
© 2010 IBM Corporation
DON'T TRUST YOURSELF: A study
 Solve the optimization version of the MAX­CUT problem on a cubic graph
– Best known specialized algorithm has complexity O*(2     )
 We wanted to try CP Optimizer to see how it compared empirically
 Results:
– Obvious model was terrible
• from memory, growth was around 2
– Second model included a dominance rule to cut non­optimal solutions
• better: growth around 2
– Third model included a more sophisticated dominance rule
• much faster:  growth was around m
m/6
3
m/2
m/5
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
23
© 2010 IBM Corporation
DON'T TRUST YOURSELF: A study
 Solve the optimization version of the MAX­CUT problem on a cubic graph
– Best known specialized algorithm has complexity O*(2     )
 We wanted to try CP Optimizer to see how it compared empirically
 Results:
– Obvious model was terrible
• from memory, growth was around 2
– Second model included a dominance rule to cut non­optimal solutions
• better: growth around 2
– Third model included a more sophisticated dominance rule
• much faster:  growth was around m
  So, I started looking for bugs in the model
m/6
3
m/2
m/5
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
24
© 2010 IBM Corporation
DON'T TRUST YOURSELF: How we debugged that one
 Three facts
– I suspected the third model was pruning too many branches
– I had two other simpler models
– I had a method for generating a nearly unlimited number of problems
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
25
© 2010 IBM Corporation
DON'T TRUST YOURSELF: How we debugged that one
 Three facts
– I suspected the third model was pruning too many branches
– I had two other simpler models
– I had a method for generating a nearly unlimited number of problems
 Generate large numbers of small problems until the more sophisticated 
algorithm produces a different answer from the simple one
– Keep the problems as small as possible as some detailed analysis is needed 
afterwards
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
26
© 2010 IBM Corporation
DON'T TRUST YOURSELF: How we debugged that one
 Three facts
– I suspected the third model was pruning too many branches
– I had two other simpler models
– I had a method for generating a nearly unlimited number of problems
 Generate large numbers of small problems until the more sophisticated 
algorithm produces a different answer from the simple one
– Keep the problems as small as possible as some detailed analysis is needed 
afterwards
 DO have a more trusted implementation
– Use it as a sanity check 
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
27
© 2010 IBM Corporation
DON'T TRUST YOURSELF: How we debugged that one
 Three facts
– I suspected the third model was pruning too many branches
– I had two other simpler models
– I had a method for generating a nearly unlimited number of problems
 Generate large numbers of small problems until the more sophisticated 
algorithm produces a different answer from the simple one
– Keep the problems as small as possible as some detailed analysis is needed 
afterwards
 DO have a more trusted implementation
– Use it as a sanity check 
 DO look for counter examples (automatically, or by hand)
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
28
© 2010 IBM Corporation
DON'T TRUST YOURSELF: How we debugged that one
 Three facts
– I suspected the third model was pruning too many branches
– I had two other simpler models
– I had a method for generating a nearly unlimited number of problems
 Generate large numbers of small problems until the more sophisticated 
algorithm produces a different answer from the simple one
– Keep the problems as small as possible as some detailed analysis is needed 
afterwards
 DO have a more trusted implementation
– Use it as a sanity check 
 DO look for counter examples (automatically, or by hand)
 DO test as widely as possible
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
29
© 2010 IBM Corporation
Progressive Party Problem
 Organize a party in a marina on a number of host boats
– Each boat has a capacity (people) and a crew of a certain size
– The party is organized into six (or more periods)
– Host crews stay on their host boat – each guest crew visits a new host 
boat at each period
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
30
© 2010 IBM Corporation
Progressive Party Problem
 Organize a party in a marina on a number of host boats
– Each boat has a capacity (people) and a crew of a certain size
– The party is organized into six (or more periods)
– Host crews stay on their host boat – each guest crew visits a new host 
boat at each period
 Constraints
– The total size of host and guest crews on a boat is less than boat 
capacity
– Each guest crew must visit a different boat in each period
– No two guest crews can meet more than once
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
31
© 2010 IBM Corporation
Progressive Party Problem
 Organize a party in a marina on a number of host boats
– Each boat has a capacity (people) and a crew of a certain size
– The party is organized into six (or more periods)
– Host crews stay on their host boat – each guest crew visits a new host 
boat at each period
 Constraints
– The total size of host and guest crews on a boat is less than boat 
capacity
– Each guest crew must visit a different boat in each period
– No two guest crews can meet more than once
 Objective: minimize the number of host boats
– Decide on the host boats and a visit schedule for the guest crews
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
32
© 2010 IBM Corporation
Progressive Party Problem
 The progressive part problems can be considered to have two aspects:
– (a) Decide on the set of host boats
– (b) Given the host boats, decide on a schedule for the guest crews
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
33
© 2010 IBM Corporation
Progressive Party Problem
 The progressive part problems can be considered to have two aspects:
– (a) Decide on the set of host boats
– (b) Given the host boats, decide on a schedule for the guest crews
 To simplify the problem, solution techniques typically divide the two 
problems, with normally (a) being solved by hand (e.g. using the biggest 
boats)
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
34
© 2010 IBM Corporation
Progressive Party Problem
 The progressive part problems can be considered to have two aspects:
– (a) Decide on the set of host boats
– (b) Given the host boats, decide on a schedule for the guest crews
 To simplify the problem, solution techniques typically divide the two 
problems, with normally (a) being solved by hand (e.g. using the biggest 
boats)
 I was pretty ignorant of the literature and just coded up the whole model 
and used CP Optimizer's search
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
35
© 2010 IBM Corporation
Progressive Party Problem
 ! ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
 ! Minimization problem ­ 1408 variables, 15805 constraints
 ! Preprocessing : 42 extractables eliminated, 42 constraints generated
 ! LogPeriod            = 10000
 ! Initial process time : 0.10s (0.08s extraction + 0.02s propagation)
 !  . Log search space  : 4408.7 (before), 4235.2 (after)
 !  . Memory usage      : 4.9 Mb (before), 7.2 Mb (after)
 !  . Variables fixed   : 42
 ! ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
 !   Branches  Non­fixed                Branch decision                   Best
        10000         37                 M13,30  =    3
 *      12605      1.57s                  M0,20  =    3                     21
 *      18049      2.36s                  M0,20  =    0                     20
        20000        321                    H13  =    0                     20
 *      20767      2.72s                 M21,27  =    1                     19
 *      21494      2.80s                 M21,27  =    1                     18
 *      22756      2.99s                 M13,41  =    0                     17
 *      27350      3.47s                 M23,38  =    1                     16
        30000        385                  T0,31  =    7                     16
 *      34262      4.56s                 M21,27  =    1                     15
        40000        411                  T3,30  =   32  F                  15
        50000        399                 M16,38  =    5                     15
 *      50492      7.43s                  M0,15  =    1                     14
        60000        409                   M1,8 !=    1                     14
        70000        462                 M11,36  =    5                     14
 *      75638     11.54s                  M0,15  =    1                     13
 ! Search terminated, replaying optimal solution
 ! ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
 ! Solution status        : Terminated normally, optimal found (tol. = 0)
 ! Number of branches     : 75638
 ! Number of fails        : 17715
 ! Total memory usage     : 11.9 Mb (10.3 Mb CP Optimizer + 1.6 Mb Concert)
 ! Time spent in solve    : 11.55s (11.47s engine + 0.08s extraction)
 ! Search speed (br. / s) : 6594.4
 ! ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
36
© 2010 IBM Corporation
Progressive Party Problem: identify decision variables
 ! ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
 ! Minimization problem ­ 1408 variables, 15805 constraints, 1 phase
 ! Preprocessing : 42 extractables eliminated, 42 constraints generated
 ! LogPeriod            = 10000
 ! Initial process time : 0.13s (0.11s extraction + 0.02s propagation)
 !  . Log search space  : 4408.7 (before), 4235.2 (after)
 !  . Memory usage      : 4.9 Mb (before), 7.2 Mb (after)
 !  . Variables fixed   : 42
 ! ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
 !   Branches  Non­fixed                Branch decision                   Best
 *       2887      0.48s                  M4,19  =    5                     20
 *       4578      0.66s                   M6,7  =    1                     16
 *       6625      0.91s                 M22,23  =    0                     14
        10000        714                  T3,28  =   13  F                  14
 *      11592      1.53s                  M6,13  =    2                     13
 ! Search terminated, replaying optimal solution
 ! ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
 ! Solution status        : Terminated normally, optimal found (tol. = 0)
 ! Number of branches     : 11592
 ! Number of fails        : 3227
 ! Total memory usage     : 11.1 Mb (9.5 Mb CP Optimizer + 1.6 Mb Concert)
 ! Time spent in solve    : 1.54s (1.43s engine + 0.11s extraction)
 ! Search speed (br. / s) : 8106.3
 ! ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
37
© 2010 IBM Corporation
DON'T FORGET TO TRY THE OBVIOUS
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
38
© 2010 IBM Corporation
DON'T FORGET TO TRY THE OBVIOUS
 It doesn't take long
– So, even if it works poorly, you did not waste too much time
– Gives you a simple “trusted” implementation that you can test against
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
39
© 2010 IBM Corporation
DON'T FORGET TO TRY THE OBVIOUS
 It doesn't take long
– So, even if it works poorly, you did not waste too much time
– Gives you a simple “trusted” implementation that you can test against
 It might work well.  If the obvious approach has not worked for others:
– The reasons it did not work might not exist today
– For the PPP, CP Optimizer is using
• A global packing constraint
• A search process which uses restarts and learning
– Which were not available / used in original studies
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
40
© 2010 IBM Corporation
DON'T FORGET TO TRY THE OBVIOUS
 It doesn't take long
– So, even if it works poorly, you did not waste too much time
– Gives you a simple “trusted” implementation that you can test against
 It might work well.  If the obvious approach has not worked for others:
– The reasons it did not work might not exist today
– For the PPP, CP Optimizer is using
• A global packing constraint
• A search process which uses restarts and learning
– Which were not available / used in original studies
 In any case, if the obvious approach is a success
– DON'T TRUST YOURSELF – check your work!
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
41
© 2010 IBM Corporation
Magic Squares
7 18 25 4 11
5 8 19 12 21
16 24 13 9 3
22 14 2 17 10
15 1 6 23 20
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
42
© 2010 IBM Corporation
Magic Squares
7 18 25 4 11
5 8 19 12 21
16 24 13 9 3
22 14 2 17 10
15 1 6 23 20 65
65
65
65
65
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
43
© 2010 IBM Corporation
Magic Squares
7 18 25 4 11
5 8 19 12 21
16 24 13 9 3
22 14 2 17 10
15 1 6 23 20
65
65
65 65 65
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
44
© 2010 IBM Corporation
Magic Squares
7 18 25 4 11
5 8 19 12 21
16 24 13 9 3
22 14 2 17 10
15 1 6 23 20
65
65
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
45
© 2010 IBM Corporation
Diagonally Ordered Magic Squares
7 18 25 4 11
5 8 19 12 21
16 24 13 9 3
22 14 2 17 10
15 1 6 23 20
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
46
© 2010 IBM Corporation
Diagonally Ordered Magic Squares
7 18 25 4 11
5 8 19 12 21
16 24 13 9 3
22 14 2 17 10
15 1 6 23 20
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
47
© 2010 IBM Corporation
Diagonally Ordered Magic Squares
 “Streamlined Constraint Reasoning”
– Gomes and Sellmann, CP 2004
– Uses restarts and “streamlining” (search space restriction)
 “Disco Novo Gogo”
– Sellmann and Ansotegui, AAAI 2006
– Uses restarts, randomized variable ordering and learning on the 
value selection heuristic
 I wanted to see how CP Optimizer's search compared
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
48
© 2010 IBM Corporation
Diagonally Ordered Magic Squares
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
49
© 2010 IBM Corporation
Diagonally Ordered Magic Squares
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
50
© 2010 IBM Corporation
Diagonally Ordered Magic Squares
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
51
© 2010 IBM Corporation
Streamlining: Dumbledore Squares
 Each row and column usually has an even spread of numbers
7 18 25 4 11
5 8 19 12 21
16 24 13 9 3
22 14 2 17 10
15 1 6 23 20
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
52
© 2010 IBM Corporation
Streamlining: Dumbledore Squares
 Force each row and column to have a number from each “class”
7 18 25 4 11
5 8 19 12 21
16 24 13 9 3
22 14 2 17 10
15 1 6 23 20
B D E A C
A B D C E
D E C B A
E C A D B
C A B E D
(A) 1­5          (B) 6­10             (C) 11­15            (D) 16­20             (E) 21­25 
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
53
© 2010 IBM Corporation
Streamlining: Dumbledore Squares
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
54
© 2010 IBM Corporation
Streamlining: Dumbledore Squares
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
55
© 2010 IBM Corporation
Streamlining: Dumbledore Squares
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
56
© 2010 IBM Corporation
DO FAVOUR GRAPHS OVER TABLES
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
57
© 2010 IBM Corporation
DO FAVOUR GRAPHS OVER TABLES
 DO produce scaling results when you can
– These give excellent information about how different methods compare
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
58
© 2010 IBM Corporation
DO FAVOUR GRAPHS OVER TABLES
 DO produce scaling results when you can
– These give excellent information about how different methods compare
 DO use scatter plots
– When results cannot easily be aggregated
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
59
© 2010 IBM Corporation
DO FAVOUR GRAPHS OVER TABLES
 DO produce scaling results when you can
– These give excellent information about how different methods compare
 DO use scatter plots
– When results cannot easily be aggregated
 DO convert tables you find in the literature to graphs
– DON'T use tables just because previous papers did!
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
60
© 2010 IBM Corporation
Large neighborhood search
 Hybrid of local and constructive search which looks like local search 
from a high level, but uses constructive search to make moves
– Each move removes part of the current solution
– Rebuilds it using a constructive method (usually limited in backtracks)
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
61
© 2010 IBM Corporation
Large neighborhood search
 Hybrid of local and constructive search which looks like local search 
from a high level, but uses constructive search to make moves
– Each move removes part of the current solution
– Rebuilds it using a constructive method (usually limited in backtracks)
 I applied LNS to routing problems, and tested on the well­known 
“Solomon” instances of capacitated vehicle routing problems with time 
windows
– This benchmark suite of 56 problems has been used in hundreds of 
papers on vehicle routing.
– My LNS method removed some customers from routes, then re­
inserted them using a backtracking technique and ordering heuristics
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
62
© 2010 IBM Corporation
Large neighborhood search
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
63
© 2010 IBM Corporation
Large neighborhood search
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
64
© 2010 IBM Corporation
Large neighborhood search
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
65
© 2010 IBM Corporation
Large neighborhood search
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
66
© 2010 IBM Corporation
Solomon problem instances (100 customers)
 Objective is to
– As a primary objective, minimize the number of vehicles used
– As a secondary objective, minimize the distance travelled
– obj = M * vehicles + distance
 R1
 C1
 R2
 C2
RC1 RC2
5­10 customers
per route
25­50 customers
per route
Random
positions
Clustered
positions
Mixed
Positions
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
67
© 2010 IBM Corporation
Typical situation on long­route problems (series 2)
 For the most part, LNS will reduce the distance and not the vehicles
– To reduce the number of vehicles, LNS must remove and successfully 
 reinsert all customers on a single vehicle
– When average customers on a route >=12, this gets difficult
Bad for reducing vehicles Good for reducing vehicles
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
68
© 2010 IBM Corporation
Solomon problem instances (100 customers)
 Objective is to
– As a primary objective, minimize the number of vehicles used
– As a secondary objective, minimize the distance travelled
– obj = M * vehicles + distance
 R1
 C1
 R2
 C2
RC1 RC2
5­10 customers
per route
25­50 customers
per route
Random
positions
Clustered
positions
Mixed
Positions
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
69
© 2010 IBM Corporation
Solomon problem instances (100 customers)
 Objective is to
– As a primary objective, minimize the number of vehicles used
– As a secondary objective, minimize the distance travelled
– obj = M * vehicles + distance
 R1
 C1
 R2
 C2
RC1 RC2
5­10 customers
per route
25­50 customers
per route
Random
positions
Clustered
positions
Mixed
Positions
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
70
© 2010 IBM Corporation
DON'T be a slave to benchmark suites
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
71
© 2010 IBM Corporation
DON'T be a slave to benchmark suites
 DON'T feel that your algorithm has to be good everywhere
– But DO know how it performs in as many places as possible
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
72
© 2010 IBM Corporation
DON'T be a slave to benchmark suites
 DON'T feel that your algorithm has to be good everywhere
– But DO know how it performs in as many places as possible
 DO report your failures
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
73
© 2010 IBM Corporation
DON'T be a slave to benchmark suites
 DON'T feel that your algorithm has to be good everywhere
– But DO know how it performs in as many places as possible
 DO report your failures
 If you need to, DO create new benchmark instances,
– But DO be credible
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
74
© 2010 IBM Corporation
Heuristics
 Variable and value ordering heuristics are ubiquitous
 Typical implementation of first fail:
best = ­1;
bestSize = infinity;
for i in 1..n
  if (not fixed(x[i]) and domain­size(x[i]) < bestSize)
    best = i
    bestSize = domain­size(x[i])
  end if
end for
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
75
© 2010 IBM Corporation
Heuristics
 Variable and value ordering heuristics are ubiquitous
 Typical implementation of first fail:
best = ­1;
bestSize = infinity;
for i in 1..n
  if (not fixed(x[i]) and domain­size(x[i]) < bestSize)
    best = i
    bestSize = domain­size(x[i])
  end if
end for
– This code contains an implicit tie­breaking rule:
• Lower indexed variables are chosen over higher indexed ones
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
76
© 2010 IBM Corporation
Heuristics: Magic squares
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
77
© 2010 IBM Corporation
Heuristics: Magic squares
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
78
© 2010 IBM Corporation
DO think about tie breaking
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
79
© 2010 IBM Corporation
DO think about tie breaking
 DON'T tie break on arbitrary data, like an index
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
80
© 2010 IBM Corporation
DO think about tie breaking
 DON'T tie break on arbitrary data, like an index
 DON'T wrongly attribute performance to the major selection rule
– Test the minor selection rules as well
IBM Software Group | Lotus software
IBM Software Group | WebSphere software
81
© 2010 IBM Corporation
Summary
 DON'T trust yourself
– If it looks too good to be true, then it probably is
 DON'T forget to try the obvious
– Your “obvious” might not be the same as others'
– The obvious might work now, when it didn't before
 DO use graphs over tables
– Will make you ask much more interesting questions
 DON'T be a slave to benchmark suites
– Be honest, report your failures
 DO think about tie­breaking
– Can have a massive impact on benchmark results

More Related Content

What's hot

New Results for the GEO-CAPE Observation Scheduling Problem
New Results for the GEO-CAPE Observation Scheduling ProblemNew Results for the GEO-CAPE Observation Scheduling Problem
New Results for the GEO-CAPE Observation Scheduling ProblemPhilippe Laborie
 
Recent advances on large scheduling problems in CP Optimizer
Recent advances on large scheduling problems in CP OptimizerRecent advances on large scheduling problems in CP Optimizer
Recent advances on large scheduling problems in CP OptimizerPhilippe Laborie
 
Objective Landscapes for Constraint Programming
Objective Landscapes for Constraint ProgrammingObjective Landscapes for Constraint Programming
Objective Landscapes for Constraint ProgrammingPhilippe Laborie
 
Industrial project and machine scheduling with Constraint Programming
Industrial project and machine scheduling with Constraint ProgrammingIndustrial project and machine scheduling with Constraint Programming
Industrial project and machine scheduling with Constraint ProgrammingPhilippe Laborie
 
Optimization: from mathematical tools to real applications
Optimization: from mathematical tools to real applicationsOptimization: from mathematical tools to real applications
Optimization: from mathematical tools to real applicationsPhilippe Laborie
 
Multiclass classification using Massively Threaded Multiprocessors
Multiclass classification using Massively Threaded MultiprocessorsMulticlass classification using Massively Threaded Multiprocessors
Multiclass classification using Massively Threaded Multiprocessorssergherrero
 
Business Optimizer Introduction
Business Optimizer IntroductionBusiness Optimizer Introduction
Business Optimizer IntroductionDonato Marrazzo
 

What's hot (8)

New Results for the GEO-CAPE Observation Scheduling Problem
New Results for the GEO-CAPE Observation Scheduling ProblemNew Results for the GEO-CAPE Observation Scheduling Problem
New Results for the GEO-CAPE Observation Scheduling Problem
 
Recent advances on large scheduling problems in CP Optimizer
Recent advances on large scheduling problems in CP OptimizerRecent advances on large scheduling problems in CP Optimizer
Recent advances on large scheduling problems in CP Optimizer
 
Objective Landscapes for Constraint Programming
Objective Landscapes for Constraint ProgrammingObjective Landscapes for Constraint Programming
Objective Landscapes for Constraint Programming
 
Industrial project and machine scheduling with Constraint Programming
Industrial project and machine scheduling with Constraint ProgrammingIndustrial project and machine scheduling with Constraint Programming
Industrial project and machine scheduling with Constraint Programming
 
Optimization: from mathematical tools to real applications
Optimization: from mathematical tools to real applicationsOptimization: from mathematical tools to real applications
Optimization: from mathematical tools to real applications
 
Multiclass classification using Massively Threaded Multiprocessors
Multiclass classification using Massively Threaded MultiprocessorsMulticlass classification using Massively Threaded Multiprocessors
Multiclass classification using Massively Threaded Multiprocessors
 
Pramod Baravkar_Resume
Pramod Baravkar_ResumePramod Baravkar_Resume
Pramod Baravkar_Resume
 
Business Optimizer Introduction
Business Optimizer IntroductionBusiness Optimizer Introduction
Business Optimizer Introduction
 

Similar to Some "Do"s and "Dont'"s of Benchmarking

Enterprise COBOL for z/OS, V5.1 at Innovate 2014
Enterprise COBOL for z/OS, V5.1 at Innovate 2014Enterprise COBOL for z/OS, V5.1 at Innovate 2014
Enterprise COBOL for z/OS, V5.1 at Innovate 2014Dwayne Moore
 
Deploying End-to-End Deep Learning Pipelines with ONNX
Deploying End-to-End Deep Learning Pipelines with ONNXDeploying End-to-End Deep Learning Pipelines with ONNX
Deploying End-to-End Deep Learning Pipelines with ONNXDatabricks
 
Understanding DevOps
Understanding DevOpsUnderstanding DevOps
Understanding DevOpsInnoTech
 
Continuous Deployment for Deep Learning
Continuous Deployment for Deep LearningContinuous Deployment for Deep Learning
Continuous Deployment for Deep LearningDatabricks
 
How NBCUniversal Adopted DevOps
How NBCUniversal Adopted DevOpsHow NBCUniversal Adopted DevOps
How NBCUniversal Adopted DevOpsSanjeev Sharma
 
Unicorns on an Aircraft Carrier: CDSummit London and Stockholm Keynote
Unicorns on an Aircraft Carrier: CDSummit London and Stockholm KeynoteUnicorns on an Aircraft Carrier: CDSummit London and Stockholm Keynote
Unicorns on an Aircraft Carrier: CDSummit London and Stockholm KeynoteSanjeev Sharma
 
S106 using ibm urban code deploy to deliver your apps to cics
S106 using ibm urban code deploy to deliver your apps to cicsS106 using ibm urban code deploy to deliver your apps to cics
S106 using ibm urban code deploy to deliver your apps to cicsnick_garrod
 
100 blue mix days technical training
100 blue mix days technical training100 blue mix days technical training
100 blue mix days technical trainingAjit Yohannan
 
Decision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTX
Decision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTXDecision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTX
Decision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTXSanjayKPrasad2
 
Getting started with OpenERP
Getting started with OpenERPGetting started with OpenERP
Getting started with OpenERPAbeer AlSayed
 
CampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
CampDevOps keynote - DevOps: Using 'Lean' to eliminate BottlenecksCampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
CampDevOps keynote - DevOps: Using 'Lean' to eliminate BottlenecksSanjeev Sharma
 
Webcast Automação Implantação de Aplicações (DevOps)
Webcast Automação Implantação de Aplicações (DevOps)Webcast Automação Implantação de Aplicações (DevOps)
Webcast Automação Implantação de Aplicações (DevOps)Felipe Freire
 
A301 ctu madrid2016-monitoring
A301 ctu madrid2016-monitoringA301 ctu madrid2016-monitoring
A301 ctu madrid2016-monitoringMichael Dawson
 
From COBOL to Models: an MDE framework to extract business logic out of legac...
From COBOL to Models: an MDE framework to extract business logic out of legac...From COBOL to Models: an MDE framework to extract business logic out of legac...
From COBOL to Models: an MDE framework to extract business logic out of legac...Jordi Cabot
 
Extracting Business Rules from COBOL: A Model-Based Framework
Extracting Business Rules from COBOL: A Model-Based FrameworkExtracting Business Rules from COBOL: A Model-Based Framework
Extracting Business Rules from COBOL: A Model-Based FrameworkValerio Cosentino
 
What's new in Juno
What's new in JunoWhat's new in Juno
What's new in JunoTomasz Zarna
 
Who Took The Cookie From The Cookie Jar?
Who Took The Cookie From The Cookie Jar?Who Took The Cookie From The Cookie Jar?
Who Took The Cookie From The Cookie Jar?Olivier Thomann
 

Similar to Some "Do"s and "Dont'"s of Benchmarking (20)

Enterprise COBOL for z/OS, V5.1 at Innovate 2014
Enterprise COBOL for z/OS, V5.1 at Innovate 2014Enterprise COBOL for z/OS, V5.1 at Innovate 2014
Enterprise COBOL for z/OS, V5.1 at Innovate 2014
 
Eclipse Way
Eclipse WayEclipse Way
Eclipse Way
 
Deploying End-to-End Deep Learning Pipelines with ONNX
Deploying End-to-End Deep Learning Pipelines with ONNXDeploying End-to-End Deep Learning Pipelines with ONNX
Deploying End-to-End Deep Learning Pipelines with ONNX
 
Understanding DevOps
Understanding DevOpsUnderstanding DevOps
Understanding DevOps
 
Modular enablement
Modular enablementModular enablement
Modular enablement
 
Continuous Deployment for Deep Learning
Continuous Deployment for Deep LearningContinuous Deployment for Deep Learning
Continuous Deployment for Deep Learning
 
How NBCUniversal Adopted DevOps
How NBCUniversal Adopted DevOpsHow NBCUniversal Adopted DevOps
How NBCUniversal Adopted DevOps
 
Unicorns on an Aircraft Carrier: CDSummit London and Stockholm Keynote
Unicorns on an Aircraft Carrier: CDSummit London and Stockholm KeynoteUnicorns on an Aircraft Carrier: CDSummit London and Stockholm Keynote
Unicorns on an Aircraft Carrier: CDSummit London and Stockholm Keynote
 
S106 using ibm urban code deploy to deliver your apps to cics
S106 using ibm urban code deploy to deliver your apps to cicsS106 using ibm urban code deploy to deliver your apps to cics
S106 using ibm urban code deploy to deliver your apps to cics
 
100 blue mix days technical training
100 blue mix days technical training100 blue mix days technical training
100 blue mix days technical training
 
Decision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTX
Decision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTXDecision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTX
Decision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTX
 
Getting started with OpenERP
Getting started with OpenERPGetting started with OpenERP
Getting started with OpenERP
 
Eclipse Way
Eclipse WayEclipse Way
Eclipse Way
 
CampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
CampDevOps keynote - DevOps: Using 'Lean' to eliminate BottlenecksCampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
CampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
 
Webcast Automação Implantação de Aplicações (DevOps)
Webcast Automação Implantação de Aplicações (DevOps)Webcast Automação Implantação de Aplicações (DevOps)
Webcast Automação Implantação de Aplicações (DevOps)
 
A301 ctu madrid2016-monitoring
A301 ctu madrid2016-monitoringA301 ctu madrid2016-monitoring
A301 ctu madrid2016-monitoring
 
From COBOL to Models: an MDE framework to extract business logic out of legac...
From COBOL to Models: an MDE framework to extract business logic out of legac...From COBOL to Models: an MDE framework to extract business logic out of legac...
From COBOL to Models: an MDE framework to extract business logic out of legac...
 
Extracting Business Rules from COBOL: A Model-Based Framework
Extracting Business Rules from COBOL: A Model-Based FrameworkExtracting Business Rules from COBOL: A Model-Based Framework
Extracting Business Rules from COBOL: A Model-Based Framework
 
What's new in Juno
What's new in JunoWhat's new in Juno
What's new in Juno
 
Who Took The Cookie From The Cookie Jar?
Who Took The Cookie From The Cookie Jar?Who Took The Cookie From The Cookie Jar?
Who Took The Cookie From The Cookie Jar?
 

Recently uploaded

Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Sérgio Sacani
 
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRStunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRDelhi Call girls
 
Green chemistry and Sustainable development.pptx
Green chemistry  and Sustainable development.pptxGreen chemistry  and Sustainable development.pptx
Green chemistry and Sustainable development.pptxRajatChauhan518211
 
Isotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoIsotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoSérgio Sacani
 
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...Lokesh Kothari
 
Pests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdfPests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdfPirithiRaju
 
fundamental of entomology all in one topics of entomology
fundamental of entomology all in one topics of entomologyfundamental of entomology all in one topics of entomology
fundamental of entomology all in one topics of entomologyDrAnita Sharma
 
Nanoparticles synthesis and characterization​ ​
Nanoparticles synthesis and characterization​  ​Nanoparticles synthesis and characterization​  ​
Nanoparticles synthesis and characterization​ ​kaibalyasahoo82800
 
PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...
PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...
PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...Sérgio Sacani
 
Botany 4th semester file By Sumit Kumar yadav.pdf
Botany 4th semester file By Sumit Kumar yadav.pdfBotany 4th semester file By Sumit Kumar yadav.pdf
Botany 4th semester file By Sumit Kumar yadav.pdfSumit Kumar yadav
 
Botany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questionsBotany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questionsSumit Kumar yadav
 
Natural Polymer Based Nanomaterials
Natural Polymer Based NanomaterialsNatural Polymer Based Nanomaterials
Natural Polymer Based NanomaterialsAArockiyaNisha
 
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...Sérgio Sacani
 
Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...
Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...
Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...anilsa9823
 
Animal Communication- Auditory and Visual.pptx
Animal Communication- Auditory and Visual.pptxAnimal Communication- Auditory and Visual.pptx
Animal Communication- Auditory and Visual.pptxUmerFayaz5
 
Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptxUnlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptxanandsmhk
 
GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)Areesha Ahmad
 
Disentangling the origin of chemical differences using GHOST
Disentangling the origin of chemical differences using GHOSTDisentangling the origin of chemical differences using GHOST
Disentangling the origin of chemical differences using GHOSTSérgio Sacani
 

Recently uploaded (20)

Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
 
The Philosophy of Science
The Philosophy of ScienceThe Philosophy of Science
The Philosophy of Science
 
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRStunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
 
Green chemistry and Sustainable development.pptx
Green chemistry  and Sustainable development.pptxGreen chemistry  and Sustainable development.pptx
Green chemistry and Sustainable development.pptx
 
Isotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoIsotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on Io
 
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
 
Pests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdfPests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdf
 
fundamental of entomology all in one topics of entomology
fundamental of entomology all in one topics of entomologyfundamental of entomology all in one topics of entomology
fundamental of entomology all in one topics of entomology
 
Nanoparticles synthesis and characterization​ ​
Nanoparticles synthesis and characterization​  ​Nanoparticles synthesis and characterization​  ​
Nanoparticles synthesis and characterization​ ​
 
PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...
PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...
PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...
 
Botany 4th semester file By Sumit Kumar yadav.pdf
Botany 4th semester file By Sumit Kumar yadav.pdfBotany 4th semester file By Sumit Kumar yadav.pdf
Botany 4th semester file By Sumit Kumar yadav.pdf
 
Botany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questionsBotany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questions
 
Natural Polymer Based Nanomaterials
Natural Polymer Based NanomaterialsNatural Polymer Based Nanomaterials
Natural Polymer Based Nanomaterials
 
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
 
CELL -Structural and Functional unit of life.pdf
CELL -Structural and Functional unit of life.pdfCELL -Structural and Functional unit of life.pdf
CELL -Structural and Functional unit of life.pdf
 
Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...
Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...
Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...
 
Animal Communication- Auditory and Visual.pptx
Animal Communication- Auditory and Visual.pptxAnimal Communication- Auditory and Visual.pptx
Animal Communication- Auditory and Visual.pptx
 
Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptxUnlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptx
 
GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)
 
Disentangling the origin of chemical differences using GHOST
Disentangling the origin of chemical differences using GHOSTDisentangling the origin of chemical differences using GHOST
Disentangling the origin of chemical differences using GHOST
 

Some "Do"s and "Dont'"s of Benchmarking