mirror of
https://github.com/13hannes11/bachelor_thesis.git
synced 2024-09-04 01:11:00 +02:00
take implementation from outline and rename it
This commit is contained in:
@@ -1,16 +1,46 @@
|
|||||||
\chapter{Introduction}
|
\chapter{Introduction}
|
||||||
\label{ch:Introduction}
|
\label{ch:Introduction}
|
||||||
|
|
||||||
\section{Motivation}
|
\section{Problem}
|
||||||
\label{sec:Introduction:Motivation}
|
\label{sec:Introduction:Problem}
|
||||||
|
|
||||||
Product configuration supports companies in their sales process, it reduces costs and decreases time needed to produce an offer for a product \cite{shafieeCostBenefitAnalysis2018}. Usually configuration is done by one user but for complex decisions the risk that a single user will make mistakes increases therefore making the decision in a group can yield better results \cite{felferningGroupBasedConfiguration2016, felfernigGroupDecisionSupport2011}. Unfortunately groups are not immune to group biases and group dynamics that can reduce the benefits of group decisions \cite{kerrBiasJudgmentComparing1996}.
|
A group of people with different personal preferences wants to find a solution to a problem with high variability. Making decisions in the group comes with problems as a lack of communication leads to worse decision outcomes \cite{atasItemRecommendationUsing2017}. Group dynamics and biases can lead to suboptimal decisions \cite{kerrBiasJudgmentComparing1996}. Generally group decisions are complex and often the process that yields the decision result is unstructured, thereby not providing any reproducibility of the success. Groups have different power structures and usually individuals have different interests. Moreover finding solutions is a rather complex task and group decisions can suffer intransparency.
|
||||||
There exists work on recommender systems for configuration and there are recommender systems for groups but there has not been any work on how to combine these. A recommender system, can help reduce influence of group behaviour and thereby increases the benefit of groups making more rational decisions than individuals \cite{charnessGroupsMakeBetter2012}.
|
|
||||||
|
|
||||||
\section{Research Question}
|
Examples of group recommendation decisions are:
|
||||||
\label{sec:Introduction:ResearchQuestion}
|
\begin{itemize}
|
||||||
\begin{enumerate}
|
\item A companies truck fleet (e.g. driver, purchasing-manager, marketing manager)
|
||||||
\item How can decision-making in group configuration processes be supported (through recommender systems)? (central question)
|
\item A companies customer management software system (e.g. salesperson, human resource manager, accounting manager)
|
||||||
\item Which requirements do configuration systems for collaborative decision-making have and how could such a system look like?
|
\item A public project to get a new area at a zoo (e.g. visitor, director, animal keeper)
|
||||||
\item How does group hierarchy and structure influence the decision-making process in group based configuration scenarios?
|
\item Managing a forest (e.g. owner, environmental protection agency, consumer representative)
|
||||||
\end{enumerate}
|
\item An existing company building and how it should be furnished (e.g. landlord, employee representative, CEO)
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
These examples are different from an ordinary group decision in the sense that the components the solution is build from are standardised but a solution is highly individual because of high variability. The solution space therefore is rather large.
|
||||||
|
|
||||||
|
\section{Idea}
|
||||||
|
\label{sec:Introduction:Idea}
|
||||||
|
|
||||||
|
To support groups in their decision making product configuration can be used. It allows to accurately map constraints and dependencies in complex problems and to map the solution space. Using a group recommender a group is supported in their configuration decisions. The goal is to show that these approaches can help a group with the configuration task presented by the usage of a configurator and to better process individual preferences than a human can.
|
||||||
|
|
||||||
|
|
||||||
|
There does not exists much research on recommendation for group configuration, however it is comprised of two different areas of research, recommenders for groups and recommenders for configuration.
|
||||||
|
The existing literature on recommenders for groups is extensive with many different approaches and domains \cite{delicResearchMethodsGroup2016, chenInterfaceInteractionDesign2011, atasItemRecommendationUsing2017, jamesonRecommendationGroups2007, chenEmpatheticonsDesigningEmotion2014, liuCGSPAComprehensiveGroup2019}. \citeauthor{felfernigGroupRecommenderSystems2018} give an overview about basic approaches \cite{felfernigGroupRecommenderSystems2018}.
|
||||||
|
In the area of product configuration research about recommender systems is undertaken as well \cite{pereiraFeatureBasedPersonalizedRecommender2016, scholzConfigurationbasedRecommenderSystem2017, scholzEffectsDecisionSpace2017}.
|
||||||
|
Group configuration is a more specialized sub field of configuration therefore less attention has been directed towards it and because of that there has not been much research on recommenders that are for group recommendation in a configuration setting.
|
||||||
|
|
||||||
|
\section{Benefits}
|
||||||
|
\label{sec:Introduction:Benefits}
|
||||||
|
|
||||||
|
The benefits of this approach are, that the need for a group to communicate directly is reduced. Each user gives their own preferences and the group will get a recommendation based on that. This allows to reduce problems arising in groups decisions like lack of communication and bias in groups. Additionally this shows the viability of combining group recommendations and configuration approaches.
|
||||||
|
|
||||||
|
\section{Action}
|
||||||
|
\label{sec:Introduction:Action}
|
||||||
|
|
||||||
|
As resulting action in this thesis a prototype will be designed, implemented and evaluated that achieves the following objectives.
|
||||||
|
\begin{itemize}
|
||||||
|
\item A system should give recommendation for the group using a scoring function that takes into account preferences of group members and the current state of the situation.
|
||||||
|
\item Recommendations should allow different scoring functions.
|
||||||
|
\item Recommendations should always be valid options.
|
||||||
|
\item The system should consider all preferences of individuals in a group and find a solution that most people of the group are happy with.
|
||||||
|
\end{itemize}
|
||||||
|
The results are communicated through this thesis. Thereby adhering to the research method of design science research \cite{peffersDesignScienceResearch2007}.
|
||||||
55
30_Thesis/sections/50_design_and_implementation.tex
Normal file
55
30_Thesis/sections/50_design_and_implementation.tex
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
\chapter{Design and Implementation}
|
||||||
|
\label{ch:DesignImplementation}
|
||||||
|
|
||||||
|
|
||||||
|
\section{CAS Configurator Merlin}
|
||||||
|
\label{sec:DesignImplementation:ConfiguratorMerlin}
|
||||||
|
|
||||||
|
\autoref{fig:DesignImplementation:ConfiguratorMerlin} shows the architecture of CAS Configurator Merlin.
|
||||||
|
\begin{description}
|
||||||
|
\item[M.Core] provides the base of the configurator. It checks the configuration against all rules in the database, provides possible alternatives if a change invalidates other parts of a configuration. The system relies on a CSP solver for validation and suggestion of alternatives.
|
||||||
|
\item[M.Model] is the editor to create products and rules. These rules can then be uploaded to M.Core.
|
||||||
|
\item[M.Customer] is the customer facing component. It allows a customer to configure a product.
|
||||||
|
\end{description}
|
||||||
|
|
||||||
|
\begin{figure}
|
||||||
|
\centering
|
||||||
|
\includegraphics{./figures/50_design_and_implementation/MerlinConfigurator.pdf}
|
||||||
|
\caption{Architecture of Configurator Merlin \cite[Fig. 4.1]{raabKollaborativeProduktkonfigurationEchtzeit2019}}
|
||||||
|
\label{fig:DesignImplementation:ConfiguratorMerlin}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
|
\section{CAS Group-Configurator}
|
||||||
|
\label{sec:DesignImplementation:GroupConfigurator}
|
||||||
|
|
||||||
|
\citeauthor{raabKollaborativeProduktkonfigurationEchtzeit2019}'s extends CAS Merlin Configurator in his thesis to allow simultaneous configuration. The extended architecture is shown in \autoref{fig:DesignImplementation:CollaborativeConfiguratorMerlin}.
|
||||||
|
He only makes changes to M.Customer which is renamed to M.Collab-Customer and introduces a new component M.Collab.
|
||||||
|
|
||||||
|
\begin{description}
|
||||||
|
\item[M.Collab] is a node.js server application that communicates with M.Core via REST-API and with M.Collab-Customer via WebSocket. It sits in between M.Collab-Customer and M.Core and handles all processing regarding collaborative configuration.
|
||||||
|
\item[M.Collab-Customer] a modified version of M.Customer that does all communication via WebSocket and does communicate with M.Collab instead of M.Core.
|
||||||
|
\end{description}
|
||||||
|
|
||||||
|
\begin{figure}
|
||||||
|
\centering
|
||||||
|
\includegraphics{./figures/50_design_and_implementation/MerlinCollaborativeConfigurator.pdf}
|
||||||
|
\caption{Architecture of Collaborative Configurator Merlin \cite[Fig. 4.3]{raabKollaborativeProduktkonfigurationEchtzeit2019}}
|
||||||
|
\label{fig:DesignImplementation:CollaborativeConfiguratorMerlin}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
|
|
||||||
|
\section{Extended Configurator}
|
||||||
|
\label{sec:DesignImplementation:ExtendedConfigurator}
|
||||||
|
|
||||||
|
Extending \citeauthor{raabKollaborativeProduktkonfigurationEchtzeit2019} work a module called M.Recommender is added. Its aim is to provide a recommendation server that holds all the data needed for recommendations. M.Collab and M.Collab-Customer have to be modified to allow taking in preferences and to show recommendations. The recommender engine is set up to be in a separate system which allows the easier replacement and the usage of different technologies. The extended architecture is shown in \autoref{fig:DesignImplementation:RecommenderForCollaborativeConfiguratorMerlin}.
|
||||||
|
|
||||||
|
\begin{description}
|
||||||
|
\item[M.Recommender] is a new system that will get queried from M.Collab for recommendations, when the configuration changes. M.Recommender will return recommendations which then can be presented to users by M.Collab-Customer.
|
||||||
|
\end{description}
|
||||||
|
|
||||||
|
\begin{figure}
|
||||||
|
\centering
|
||||||
|
\includegraphics{./figures/50_design_and_implementation/MerlinCollabRecommender.pdf}
|
||||||
|
\caption{Architecture of Collaborative Configurator Merlin with an added recommender system.}
|
||||||
|
\label{fig:DesignImplementation:RecommenderForCollaborativeConfiguratorMerlin}
|
||||||
|
\end{figure}
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
\chapter{Implementation}
|
|
||||||
\label{ch:Implementation}
|
|
||||||
@@ -189,7 +189,7 @@
|
|||||||
\input{sections/20_related_work.tex}
|
\input{sections/20_related_work.tex}
|
||||||
\input{sections/30_problem_and_objectives.tex}
|
\input{sections/30_problem_and_objectives.tex}
|
||||||
\input{sections/40_concept.tex}
|
\input{sections/40_concept.tex}
|
||||||
\input{sections/50_implementation.tex}
|
\input{sections/50_design_and_implementation.tex}
|
||||||
\input{sections/60_evaluation.tex}
|
\input{sections/60_evaluation.tex}
|
||||||
\input{sections/70_future_work.tex}
|
\input{sections/70_future_work.tex}
|
||||||
\input{sections/80_conclusion.tex}
|
\input{sections/80_conclusion.tex}
|
||||||
|
|||||||
Reference in New Issue
Block a user