source: trunk/quest-ui-core/src/de/ugoe/cs/quest/ui/commands/CMDtrainMarkovModel.java @ 434

Last change on this file since 434 was 434, checked in by sherbold, 12 years ago
  • renamed packages to fit QUEST project structure
File size: 1.5 KB
RevLine 
[434]1package de.ugoe.cs.quest.ui.commands;
[1]2
3import java.util.List;
[18]4import java.util.Random;
[1]5
[433]6import de.ugoe.cs.quest.usageprofiles.FirstOrderMarkovModel;
7import de.ugoe.cs.quest.usageprofiles.HighOrderMarkovModel;
8import de.ugoe.cs.quest.usageprofiles.TrieBasedModel;
[1]9import de.ugoe.cs.util.console.Console;
10
[171]11/**
12 * <p>
13 * Command to train first-order and high-order Markov models.
14 * </p>
15 *
16 * @author Steffen Herbold
[184]17 * @version 2.0
[171]18 */
[184]19public class CMDtrainMarkovModel extends AbstractTrainCommand {
[1]20
[184]21        /**
22         * <p>
23         * Order of the Markov model.
24         * </p>
25         */
26        int order;
27
[171]28        /*
29         * (non-Javadoc)
30         *
31         * @see de.ugoe.cs.util.console.Command#help()
32         */
[1]33        @Override
34        public void help() {
[184]35                Console.println("Usage: trainMarkovModel <modelName> <sequencesName> {<order>}");
[1]36        }
37
[184]38        /**
39         * <p>
40         * Handles the parameter order.
41         * </p>
42         *
[434]43         * @see de.ugoe.cs.quest.ui.commands.AbstractTrainCommand#handleOptionalParameters(java.util.List)
[184]44         */
45        @Override
46        void handleAdditionalParameters(List<Object> parameters) throws Exception {
47                if (parameters.size() >= 3) {
48                        order = Integer.parseInt((String) parameters.get(2));
[193]49                } else {
50                        order = 1;
[184]51                }
52        }
53
[171]54        /*
55         * (non-Javadoc)
56         *
[434]57         * @see de.ugoe.cs.quest.ui.commands.AbstractTrainCommand#createModel()
[171]58         */
[1]59        @Override
[184]60        TrieBasedModel createModel() {
61                if (order == 1) {
62                        return new FirstOrderMarkovModel(new Random());
63                } else {
64                        return new HighOrderMarkovModel(order, new Random());
[1]65                }
66        }
67
68}
Note: See TracBrowser for help on using the repository browser.