v5
This commit is contained in:
parent
c146e7868d
commit
f8a9580699
@ -3,7 +3,6 @@
|
|||||||
<component name="ChangeListManager">
|
<component name="ChangeListManager">
|
||||||
<list default="true" id="0fc070d1-3753-43f5-b5e7-37c2bc110b95" name="Default Changelist" comment="">
|
<list default="true" id="0fc070d1-3753-43f5-b5e7-37c2bc110b95" name="Default Changelist" comment="">
|
||||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/main.py" beforeDir="false" afterPath="$PROJECT_DIR$/main.py" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/worker.fcl" beforeDir="false" afterPath="$PROJECT_DIR$/worker.fcl" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/worker.fcl" beforeDir="false" afterPath="$PROJECT_DIR$/worker.fcl" afterDir="false" />
|
||||||
</list>
|
</list>
|
||||||
<option name="SHOW_DIALOG" value="false" />
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
@ -90,22 +89,22 @@
|
|||||||
<screen x="67" y="27" width="1533" height="873" />
|
<screen x="67" y="27" width="1533" height="873" />
|
||||||
</state>
|
</state>
|
||||||
<state x="291" y="120" key="#com.intellij.execution.impl.EditConfigurationsDialog/67.27.1533.873/1600.0.1920.1080@67.27.1533.873" timestamp="1591713379914" />
|
<state x="291" y="120" key="#com.intellij.execution.impl.EditConfigurationsDialog/67.27.1533.873/1600.0.1920.1080@67.27.1533.873" timestamp="1591713379914" />
|
||||||
<state width="1510" height="224" key="GridCell.Tab.0.bottom" timestamp="1592220349610">
|
<state width="1510" height="224" key="GridCell.Tab.0.bottom" timestamp="1592220492080">
|
||||||
<screen x="67" y="27" width="1533" height="873" />
|
<screen x="67" y="27" width="1533" height="873" />
|
||||||
</state>
|
</state>
|
||||||
<state width="1510" height="224" key="GridCell.Tab.0.bottom/67.27.1533.873/1600.0.1920.1080@67.27.1533.873" timestamp="1592220349610" />
|
<state width="1510" height="224" key="GridCell.Tab.0.bottom/67.27.1533.873/1600.0.1920.1080@67.27.1533.873" timestamp="1592220492080" />
|
||||||
<state width="1510" height="224" key="GridCell.Tab.0.center" timestamp="1592220349610">
|
<state width="1510" height="224" key="GridCell.Tab.0.center" timestamp="1592220492080">
|
||||||
<screen x="67" y="27" width="1533" height="873" />
|
<screen x="67" y="27" width="1533" height="873" />
|
||||||
</state>
|
</state>
|
||||||
<state width="1510" height="224" key="GridCell.Tab.0.center/67.27.1533.873/1600.0.1920.1080@67.27.1533.873" timestamp="1592220349610" />
|
<state width="1510" height="224" key="GridCell.Tab.0.center/67.27.1533.873/1600.0.1920.1080@67.27.1533.873" timestamp="1592220492080" />
|
||||||
<state width="1510" height="224" key="GridCell.Tab.0.left" timestamp="1592220349610">
|
<state width="1510" height="224" key="GridCell.Tab.0.left" timestamp="1592220492080">
|
||||||
<screen x="67" y="27" width="1533" height="873" />
|
<screen x="67" y="27" width="1533" height="873" />
|
||||||
</state>
|
</state>
|
||||||
<state width="1510" height="224" key="GridCell.Tab.0.left/67.27.1533.873/1600.0.1920.1080@67.27.1533.873" timestamp="1592220349610" />
|
<state width="1510" height="224" key="GridCell.Tab.0.left/67.27.1533.873/1600.0.1920.1080@67.27.1533.873" timestamp="1592220492080" />
|
||||||
<state width="1510" height="224" key="GridCell.Tab.0.right" timestamp="1592220349610">
|
<state width="1510" height="224" key="GridCell.Tab.0.right" timestamp="1592220492080">
|
||||||
<screen x="67" y="27" width="1533" height="873" />
|
<screen x="67" y="27" width="1533" height="873" />
|
||||||
</state>
|
</state>
|
||||||
<state width="1510" height="224" key="GridCell.Tab.0.right/67.27.1533.873/1600.0.1920.1080@67.27.1533.873" timestamp="1592220349610" />
|
<state width="1510" height="224" key="GridCell.Tab.0.right/67.27.1533.873/1600.0.1920.1080@67.27.1533.873" timestamp="1592220492080" />
|
||||||
<state width="1510" height="207" key="GridCell.Tab.1.bottom" timestamp="1592220319922">
|
<state width="1510" height="207" key="GridCell.Tab.1.bottom" timestamp="1592220319922">
|
||||||
<screen x="67" y="27" width="1533" height="873" />
|
<screen x="67" y="27" width="1533" height="873" />
|
||||||
</state>
|
</state>
|
||||||
@ -132,25 +131,6 @@
|
|||||||
<state x="376" y="181" width="904" height="562" key="com.intellij.xdebugger.impl.breakpoints.ui.BreakpointsDialogFactory$2/67.27.1533.873/1600.0.1920.1080@67.27.1533.873" timestamp="1591723368763" />
|
<state x="376" y="181" width="904" height="562" key="com.intellij.xdebugger.impl.breakpoints.ui.BreakpointsDialogFactory$2/67.27.1533.873/1600.0.1920.1080@67.27.1533.873" timestamp="1591723368763" />
|
||||||
</component>
|
</component>
|
||||||
<component name="XDebuggerManager">
|
<component name="XDebuggerManager">
|
||||||
<breakpoint-manager>
|
|
||||||
<breakpoints>
|
|
||||||
<line-breakpoint enabled="true" suspend="THREAD" type="python-line">
|
|
||||||
<url>file://$PROJECT_DIR$/main.py</url>
|
|
||||||
<line>119</line>
|
|
||||||
<option name="timeStamp" value="24" />
|
|
||||||
</line-breakpoint>
|
|
||||||
<line-breakpoint enabled="true" suspend="THREAD" type="python-line">
|
|
||||||
<url>file://$PROJECT_DIR$/main.py</url>
|
|
||||||
<line>120</line>
|
|
||||||
<option name="timeStamp" value="26" />
|
|
||||||
</line-breakpoint>
|
|
||||||
<line-breakpoint enabled="true" suspend="THREAD" type="python-line">
|
|
||||||
<url>file://$PROJECT_DIR$/main.py</url>
|
|
||||||
<line>121</line>
|
|
||||||
<option name="timeStamp" value="27" />
|
|
||||||
</line-breakpoint>
|
|
||||||
</breakpoints>
|
|
||||||
</breakpoint-manager>
|
|
||||||
<watches-manager>
|
<watches-manager>
|
||||||
<configuration name="PythonConfigurationType">
|
<configuration name="PythonConfigurationType">
|
||||||
<watch expression="not_in_df" />
|
<watch expression="not_in_df" />
|
||||||
|
34
main.py
34
main.py
@ -2,6 +2,8 @@ from fcl_parser import FCLParser
|
|||||||
import skfuzzy.control as ctrl
|
import skfuzzy.control as ctrl
|
||||||
import pandas as pd
|
import pandas as pd
|
||||||
|
|
||||||
|
|
||||||
|
def test():
|
||||||
s1 = '2018/2019'
|
s1 = '2018/2019'
|
||||||
s2 = '2019/2020'
|
s2 = '2019/2020'
|
||||||
teams = pd.read_csv('teams_list.csv')
|
teams = pd.read_csv('teams_list.csv')
|
||||||
@ -85,7 +87,7 @@ for i in range(0,matches.shape[0]):
|
|||||||
matches_input.append([form_1, form_2, points, xGform_1, xGform_2, ground_truth])
|
matches_input.append([form_1, form_2, points, xGform_1, xGform_2, ground_truth])
|
||||||
|
|
||||||
p = FCLParser() # Create the parser
|
p = FCLParser() # Create the parser
|
||||||
p.read_fcl_file('worker.fcl')
|
p.read_fcl_file('C:\Studia\LSR-master\lsr\worker.fcl')
|
||||||
|
|
||||||
cs1 = ctrl.ControlSystem(p.rules)
|
cs1 = ctrl.ControlSystem(p.rules)
|
||||||
module = ctrl.ControlSystemSimulation(cs1)
|
module = ctrl.ControlSystemSimulation(cs1)
|
||||||
@ -130,3 +132,33 @@ print("Predictions: " + str(Counter(predictions).keys()))
|
|||||||
print("Predictions: " + str(Counter(predictions).values()))
|
print("Predictions: " + str(Counter(predictions).values()))
|
||||||
print("GT: " + str(home_count) + " " + str(draw_count) + " " + str(away_count))
|
print("GT: " + str(home_count) + " " + str(draw_count) + " " + str(away_count))
|
||||||
print(float(cor/num))
|
print(float(cor/num))
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
while True:
|
||||||
|
p = FCLParser() # Create the parser
|
||||||
|
p.read_fcl_file('C:\Studia\LSR-master\lsr\worker.fcl')
|
||||||
|
|
||||||
|
cs1 = ctrl.ControlSystem(p.rules)
|
||||||
|
module = ctrl.ControlSystemSimulation(cs1)
|
||||||
|
print("Wpisz 'test' albo dodaj wartości (po przecinku): forma1, forma2, punkty, xGforma1, xGforma2")
|
||||||
|
command = input()
|
||||||
|
if command == "test":
|
||||||
|
test()
|
||||||
|
else:
|
||||||
|
values = command.split(sep=',')
|
||||||
|
module.input['form1'] = float(values[0])
|
||||||
|
module.input['form2'] = float(values[1])
|
||||||
|
module.input['points'] = float(values[2])
|
||||||
|
module.input['xGform1'] = float(values[3])
|
||||||
|
module.input['xGform2'] = float(values[4])
|
||||||
|
module.compute()
|
||||||
|
x = module.output['result']
|
||||||
|
x = float("{:.4f}".format(x))
|
||||||
|
print(x)
|
||||||
|
if x > 0.1:
|
||||||
|
print("Wygra drużyna 2")
|
||||||
|
elif x < -0.1:
|
||||||
|
print("Wygra drużyna 1")
|
||||||
|
else:
|
||||||
|
print("Będzie remis")
|
||||||
|
|
||||||
|
@ -60,8 +60,7 @@ RULEBLOCK
|
|||||||
ACCU : MAX;
|
ACCU : MAX;
|
||||||
ACT : MIN;
|
ACT : MIN;
|
||||||
|
|
||||||
// 0.365234375
|
|
||||||
//tego nic nie daje
|
|
||||||
RULE 0 : if form1 is great and form2 is bad then result is home
|
RULE 0 : if form1 is great and form2 is bad then result is home
|
||||||
// rozbicie home
|
// rozbicie home
|
||||||
RULE 3 : if form1 is great and form2 is avg and points is low then result is draw
|
RULE 3 : if form1 is great and form2 is avg and points is low then result is draw
|
||||||
@ -73,7 +72,7 @@ RULEBLOCK
|
|||||||
RULE 7 : if form1 is great and form2 is great and points is avg then result is home
|
RULE 7 : if form1 is great and form2 is great and points is avg then result is home
|
||||||
RULE 8 : if form1 is great and form2 is great and points is high then result is home
|
RULE 8 : if form1 is great and form2 is great and points is high then result is home
|
||||||
|
|
||||||
//rozbicie tego jednego home coś dało
|
//rozbicie home
|
||||||
RULE 31 : if form1 is avg and form2 is bad and points is low then result is draw
|
RULE 31 : if form1 is avg and form2 is bad and points is low then result is draw
|
||||||
RULE 32 : if form1 is avg and form2 is bad and points is avg then result is home
|
RULE 32 : if form1 is avg and form2 is bad and points is avg then result is home
|
||||||
RULE 33 : if form1 is avg and form2 is bad and points is high then result is home
|
RULE 33 : if form1 is avg and form2 is bad and points is high then result is home
|
||||||
@ -92,7 +91,6 @@ RULEBLOCK
|
|||||||
RULE 62 : if form1 is bad and form2 is bad and points is avg then result is draw
|
RULE 62 : if form1 is bad and form2 is bad and points is avg then result is draw
|
||||||
RULE 63 : if form1 is bad and form2 is bad and points is high then result is home
|
RULE 63 : if form1 is bad and form2 is bad and points is high then result is home
|
||||||
|
|
||||||
// to rozbicie nic nie daje
|
|
||||||
RULE 66 : if form1 is bad and form2 is avg then result is away
|
RULE 66 : if form1 is bad and form2 is avg then result is away
|
||||||
// rozbicie away
|
// rozbicie away
|
||||||
RULE 67 : if form1 is bad and form2 is great and points is low then result is away
|
RULE 67 : if form1 is bad and form2 is great and points is low then result is away
|
||||||
|
Loading…
Reference in New Issue
Block a user