source: branches/ralph/src/main/java/de/ugoe/cs/autoquest/tasktrees/alignment/substitution/DifferenceSubstitutionMatrix.java @ 1553

Last change on this file since 1553 was 1553, checked in by rkrimmel, 10 years ago

Completly restructured alignment approach classes, it is no longer a plugin.

File size: 1.3 KB
Line 
1/**
2 *
3 */
4package de.ugoe.cs.autoquest.tasktrees.alignment.substitution;
5
6import java.util.Collection;
7import java.util.List;
8
9import de.ugoe.cs.autoquest.eventcore.Event;
10import de.ugoe.cs.autoquest.tasktrees.treeifc.IUserSession;
11
12/**
13 * @author Ralph Krimmel
14 *
15 */
16public class DifferenceSubstitutionMatrix implements SubstitutionMatrix {
17
18        private int[] input1;
19        private int[] input2;
20        private int maxValue;
21       
22        public DifferenceSubstitutionMatrix(int[] input1,int[] input2) {
23                this.input1 = input1;
24                this.input2 = input2;
25                this.maxValue = getMaxValue();
26        }
27       
28        /* (non-Javadoc)
29         * @see de.ugoe.cs.autoquest.plugin.alignment.SubstitutionMatrix#getDistance(int, int)
30         */
31        public double getDistance(int pos1, int pos2) {
32                return maxValue - (input1[pos1] - input2[pos2]);
33        }
34       
35        private int getMaxValue() {
36                int max = input1[0];
37                for (int i=0; i < input1.length; i++) {
38                        if(input1[i] > max) {
39                                max = input1[i];
40                        }
41                }
42                for (int j=0; j < input2.length; j++) {
43                        if(input2[j] > max) {
44                                max = input2[j];
45                        }
46                }
47                return max;
48        }
49
50        @Override
51        public double getGapPenalty() {
52                return -maxValue;
53        }
54
55        @Override
56        public String info() {
57                return "Max Value: " + maxValue;
58        }
59
60
61        @Override
62        public void generate(List<IUserSession> sessions) {
63                // TODO Auto-generated method stub
64               
65        }
66
67}
Note: See TracBrowser for help on using the repository browser.