Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard.

16
Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard

Transcript of Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard.

Page 1: Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard.

Algorithms for use with Foosbot

By: Michael Meadows

Assisted By: James Heard

Page 2: Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard.

Goals

• Creation of distinct evolutionary solutions to AI for offense and defense on the table

• Established method to maximize the tracking efficiency

Page 3: Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard.

Previous Functional Foosbots

• German Made Kickstar (20,000 Euro)

• -Used tracking from various angles

• University of Illinois

• -Non evolutionary fixed algorithms

• -Same Webcam (MS Life Cam)

Page 4: Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard.

Original Scope and Definition of Success

• Basic success if the casual player and be beaten more than 10% of the time. Full success at 40%

• Secondary success if after primary objective there is still a trend of improvement

Page 5: Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard.

Current Scope

Able to track ball to within ½ diameter with less than .5 second delay.

Page 6: Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard.

Design Success Criteria

• Can track game in real time and maintain ball position

• Can track with resolution at least ½ of ball diameter or better

• Can predict next location with 80% accuracy

Page 7: Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard.

Expected Results

• Early results:– Map of balls known paths– Basic reel movement

Later results:

Capacity to move into balls path

Consistent reactions

Page 8: Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard.

Timeline

• 2nd Quarter• Functional camera tracking• Path memory• 3rd Quarter• Basic defense• 4th Quarter• Testing and expansion

Page 9: Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard.

Languages

• Processing for interpretation of Video input

• Java for managing the other relevant algorithms

• C for additional integration

• int searchColor1 = color( 128, 255, 0 );

• int searchColor2 = color( 255, 0, 0 );

Page 10: Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard.

Tracking Tweaks

• Customized the resolution

• Limited the search

• High contrast colors, larger accepted color range.

Page 11: Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard.

Defense Overview

• Recorded path history (Map)

• Averaging of risk and likelihood

• Tweaks – Fake outs

Page 12: Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard.

Limitations

• Ball tracking has some delay

• Reel control has imperfections

• Inability to improvise makes offensive dribbling likely unachievable

Page 13: Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard.

Testing and Evaluation

• The first stage will be judged by viewing the created and printed Map

• Will also be evaluated based on speed and accuracy of the ball being tracked.

Page 14: Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard.

Results

• Research confirms practicality of project

• Largest limitations in tracking speed

• Strong difficulty with offense AI confirmed

Page 15: Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard.

Changes to Plan

• Offense will not be developed as originally planned.

• Physical integration testing will not be feasible due to funding cuts.

Page 16: Algorithms for use with Foosbot By: Michael Meadows Assisted By: James Heard.

Conclusions

Major physical limitations

Delays in reading writing to the map