Esempio n. 1
0
        public override string ToString()
        {
            var builder = new StringBuilder();

            ConsoleServices.FillWithPath(builder, Path);
            return("[TraceNode]" + builder.ToString());
        }
Esempio n. 2
0
        internal bool MoveNext()
        {
            _rules.Clear();
            _selectedNodes.Clear();


            var nextSegment = findNextSegment();

            if (nextSegment == null)
            {
                //there are no more available segments.
                return(false);
            }

            _factory.Enqueue(nextSegment);

            _rules.AddRange(createRule(nextSegment));
            _selectedNodes.UnionWith(findSelectedNodes(nextSegment));


            ConsoleServices.Print("NEW TOPIC", Rules);
            ConsoleServices.PrintEmptyLine();

            return(true);
        }
Esempio n. 3
0
        private static void AddTomorrowWithProject(string taskName, string projectName)
        {
            var taskStorage = new JsonFileStorage <Task>(
                ConsoleServices.Config.GetField(ConsoleServices.DATA_PATH)
                );
            var projectStorage = new JsonFileStorage <Project>(
                ConsoleServices.Config.GetField(ConsoleServices.DATA_PATH)
                );

            Task.Load(taskStorage);
            Project.Load(projectStorage);

            var     projects = Project.FindByName(projectName);
            Project project  =
                ConsoleServices.SelectProjectFromFilteringResult(projectName, projects);

            if (project == null)
            {
                return;
            }

            var task = Task.AddOnDate(taskName, DateTime.Now.AddDays(1).Date);

            Task.AttachToProject(task, project);

            Task.Save(taskStorage);
        }
Esempio n. 4
0
        private ModifiableResponse fireTrigger(Trigger trigger)
        {
            trigger.Apply(_context);

            _currentState = trigger.TargetNode;
            ConsoleServices.PrintLine(_currentState.State, ConsoleServices.OperatorColor);
            var response = _currentState.ExecuteState(_context);

            return(response);
        }
Esempio n. 5
0
        private void setFilter(NodeReference correctAnswerNode, ActionBlock actionBlock, ContextPool pool)
        {
            foreach (var node in pool.ActiveNodes)
            {
                var isInOutput = node.Equals(correctAnswerNode);
                actionBlock.OutputFilter.Advice(node, isInOutput, false);
            }

            actionBlock.OutputFilter.Retrain();
            ConsoleServices.Print(actionBlock.OutputFilter.Root);
        }
Esempio n. 6
0
 static void Main(string[] args)
 {
     try
     {
         ConsoleServices.ReadConfig();
         MainProcess(args);
     }
     catch (Exception e)
     {
         ConsoleServices.ExceptionHandle("gettdy", e);
     }
 }
Esempio n. 7
0
        private static double getDistance(NodeReference node1, NodeReference node2, ComposedGraph graph)
        {
            var paths = graph.GetPaths(node1, node2, MaximumGraphDepth, MaximumGraphWidth).Take(1000);

            double minDistance = double.MaxValue;

            foreach (var path in paths)
            {
                ConsoleServices.Print(path);
                var distance = getDistance(path);

                if (minDistance > distance)
                {
                    minDistance = distance;
                }
            }

            return(minDistance);
        }
Esempio n. 8
0
        private static void CompleteSelectedProject(string[] args)
        {
            JsonFileStorage <Project> storage =
                new JsonFileStorage <Project>(
                    ConsoleServices.Config.GetField(ConsoleServices.DATA_PATH)
                    );

            Project.Load(storage);
            var project =
                ConsoleServices.SelectProjectFromFilteringResult(
                    args[0], Project.FindByName(args[0])
                    );

            if (project != null)
            {
                Project.Complete(project);
            }
            Project.Save(storage);
        }
Esempio n. 9
0
        private void addRule(ConstraintPoolRule[] rules, HashSet <NodeReference> remainingNodes)
        {
            var isCompleteRule = remainingNodes.Count == 0;

            if (isCompleteRule)
            {
                //complete rules don't need more extending
                _completeRules.Add(rules);
            }
            else
            {
                //rule is incomplete
                _incompleteRuleSequence.Add(rules);
                _remainingNodes.Add(remainingNodes);
            }

            ConsoleServices.Print("RULES", rules, remainingNodes);
            ConsoleServices.PrintEmptyLine();
        }
Esempio n. 10
0
        private static void RuleQuestionTest(string dbPath)
        {
            var loader    = loadDB(dbPath);
            var graph     = new ComposedGraph(loader.DataLayer);
            var generator = new StructuredInterpretationGenerator(graph);

            var denotation1 = graph.GetNode("Barack Obama");
            var q1          = "Who is United States of America president?";

            var denotation2 = graph.GetNode("Vladimir Putin");
            var q2          = "Who is Russia president?";

            var q3          = "Who is Czech republic president?";
            var denotation3 = graph.GetNode("Miloš Zeman");

            generator.AdviceAnswer(q1, denotation1);
            generator.AdviceAnswer(q2, denotation2);
            generator.Optimize(5000);

            var interpretations = new List <Ranked <StructuredInterpretation> >();

            foreach (var evidence in generator.GetEvidences(q3))
            {
                foreach (var interpretation in evidence.AvailableRankedInterpretations)
                {
                    interpretations.Add(interpretation);
                }
            }

            interpretations.Sort((a, b) => a.Rank.CompareTo(b.Rank));
            foreach (var interpretation in interpretations)
            {
                var answer = generator.Evaluate(q3, interpretation.Value);
                ConsoleServices.Print(interpretation);
                ConsoleServices.Print(answer);
                ConsoleServices.PrintEmptyLine();
            }

            var qGenerator = new QuestionGenerator(generator);

            //var questions = Generator.FindDistinguishingNodeQuestions();
            throw new NotImplementedException();
        }
Esempio n. 11
0
 public static void ConfigureServices(IServiceCollection services)
 {
     ConsoleServices.ConfigureServices(services);
     services.AddTransient <IHttpHandler, MockHttpClientHandler>();
 }